#Copyright 2017 AT&T Intellectual Property. All other rights reserved. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. # You may obtain a copy of the License at # # http://www.apache.org/licenses/LICENSE-2.0 # # Unless required by applicable law or agreed to in writing, software # distributed under the License is distributed on an "AS IS" BASIS, # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. --- schema: deckhand/LayeringPolicy/v1 metadata: schema: metadata/Control/v1 name: layering-policy data: layerOrder: - site --- schema: 'drydock/Region/v1' metadata: schema: 'metadata/Document/v1' name: atl_foundry layeringDefinition: abstract: false layer: site data: tag_definitions: - tag: 'high_memory' definition_type: 'lshw_xpath' definition: //node[@id="memory"]/'size units="bytes"' > 137438953472 authorized_keys: - | ssh-rsa AAAAB3NzaC1yc2EAAAABJQAAAIEAgqUTJwZEMjZCWOnXQw+FFdvnf/lYrGXm01 rf/ZYUanoymkMWIK1/c8a3Ez9/HY3dyfWBcuzlIV4bNCvJcMg4UPuh6NQBJWAlfp7wfW9O 8ZyDE3x1FYno5u3OB4rRDcvKe6J0ygPcu4Uec5ASsd58yGnE4zTl1D/J30rNa00si+s= r sa-key-20120124 --- schema: 'drydock/NetworkLink/v1' metadata: schema: 'metadata/Document/v1' name: oob layeringDefinition: abstract: false layer: site data: labels: noconfig: 'enabled' bonding: mode: 'disabled' mtu: 1500 linkspeed: 'auto' trunking: mode: disabled default_network: oob allowed_networks: - 'oob' --- schema: 'drydock/NetworkLink/v1' metadata: schema: 'metadata/Document/v1' name: pxe-rack1 layeringDefinition: abstract: false layer: site data: bonding: mode: 'disabled' mtu: 1500 linkspeed: 'auto' trunking: mode: disabled default_network: pxe-rack1 allowed_networks: - 'pxe-rack1' --- schema: 'drydock/NetworkLink/v1' metadata: schema: 'metadata/Document/v1' name: mgmt layeringDefinition: abstract: false layer: site data: bonding: mode: 'disabled' mtu: 1500 linkspeed: 'auto' trunking: mode: disabled default_network: mgmt allowed_networks: - 'mgmt' --- schema: 'drydock/Network/v1' metadata: schema: 'metadata/Document/v1' name: oob layeringDefinition: abstract: false layer: site data: labels: noconfig: 'enabled' cidr: '172.24.10.0/24' --- schema: 'drydock/Network/v1' metadata: schema: 'metadata/Document/v1' name: pxe-rack1 layeringDefinition: abstract: false layer: site data: cidr: '172.24.1.0/24' routes: - subnet: '0.0.0.0/0' gateway: '172.24.1.1' metric: 100 ranges: - type: 'reserved' start: '172.24.1.1' end: '172.24.1.100' - type: 'dhcp' start: '172.24.1.200' end: '172.24.1.250' --- schema: 'drydock/Network/v1' metadata: schema: 'metadata/Document/v1' name: mgmt layeringDefinition: abstract: false layer: site data: cidr: '172.24.2.0/24' routes: - subnet: '0.0.0.0/0' gateway: '172.24.2.1' metric: 100 ranges: - type: 'reserved' start: '172.24.2.1' end: '172.24.2.100' - type: 'dhcp' start: '172.24.2.200' end: '172.24.2.250' --- schema: 'drydock/HardwareProfile/v1' metadata: schema: 'metadata/Document/v1' name: DellR820v1 layeringDefinition: abstract: false layer: site data: vendor: 'Dell' generation: '1' hw_version: '2' bios_version: '2.2.3' boot_mode: 'bios' bootstrap_protocol: 'pxe' pxe_interface: 0 device_aliases: pnic01: bus_type: 'pci' dev_type: 'Intel 10Gbps NIC' address: '0000:00:03.0' --- schema: 'drydock/HostProfile/v1' metadata: name: defaults schema: 'metadata/Document/v1' layeringDefinition: abstract: false layer: site data: hardware_profile: 'DellR820v1' primary_network: 'pxe-rack1' oob: type: 'ipmi' network: 'oob' account: 'admin' credential: 'password' storage: physical_devices: sda: labels: bootdrive: 'true' partitions: - name: 'root' size: '20g' bootable: true filesystem: mountpoint: '/' fstype: 'ext4' mount_options: 'defaults' - name: 'boot' size: '1g' filesystem: mountpoint: '/boot' fstype: 'ext4' mount_options: 'defaults' interfaces: ens3: device_link: 'mgmt' slaves: - 'ens3f0' networks: - 'mgmt' platform: image: 'ubuntu/xenial' kernel: 'generic' metadata: rack: rack1 --- schema: 'drydock/BaremetalNode/v1' metadata: schema: 'metadata/Document/v1' name: node2 layeringDefinition: abstract: false layer: site data: host_profile: defaults addressing: - network: 'mgmt' address: '172.24.2.101' - network: 'oob' address: '172.24.10.101' metadata: tags: - 'masters' ... --- schema: 'drydock/BootAction/v1' metadata: schema: 'metadata/Document/v1' name: promjoin storagePolicy: 'cleartext' layeringDefinition: abstract: false layer: site labels: application: 'drydock' data: node_filter: filter_set_type: 'union' filter_set: - filter_type: 'union' node_names: - 'node2' assets: - path: /opt/promjoin.sh type: file permissions: '555' location: promenade+http://promenade-api.ucp.svc.cluster.local/api/v1.0/join-scripts?design_ref={{ action.design_ref | urlencode }}&hostname={{ node.hostname }}&ip={{ node.network.mgmt.ip }}{% for k, v in node.labels.items() %}&labels.dynamic={{ k }}={{ v }}{% endfor %} location_pipeline: - template data_pipeline: - utf8_decode - path: /lib/systemd/system/promjoin.service type: unit permissions: '600' data: |- W1VuaXRdCkRlc2NyaXB0aW9uPVByb21lbmFkZSBJbml0aWFsaXphdGlvbiBTZXJ2aWNlCkFmdGVy PW5ldHdvcmstb25saW5lLnRhcmdldCBsb2NhbC1mcy50YXJnZXQKQ29uZGl0aW9uUGF0aEV4aXN0 cz0hL3Zhci9saWIvcHJvbS5kb25lCgpbU2VydmljZV0KVHlwZT1zaW1wbGUKRXhlY1N0YXJ0PS9v cHQvcHJvbWpvaW4uc2gKCltJbnN0YWxsXQpXYW50ZWRCeT1tdWx0aS11c2VyLnRhcmdldAo= data_pipeline: - base64_decode - utf8_decode ...