X-Git-Url: https://gerrit.akraino.org/r/gitweb?a=blobdiff_plain;f=site_type%2Fsriov%2Fairship-treasuremap%2Fglobal%2Fv4.0%2Fschemas%2Fpromenade%2FHostSystem%2Fv1.yaml;fp=site_type%2Fsriov%2Fairship-treasuremap%2Fglobal%2Fv4.0%2Fschemas%2Fpromenade%2FHostSystem%2Fv1.yaml;h=8745238303e4e9fe3eaf5fe4015a7b1e3943c480;hb=c88cf93ab1508f0dd1ec862fc02634604ca9c94d;hp=0000000000000000000000000000000000000000;hpb=65e9ce265e221f060686a69efce51f982c1833b0;p=yaml_builds.git diff --git a/site_type/sriov/airship-treasuremap/global/v4.0/schemas/promenade/HostSystem/v1.yaml b/site_type/sriov/airship-treasuremap/global/v4.0/schemas/promenade/HostSystem/v1.yaml new file mode 100644 index 0000000..8745238 --- /dev/null +++ b/site_type/sriov/airship-treasuremap/global/v4.0/schemas/promenade/HostSystem/v1.yaml @@ -0,0 +1,137 @@ +--- +schema: deckhand/DataSchema/v1 +metadata: + schema: metadata/Control/v1 + name: promenade/HostSystem/v1 + labels: + application: promenade +data: + $schema: http://json-schema.org/schema# + definitions: + abs_path: + type: string + pattern: '^/.+$' + apt_source_line: + type: string + # XXX add regex + file: + properties: + path: + $ref: '#/definitions/abs_path' + content: + type: string + mode: + type: integer + minimum: 0 + tar_url: + $ref: '#/definitions/url' + tar_path: + $ref: '#/definitions/rel_path' + + requried: + - mode + - path + oneOf: + - type: object + required: + - content + - type: object + allOf: + - type: object + required: + - tar_url + - tar_path + additionalProperties: false + + image: + type: string + # XXX add regex + package: + type: string + # XXX add regex + public_key: + type: string + # XXX add regex + rel_path: + type: string + # XXX add regex + url: + type: string + # XXX add regex + + type: object + + properties: + files: + type: array + items: + type: object + items: + $ref: '#/definitions/file' + images: + type: object + properties: + haproxy: + $ref: '#/definitions/image' + coredns: + $ref: '#/definitions/image' + helm: + type: object + properties: + helm: + $ref: '#/definitions/image' + required: + - helm + additionalProperties: false + kubernetes: + type: object + properties: + kubectl: + $ref: '#/definitions/image' + required: + - kubectl + additionalProperties: false + required: + - haproxy + - coredns + - helm + - kubernetes + additionalProperties: false + + packages: + type: object + properties: + additional: + type: array + items: + $ref: '#/definitions/package' + keys: + type: array + items: + $ref: '#/definitions/public_key' + + required: + type: object + properties: + docker: + $ref: '#/definitions/package' + socat: + $ref: '#/definitions/package' + required: + - docker + - socat + additionalProperties: false + + repositories: + type: array + items: + $ref: '#/definitions/apt_source_line' + + required: + - required + additionalProperties: false + + required: + - images + - packages + additionalProperties: false