| { |
| "type": "object", |
| "$schema": "http://json-schema.org/draft-07/schema#", |
| "required": [ |
| "program" |
| ], |
| "additionalProperties": false, |
| "properties": { |
| "program": { |
| "$id": "/properties/program", |
| "type": "object", |
| "additionalProperties": false, |
| "properties": { |
| "binary": { |
| "$id": "/properties/program/properties/binary", |
| "type": "string", |
| "title": "Program entry point for an Elf binary", |
| "examples": [ |
| "bin/app" |
| ] |
| }, |
| "args": { |
| "$id": "/properties/program/properties/args", |
| "type": "array", |
| "title": "Arguments to provide to an Elf binary", |
| "items": { |
| "type": "string" |
| }, |
| "minItems": 1, |
| "examples": [ |
| "--verbose" |
| ] |
| }, |
| "env_vars": { |
| "$id": "/properties/program/properties/env_vars", |
| "type": "array", |
| "title": "Environment variables to provide to an Elf binary", |
| "items": { |
| "type": "string" |
| }, |
| "minItems": 1, |
| "examples": [ |
| "RUST_BACKTRACE=1" |
| ] |
| }, |
| "data": { |
| "$id": "/properties/program/properties/data", |
| "type": "string", |
| "title": "Relative path for dart/flutter assets within /pkg/data", |
| "examples": [ |
| "data/component" |
| ] |
| } |
| }, |
| "dependencies": { |
| "args": [ "binary" ] |
| }, |
| "oneOf": [ |
| { |
| "required": [ "binary" ] |
| }, |
| { |
| "required": [ "data" ] |
| } |
| ] |
| }, |
| "sandbox": { |
| "$id": "/properties/sandbox", |
| "type": "object", |
| "additionalProperties": false, |
| "properties": { |
| "dev": { |
| "id": "/properties/sandbox/properties/dev", |
| "title": "Device directories to provide to the component", |
| "type": "array", |
| "uniqueItems": true |
| }, |
| "features": { |
| "$id": "/properties/sandbox/properties/features", |
| "type": "array", |
| "uniqueItems": true, |
| "items": { |
| "$id": "/properties/sandbox/properties/features/items", |
| "type": "string", |
| "title": "Specific environment features", |
| "enum": [ |
| "build-info", |
| "config-data", |
| "deprecated-misc-storage", |
| "deprecated-shell", |
| "isolated-cache-storage", |
| "isolated-persistent-storage", |
| "shell", |
| "shell-commands", |
| "root-ssl-certificates", |
| "system-temp", |
| "vulkan", |
| "deprecated-ambient-replace-as-executable" |
| ] |
| } |
| }, |
| "system": { |
| "$id": "/properties/sandbox/properties/system", |
| "type": "array", |
| "uniqueItems": true, |
| "items": { |
| "$id": "/properties/sandbox/properties/system/items", |
| "type": "string", |
| "title": "Paths within the system package provided to the component", |
| "examples": [ |
| "data/build" |
| ] |
| } |
| }, |
| "pkgfs": { |
| "$id": "/properties/sandbox/properties/pkgfs", |
| "type": "array", |
| "uniqueItems": true, |
| "items": { |
| "$id": "/properties/sandbox/properties/pkgfs/items", |
| "type": "string", |
| "title": "Paths within pkgfs provided to the component", |
| "examples": [ |
| "packages" |
| ] |
| } |
| }, |
| "boot": { |
| "$id": "/properties/sandbox/properties/boot", |
| "type": "array", |
| "uniqueItems": true, |
| "items": { |
| "$id": "/properties/sandbox/properties/boot/items", |
| "type": "string", |
| "title": "Paths within the boot package provided to the component", |
| "examples": [ |
| "log" |
| ] |
| } |
| }, |
| "services": { |
| "$id": "/properties/sandbox/properties/services", |
| "type": "array", |
| "uniqueItems": true, |
| "items": { |
| "$id": "/properties/sandbox/properties/services/items", |
| "type": "string", |
| "title": "Services to provide", |
| "examples": [ |
| "fuchsia.sys.Launcher", |
| "fuchsia.sys.Environment" |
| ] |
| } |
| } |
| } |
| }, |
| "dev": { |
| "$id": "/properties/dev", |
| "type": "array", |
| "uniqueItems": true, |
| "items": { |
| "$id": "/properties/dev/items", |
| "type": "string", |
| "title": "Device directories to provide", |
| "examples": [ |
| "class/wlanphy", |
| "class/wlanif", |
| "class/thermal" |
| ] |
| } |
| }, |
| "runner": { |
| "$id": "/properties/runner", |
| "type": "string", |
| "title": "Runner required to launch the component", |
| "examples": [ |
| "flutter_jit_runner", |
| "flutter_aot_runner" |
| ] |
| }, |
| "facets": { |
| "$id": "/properties/facets", |
| "type": "object", |
| "title": "Extra information about this component" |
| } |
| } |
| } |