pycape.function_ref module
Contents
pycape.function_ref module#
A structured set of metadata representing a deployed Cape function.
A FunctionRef
is intended to capture any/all metadata related to a Cape
function. The metadata is generally user-supplied, provided to them with the output of
the Cape CLI’s deploy
command.
Note: We recommend using the pycape.Cape.function()
method to create
a FunctionRef
.
Usage
fid = "asdf231lkg1324afdg"
fchecksum = str(b"2l1h21jhgb2k1jh3".hex())
fref = FunctionRef(fid, fchecksum)
token = pycape.Token("eY12shd...")
cape = Cape()
cape.connect(fref, token)
- class pycape.function_ref.FunctionRef(id=None, name=None, checksum=None)[source]#
Bases:
object
A reference to a Cape function.
- Parameters:
id (
Optional
[str
]) – String denoting the function ID of the deployed Cape function. Typically given with the output of the Cape CLI’sdeploy
command.name (
Optional
[str
]) – String denoting the name of the deployed Cape function. Must be of the formUSER/FUNC_NAME
whereUSER
is the Github username of the Cape user andFUNC_NAME
is the name they gave for the function at deploy-time.checksum (
Optional
[str
]) – Optional string denoting the checksum of the deployed Cape function. If supplied as part of aFunctionRef
, theCape
client will verify that enclave responses includes a matching checksum whenever theFunctionRef
is included in Cape requests.
- property checksum#
- classmethod from_json(function_json)[source]#
Construct a
FunctionRef
from a JSON string or file.- Parameters:
function_json (
Union
[str
,PathLike
]) – a JSON string or filepath containing function ID and optional function checksum.- Return type:
- Returns:
A
FunctionRef
representing the deployed Cape function.- Raises:
ValueError – if the json file doesn’t exist, or the json is missing a
function_id
key-value.TypeError – if
function_json
is neither Path-like nor str.
- property full_name#
- property id#
- property name#
- to_json(path=None)[source]#
Write this
FunctionRef
to a JSON string or file.- Parameters:
path (
Union
[str
,PathLike
,None
]) – Optional file path to write the resulting JSON to.- Return type:
Optional
[str
]- Returns:
If
path
is None, a string with thisFunctionRef
as a JSON struct.
- property user#