{ "$defs": { "Settings": { "description": "Canister settings, such as compute and memory allocation.", "properties": { "compute_allocation": { "description": "Compute allocation (0 to 100). Represents guaranteed compute capacity.", "format": "uint64", "minimum": 0, "type": [ "integer", "null" ] }, "environment_variables": { "additionalProperties": { "type": "string" }, "description": "Environment variables for the canister as key-value pairs.\nThese variables are accessible within the canister and can be used to configure\nbehavior without hardcoding values in the WASM module.", "type": [ "object", "null" ] }, "freezing_threshold": { "description": "Freezing threshold in seconds. Controls how long a canister can be inactive before being frozen.", "format": "uint64", "minimum": 0, "type": [ "integer", "null" ] }, "memory_allocation": { "description": "Memory allocation in bytes. If unset, memory is allocated dynamically.", "format": "uint64", "minimum": 0, "type": [ "integer", "null" ] }, "reserved_cycles_limit": { "description": "Reserved cycles limit. If set, the canister cannot consume more than this many cycles.", "format": "uint64", "minimum": 0, "type": [ "integer", "null" ] }, "wasm_memory_limit": { "description": "Wasm memory limit in bytes. Sets an upper bound for Wasm heap growth.", "format": "uint64", "minimum": 0, "type": [ "integer", "null" ] }, "wasm_memory_threshold": { "description": "Wasm memory threshold in bytes. Triggers a callback when exceeded.", "format": "uint64", "minimum": 0, "type": [ "integer", "null" ] } }, "type": "object" } }, "$id": "EnvironmentManifest", "$schema": "https://json-schema.org/draft/2020-12/schema", "description": "Schema for EnvironmentManifest", "properties": { "canisters": { "description": "An optional list of the canisters to be included in this environments.\nDefaults to all the canisters if not specified.", "items": { "type": "string" }, "type": [ "array", "null" ] }, "init_args": { "additionalProperties": { "type": "string" }, "description": "Override init args for specific canisters in this environment", "type": [ "object", "null" ] }, "name": { "type": "string" }, "network": { "description": "The target network for canister deployment.\nDefaults to the `local` network if not specified", "type": [ "string", "null" ] }, "settings": { "additionalProperties": { "$ref": "#/$defs/Settings" }, "description": "Override the canister settings for this environment", "type": [ "object", "null" ] } }, "required": [ "name" ], "title": "EnvironmentManifest", "type": "object" }