--- schema: deckhand/DataSchema/v1 metadata: schema: metadata/Control/v1 name: promenade/KubernetesNode/v1 labels: application: promenade data: $schema: http://json-schema.org/schema# definitions: hostname: type: string pattern: '^[a-z][a-z0-9-]+$' ip_address: type: string pattern: '^(\d|[1-9]\d|1\d\d|2([0-4]\d|5[0-5]))\.(\d|[1-9]\d|1\d\d|2([0-4]\d|5[0-5]))\.(\d|[1-9]\d|1\d\d|2([0-4]\d|5[0-5]))\.(\d|[1-9]\d|1\d\d|2([0-4]\d|5[0-5]))$' kubernetes_label: type: string # XXX add regex type: object properties: hostname: $ref: '#/definitions/hostname' ip: $ref: '#/definitions/ip_address' join_ip: $ref: '#/definitions/ip_address' labels: properties: static: type: array items: $ref: '#/definitions/kubernetes_label' dynamic: type: array items: $ref: '#/definitions/kubernetes_label' additionalProperties: false required: - ip - join_ip additionalProperties: false