Link Search Menu Expand Document

program

Object data payload; Program config data.

This is the schema for Program Data, the properties of object program.

Program Data Attributes

Attribute Type Default Description Required
name string   Name of the program. Yes
affinity string; One of: ['client', 'none'] 'client' Indicates the module affinity (client=client’s runtime; none or empty=any suitable/available runtime). No
instantiate string; One of: ['single', 'client'] 'client' Single instance of the program (=single), or let every client create a program instance (=client). Per client instance will create new uuid for each program. Yes
file string   The path to a .wasm file (e.g. counter.wasm, user1/counter.wasm) in the ARENA filestore, starting from the location field indicated below. See location. Example: user1/py/counter/counter.py should have file: counter.py and location: user1/py/counter. Note that the runtime will download all files in parent folder (e.g. you can add a requirements.txt) Yes
filename string   DEPRECATED: data.filename is deprecated for type: program, use data.file and data.location instead. No
location string   Filestore path starting at user home; Example: user1/hello for a program inside folder hello of user1. Should, at least be the user filesore home folder. Yes
filetype string; One of: ['WA', 'PY'] 'WA' Type of the program (WA=WASM or PY=Python). Yes
parent string; Must be: arena-rt1 'arena-rt1' Request the orchestrator to deploy to this runtime (can be a runtime name or UUID); Temporarily must be arena-rt1. Yes
args array   Command-line arguments (passed in argv). Supports variables: ${scene}, ${mqtth}, ${userid}, ${username}, ${runtimeid}, ${moduleid}, ${query-string-key}. No
env array ['MID=${moduleid}', 'SCENE=${scene}', 'NAMESPACE=${namespace}', 'MQTTH=${mqtth}', 'REALM=realm'] Environment variables. Supports variables: ${scene}, ${namespace}, ${mqtth}, ${userid}, ${username}, ${runtimeid}, ${moduleid}, ${query-string-key}. Yes
channels array [{'path': '/ch/${scene}', 'type': 'pubsub', 'mode': 'rw', 'params': {'topic': 'realm/s/${scene}/${namespace}'}}] Channels describe files representing access to IO from pubsub and client sockets (possibly more in the future; currently only supported for WASM programs). No
run_info object   Program execution info, added at runtime. No