| { |
| "$schema": "http://json-schema.org/draft-07/schema#", |
| "allOf": [ |
| { |
| "$ref": "common.json#/definitions/sdk_element" |
| }, |
| { |
| "additionalProperties": false, |
| "properties": { |
| "name": { |
| "description": "Name of the ffx subtool", |
| "type": "string" |
| }, |
| "root": { |
| "$ref": "common.json#/definitions/file", |
| "description": "The installed root path of the element in the SDK" |
| }, |
| "target_files": { |
| "additionalProperties": false, |
| "description": "The target-specific files, per architecture", |
| "maxProperties": 2, |
| "minProperties": 1, |
| "properties": { |
| "arm64": { |
| "$ref": "#/definitions/toolFiles", |
| "description": "Files for the arm64 architecture" |
| }, |
| "x64": { |
| "$ref": "#/definitions/toolFiles", |
| "description": "Files for the x64 architecture" |
| } |
| }, |
| "type": "object" |
| }, |
| "files": { |
| "$ref": "#/definitions/toolFiles", |
| "description": "Architecture-generic files for this subtool" |
| }, |
| "type": { |
| "allOf": [ |
| { |
| "$ref": "common.json#/definitions/kind" |
| }, |
| { |
| "enum": [ |
| "ffx_tool" |
| ] |
| } |
| ] |
| } |
| }, |
| "required": [ |
| "root", |
| "name", |
| "type" |
| ] |
| } |
| ], |
| "definitions": { |
| "toolFiles": { |
| "description": "Types of files relevant to an ffx tool", |
| "properties": { |
| "executable": { |
| "$ref": "common.json#/definitions/file", |
| "description": "The path of the file that ffx should run to invoke the tool." |
| }, |
| "executable_metadata": { |
| "$ref": "common.json#/definitions/file", |
| "description": "The path of the file that contains versioning information for ffx." |
| } |
| }, |
| "additionalProperties": { |
| "$ref": "host_tool.json#/definitions/fileGroup", |
| "description": "Additional groups of files that may be used by this subtool. Must be lists of files." |
| }, |
| "type": "object" |
| } |
| }, |
| "description": "An externally compiled ffx subtool", |
| "id": "http://fuchsia.com/schemas/sdk/ffx_tool.json", |
| "type": "object" |
| } |