| { |
| "$schema": "http://json-schema.org/draft-07/schema#", |
| "description": "A Fuchsia package.", |
| "id": "http://fuchsia.com/schemas/sdk/package.json", |
| "type": "object", |
| "allOf": [ |
| { |
| "$ref": "common.json#/definitions/sdk_element" |
| }, |
| { |
| "additionalProperties": false, |
| "properties": { |
| "name": { |
| "description": "Name of a Fuchsia package.", |
| "type": "string" |
| }, |
| "variants": { |
| "description": "List of package manifests and other files for flavors of this Fuchsia package.", |
| "items": { |
| "properties": { |
| "manifest_file": { |
| "$ref": "common.json#/definitions/file", |
| "description": "The manifest file for this package." |
| }, |
| "arch": { |
| "$ref": "common.json#/definitions/target_arch", |
| "description": "The target architecture for this package." |
| }, |
| "api_level": { |
| "description": "The API level this package is built against.", |
| "type": "integer" |
| }, |
| "files": { |
| "$ref": "#/definitions/fileGroup", |
| "description": "Files for Fuchsia package targeting this architecture and API level." |
| } |
| }, |
| "required": [ |
| "manifest_file", |
| "arch", |
| "api_level" |
| ], |
| "type": "object" |
| }, |
| "minItems": 1, |
| "type": "array" |
| }, |
| "type": { |
| "allOf": [ |
| { |
| "$ref": "common.json#/definitions/kind" |
| }, |
| { |
| "enum": [ |
| "package" |
| ] |
| } |
| ] |
| } |
| }, |
| "required": [ |
| "name", |
| "variants", |
| "type" |
| ] |
| } |
| ] |
| } |