diff options
Diffstat (limited to 'config/pdf')
-rw-r--r-- | config/pdf/idf-pod1.schema.yaml | 35 | ||||
-rw-r--r-- | config/pdf/pod1.encrypted.yaml | 4 | ||||
-rw-r--r-- | config/pdf/pod1.schema.yaml | 48 | ||||
-rw-r--r-- | config/pdf/pod1.yaml | 4 |
4 files changed, 76 insertions, 15 deletions
diff --git a/config/pdf/idf-pod1.schema.yaml b/config/pdf/idf-pod1.schema.yaml index 49e06e69..7546279d 100644 --- a/config/pdf/idf-pod1.schema.yaml +++ b/config/pdf/idf-pod1.schema.yaml @@ -42,6 +42,13 @@ definitions: type: ['string', 'null'] required: ['admin', 'mgmt', 'private', 'public'] additionalProperties: false + trunks: + type: 'object' + properties: + mgmt: + type: 'boolean' + required: ['mgmt'] + additionalProperties: false required: ['bridges'] additionalProperties: false maas: @@ -56,6 +63,12 @@ definitions: network: type: 'object' properties: + interface_mtu: + type: 'number' + ntp_strata_host1: + type: 'string' + ntp_strata_host2: + type: 'string' node: type: 'array' items: @@ -132,6 +145,20 @@ definitions: additionalProperties: false osa: v0.1: + type: 'object' + properties: + nodes_roles: + type: 'object' + groups: + type: 'object' + hostnames: + type: 'object' + network: + type: 'object' + required: ['nodes_roles', 'groups', 'hostnames', 'network'] + additionalProperties: false + kubespray: + v0.1: type: ['object', 'null'] # NOTE: To be properly modeled by XCI maintainers @@ -153,7 +180,7 @@ properties: type: 'array' items: type: 'string' - enum: ['apex', 'compass4nfv', 'daisy', 'fuel', 'joid', 'osa'] + enum: ['apex', 'compass4nfv', 'daisy', 'fuel', 'joid', 'osa', 'kubespray'] net_config: type: 'object' compass: @@ -164,6 +191,8 @@ properties: type: 'object' osa: type: ['object', 'null'] + kubespray: + type: ['object', 'null'] required: ['version'] additionalProperties: false ############################################################################ @@ -183,12 +212,16 @@ properties: $ref: '#/definitions/fuel/v0.1' osa: $ref: '#/definitions/osa/v0.1' + kubespray: + $ref: '#/definitions/kubespray/v0.1' fuel: required: ['net_config'] daisy: required: ['net_config'] osa: required: ['net_config'] + kubespray: + required: ['net_config'] xci: type: 'object' # NOTE: To be properly modeled by XCI maintainers diff --git a/config/pdf/pod1.encrypted.yaml b/config/pdf/pod1.encrypted.yaml index b5c78b50..c2512632 100644 --- a/config/pdf/pod1.encrypted.yaml +++ b/config/pdf/pod1.encrypted.yaml @@ -54,7 +54,8 @@ jumphost: os: ubuntu-14.04 remote_params: &remote_params # hardware management tool - type: {ipmi|amt} + type: {ipmi|amt|libvirt} + # array of supported versions, mandatory for all but 'libvirt' versions: - 1.0 - 2.0 @@ -82,6 +83,7 @@ jumphost: remote_management: <<: *remote_params address: 10.4.7.3/24 + # MAC address is mandatory for all BMC types but 'libvirt' mac_address: "10:23:45:67:89:AC" # physical interface list interfaces: diff --git a/config/pdf/pod1.schema.yaml b/config/pdf/pod1.schema.yaml index 2a96d0b2..4de326ed 100644 --- a/config/pdf/pod1.schema.yaml +++ b/config/pdf/pod1.schema.yaml @@ -69,25 +69,49 @@ definitions: additionalProperties: false remote_management: v1.0: - type: 'object' properties: - type: - type: 'string' - enum: ['ipmi', 'amt'] - versions: - type: 'array' - items: - type: 'number' - enum: [1.0, 2.0] user: type: 'string' pass: type: 'string' + port: + type: 'number' + privilege_level: + type: 'string' + type: + type: 'string' + versions: + type: 'array' address: - $ref: '#/definitions/ip_address' + type: 'string' mac_address: - $ref: '#/definitions/mac_address' - required: ['type', 'versions', 'user', 'pass', 'address', 'mac_address'] + type: 'string' + # These subsections are best validated separately for baremetal/virtual + oneOf: + - type: 'object' + properties: + type: + type: 'string' + enum: ['ipmi', 'amt'] + versions: + type: 'array' + items: + type: 'number' + enum: [1.0, 2.0] + address: + $ref: '#/definitions/ip_address' + mac_address: + $ref: '#/definitions/mac_address' + required: ['type', 'versions', 'address', 'mac_address'] + - type: 'object' + properties: + type: + type: 'string' + enum: ['libvirt'] + address: + type: 'string' # Loose validation of libvirt URI for now + required: ['type', 'address'] + required: ['user', 'pass'] additionalProperties: false interfaces: v1.0: diff --git a/config/pdf/pod1.yaml b/config/pdf/pod1.yaml index d0cd7931..4ea751ec 100644 --- a/config/pdf/pod1.yaml +++ b/config/pdf/pod1.yaml @@ -54,7 +54,8 @@ jumphost: os: ubuntu-14.04 remote_params: &remote_params # hardware management tool - type: {ipmi|amt} + type: {ipmi|amt|libvirt} + # array of supported versions, mandatory for all but 'libvirt' versions: - 1.0 - 2.0 @@ -63,6 +64,7 @@ jumphost: remote_management: <<: *remote_params address: 10.4.7.3/24 + # MAC address is mandatory for all BMC types but 'libvirt' mac_address: "10:23:45:67:89:AC" # physical interface list interfaces: |