Add model bm-k8s-contrail-cicd-maas
Change-Id: Id59ece60510c0739767f63183de1e97e696af1ac
diff --git a/tcp_tests/templates/cookied-cicd-bm-k8s-contrail40-maas/lab04-physical-inventory.yaml b/tcp_tests/templates/cookied-cicd-bm-k8s-contrail40-maas/lab04-physical-inventory.yaml
new file mode 100644
index 0000000..d51f4b6
--- /dev/null
+++ b/tcp_tests/templates/cookied-cicd-bm-k8s-contrail40-maas/lab04-physical-inventory.yaml
@@ -0,0 +1,96 @@
+nodes:
+ cfg01.cookied-cicd-bm-k8s-contrail40-maas.local:
+ reclass_storage_name: infra_config_node01
+ roles:
+ - infra_config
+ - linux_system_codename_xenial
+ interfaces:
+ ens3:
+ role: single_static_mgm
+ ens4:
+ role: single_static_ctl
+ # Physical nodes
+
+ kvm01.cookied-cicd-bm-k8s-contrail40-maas.local:
+ reclass_storage_name: infra_kvm_node01
+ roles:
+ - infra_kvm
+ - linux_system_codename_xenial
+ interfaces:
+ enp9s0f0:
+ role: single_dhcp
+ enp9s0f1:
+ role: single_vlan_ctl
+ ens11f0:
+ role: single_mgm_manual_vlan
+
+ kvm02.cookied-cicd-bm-k8s-contrail40-maas.local:
+ reclass_storage_name: infra_kvm_node02
+ roles:
+ - infra_kvm
+ - linux_system_codename_xenial
+ interfaces:
+ enp9s0f0:
+ role: single_dhcp
+ enp9s0f1:
+ role: single_vlan_ctl
+ ens11f0:
+ role: single_mgm_manual_vlan
+
+ kvm03.cookied-cicd-bm-k8s-contrail40-maas.local:
+ reclass_storage_name: infra_kvm_node03
+ roles:
+ - infra_kvm
+ - linux_system_codename_xenial
+ interfaces:
+ enp9s0f0:
+ role: single_dhcp
+ enp9s0f1:
+ role: single_vlan_ctl
+ ens11f0:
+ role: single_mgm_manual_vlan
+
+ ctl01.cookied-cicd-bm-k8s-contrail40-maas.local:
+ reclass_storage_name: kubernetes_control_node01
+ roles:
+ - kubernetes_control_contrail
+ - linux_system_codename_xenial
+ interfaces:
+ enp2s0f0:
+ role: single_dhcp
+ enp2s0f1:
+ role: single_vlan_ctl
+
+ ctl02.cookied-cicd-bm-k8s-contrail40-maas.local:
+ reclass_storage_name: kubernetes_control_node02
+ roles:
+ - kubernetes_control_contrail
+ - linux_system_codename_xenial
+ interfaces:
+ enp2s0f0:
+ role: single_dhcp
+ enp2s0f1:
+ role: single_vlan_ctl
+
+ ctl03.cookied-cicd-bm-k8s-contrail40-maas.local:
+ reclass_storage_name: kubernetes_control_node03
+ roles:
+ - kubernetes_control_contrail
+ - linux_system_codename_xenial
+ interfaces:
+ enp2s0f0:
+ role: single_dhcp
+ enp2s0f1:
+ role: single_vlan_ctl
+
+ cmp<<count>>:
+ reclass_storage_name: kubernetes_compute_rack01
+ roles:
+ - kubernetes_compute_contrail
+ - linux_system_codename_xenial
+ - salt_master_host
+ interfaces:
+ enp9s0f0:
+ role: single_dhcp
+ ens11f1:
+ role: k8s_oc40_only_vhost_on_control_vlan
diff --git a/tcp_tests/templates/cookied-cicd-bm-k8s-contrail40-maas/salt-context-cookiecutter-k8s-contrail.yaml b/tcp_tests/templates/cookied-cicd-bm-k8s-contrail40-maas/salt-context-cookiecutter-k8s-contrail.yaml
new file mode 100644
index 0000000..e2bbdb7
--- /dev/null
+++ b/tcp_tests/templates/cookied-cicd-bm-k8s-contrail40-maas/salt-context-cookiecutter-k8s-contrail.yaml
@@ -0,0 +1,360 @@
+#https://docs.mirantis.com/mcp/master/mcp-ref-arch/opencontrail-plan/contrail-overview/contrail-4.html#
+default_context:
+ backup_private_key: |-
+ -----BEGIN RSA PRIVATE KEY-----
+ MIIEowIBAAKCAQEAskZyhTySYWvGrp+dlv+q2La8oiM8Sv1JfQog8+UW28hGUbCq
+ PnWa7bzVqENEY+g+qbQYh2Pvb2xURyY9+02TWLmCYzq7+orO1eG2SDt384YzDc6B
+ nQohUbGwaSH2YsT/QA8KV1fvUW9P0gVEHmJWR8Jo3vdRyw+tEUszYkiTYkcVc9zt
+ O5eYT9a6gSjLhl+tmJXu38jdWTcE8zJP+OGpJRDJpV2EAYwv+LXde9REv4KCGMqN
+ lvli9IA+zarfMsAzSTPpL5ooslB20akKM1h5li3LG47OpKMG9sMVFGEEo7+lqTGa
+ zUJEUPbJU95PqLfxoIOjYF/MhWKU5VALLraVwwIDAQABAoIBAHUAj0CqlFej6G3L
+ DB6CBZrds8el4HhG6+hIsX/gprPwKVaL3+/GN7w35vHb1BLN5fJy5HZXPFmge1+G
+ 1b8NFttwRQbjEWRJnZ352Sxm+z60oOU61w4+C8gWGnWleJMyP2PHez3/1G1Z5MUt
+ 95sJZx8JlNJg9ymSTD/BXyPuBezFKf8jUSgPbhBv8B2yy82YGzqc9u7sK6BN90P1
+ 3ZcynQ4cfieZLoim56dF9YEixr8plGmGpOspPZFlVCGIc1y2BC4ZUyDatcCa7/gQ
+ 3aDdt9lkEfoCHezAFOmaZDCOZ70spkwCqXYk42BXpDjKF6djCXyx3WKVF+IhEOYT
+ /S1I8KECgYEA1tzUZgW43/Z7Sm+QnoK3R9hG2oZZOoiTDdHyC+f5dk6maNbJbivM
+ FAPIpzHtCyvBEiSgGmlqpUrwR2NbYnOHjOX72Yq7/e0Vl1XWmplKCsTDNFGXx5Fs
+ 9AQbWjOF+drgfZ5p3dNyE9689nJZg5EhTxL8dfwnZat/l+/OKFO2tM0CgYEA1GhW
+ 4FMsXe3/g7M0dj5FnbS8xjz93pei5YZanID9mY/RUcKbegdtfvtwsfkZe5trbI39
+ jv96QyJeAnf48UDFwCV6SSZF/8Ez0pYHZanwkwKsli5uZdvSz7rUyVwE6tyO24WA
+ Trgpmbb8uxhJHBNuD+bC/iGd1H0IUuJ65ChD9M8CgYEAxfp2z4boQZ2ZHw5LoHLr
+ tIyJROPUJgYgEfToZaYbC7MOzL1Un2pFwg92fPCY7dkkLraGu690r9esLOtVEhNH
+ zEFB3cJi1Gf3pBlZA9zJB8Ej6Pphs2bBkNqT5XpiMcZHYhhsjhQ+Iibz0NWuu3cn
+ zPe+nmx4VMtAZ1x0hl4UlOUCgYBh8NaWS2O60AIwrRI0r5QUGwGsevUojU0Mfr4L
+ SiMlir4e8BgW1ZP0qGYXel/4sfp/rJ1NMZojmJY2lzFPtOk6J03SqvY97s1BffJd
+ O1X1w5bnDPPUvd7f8CsryeVuklLBADbglWSBP3IbpyAW9RKb/HDPE5seHqUW6t11
+ lOd42wKBgBW0tTV6+aqao6o4ZBU0SVoNg9/PwgOubAzeSDW2+ArXn1sMmroSfXVw
+ fbUTJI5TF/1pd7A5AKoR1FfTqlssoYlMGEPI6HJ4n9/4SqLpwd99HFW0ISt+EUMh
+ Tqt9mDfKzwHxG2QTuOwyrslO8iTwRoN5OYgm4dsL471Obr4DILTz
+ -----END RSA PRIVATE KEY-----
+ backup_public_key: ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQCyRnKFPJJha8aun52W/6rYtryiIzxK/Ul9CiDz5RbbyEZRsKo+dZrtvNWoQ0Rj6D6ptBiHY+9vbFRHJj37TZNYuYJjOrv6is7V4bZIO3fzhjMNzoGdCiFRsbBpIfZixP9ADwpXV+9Rb0/SBUQeYlZHwmje91HLD60RSzNiSJNiRxVz3O07l5hP1rqBKMuGX62Yle7fyN1ZNwTzMk/44aklEMmlXYQBjC/4td171ES/goIYyo2W+WL0gD7Nqt8ywDNJM+kvmiiyUHbRqQozWHmWLcsbjs6kowb2wxUUYQSjv6WpMZrNQkRQ9slT3k+ot/Ggg6NgX8yFYpTlUAsutpXD
+ bmk_enabled: 'False'
+ ceph_enabled: 'False'
+ auditd_enabled: 'False'
+ cicd_control_node01_address: 10.167.13.91
+ cicd_control_node01_hostname: cid01
+ cicd_control_node02_address: 10.167.13.92
+ cicd_control_node02_hostname: cid02
+ cicd_control_node03_address: 10.167.13.93
+ cicd_control_node03_hostname: cid03
+ cicd_control_vip_address: 10.167.13.90
+ cicd_control_vip_hostname: cid
+ cicd_enabled: 'True'
+ cicd_private_key: |-
+ -----BEGIN RSA PRIVATE KEY-----
+ MIIEpgIBAAKCAQEAxLQy4F7sNBloj0fFvklCq9+IX/BV5OBs6OtSBf6A+ztTs68i
+ ib5W6Tz/knh7wt2URB6uKJJBRBK+Oqj91ZNJxISewP2f5gX10WpjOAti+Fghkemt
+ kvyA8aUxX1wuAz7Y2v1uv1IkfWa5ubL8oJXNjeT9yeCNJWBxvd46XT9UiCs5CnDL
+ lBjRg+AP2+u5OabUFtH7GSzVqcMzhi0qLilP+cRhKmar2tQXFEI5wnwADh0REAF/
+ OxUZPaPEPD9TW7fGxjfrMtyUKqTEbi+EPsIvldkR0IhYrKXjwcFFu3FKISuy8PVM
+ EKUM5aZaLMI/WiMs1zmx+bAOrkCsUAf+sVmocQIDAQABAoIBAQCRnSAojrxmmQSZ
+ RLVy9wK+/zwSYXUEeMrG5iUTQOM0mCePVa/IrjnicYB0anKbv7IZd2jPqe1cuk9O
+ V3mJGH68Vry6+0XaX0EpJIuMmolKdNttC8Ktk/TUbciN4kxBpM2d14ybXvCaUGhe
+ usxfCGZhi0oAnxV9vNaWiqNEEjS+k4u9XTnj3+GxstEwch+l7xJwz83WEsx7G1Zz
+ 3Yxg7mh2uRPVCOZGVdClciym+9WHHrcdYw/OJCsSFsT7+qgzptsvXBVxa6EuGaVY
+ Pba+UfOnYIKlBtka4i3zXGaCQF6t2FHw5WyUEmYm3iBYmrGBbEf+3665Kh4NQs0a
+ PV4eHlLdAoGBAO8nDgkTA4gi1gyFy2YBUFP2BignkKCZGHkD8qvBnOt1Rxm6USlZ
+ 7GzAtU3nSd8ODzgOBI7+zd82yRqv2hEwP7xARhr0Nx1XvyaQtRlQ6tQnBgvqLDCG
+ n0qvWoBM+Yl6sTRGYavAMCaR7PuULUcZFNWk7m0fv4vqddGijgRsje37AoGBANKP
+ nN72BujsQIhdzAYS+u5/Hxu56Tvgupe6kWkhQuV8MQcM+79I6cgJxxH6zQDP/hGt
+ 3vXapgWUgi025LuEUWfkxAtTUfT4cRP2x529CH/XLQMYVqWxkoben9r+eFav+Kgw
+ C0dR3vSOlEMzYoIF+p/km0mIV1ZKZvrWymtXSdODAoGBAL4feUwDfqpKr4pzD1l/
+ r+Gf1BM2KQdTzp3eYpzjJiIWMTkl4wIRyCBJL5nIRvT6E2VH153qubY7srLxnFZP
+ 2kuJeXJSNkKwkHlTT3XZ22Zfw7HTL+BAFgDk2PjouPTvwlLBpUJKXr07A4CZs0kz
+ ilmybg340GmmMpY/OdIQjuDjAoGBAMcd5hP2hqxHlfMe+CwaUM+uySU4FvZ32xxW
+ 4uGPAarwWZC4V20Zr3JqxKUdDjYhersPOFQ4c129hajqSz2EsFLWRAoNvegx9QUT
+ Dsv9EgeK3Vca8f14wf7mkjbPA8++UyABZvkH1BZiqpQuCI66xrnjvnG4DBde/qlg
+ 60S84+SvAoGBAKH1feNtJaNhDxF0OqRuVmSFyL3pkMDoYr/mgpT4T1ToRBW5AtEt
+ Io4egi68ph8IChAt/TGFvikW7tbEgK9ACD/RAfl+LiuhxqJJFtC1LfGfHI7ntuRj
+ DjQrUy59ULoflh3iWBPtpw2ooRlSrAwaIgGt9odMECXp3BK8WLsUG9H1
+ -----END RSA PRIVATE KEY-----
+ cicd_public_key: ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQDEtDLgXuw0GWiPR8W+SUKr34hf8FXk4Gzo61IF/oD7O1OzryKJvlbpPP+SeHvC3ZREHq4okkFEEr46qP3Vk0nEhJ7A/Z/mBfXRamM4C2L4WCGR6a2S/IDxpTFfXC4DPtja/W6/UiR9Zrm5svyglc2N5P3J4I0lYHG93jpdP1SIKzkKcMuUGNGD4A/b67k5ptQW0fsZLNWpwzOGLSouKU/5xGEqZqva1BcUQjnCfAAOHREQAX87FRk9o8Q8P1Nbt8bGN+sy3JQqpMRuL4Q+wi+V2RHQiFispePBwUW7cUohK7Lw9UwQpQzlploswj9aIyzXObH5sA6uQKxQB/6xWahx
+ cluster_domain: bm-mcp-k8s-contrail.local
+ cluster_name: bm-mcp-k8s-contrail
+ # compute_bond_mode: active-backup
+ compute_padding_with_zeros: 'True'
+ compute_primary_first_nic: eth1
+ compute_primary_second_nic: eth2
+ context_seed: GAZbu3hguubkeYMg15AQ1J6UuY60TAh8h0EVpNUrHWhjRS2SxRYBuxxLvVURv82m
+ control_network_netmask: 255.255.255.0
+ control_network_subnet: 10.167.13.0/24
+ control_vlan: '2410'
+ backend_vlan: '2402'
+ cookiecutter_template_branch: ''
+ cookiecutter_template_credentials: gerrit
+ cookiecutter_template_url: https://gerrit.mcp.mirantis.com/mk/cookiecutter-templates.git
+ deploy_network_gateway: 172.17.41.2
+ deploy_network_netmask: 255.255.255.192
+ deploy_network_subnet: 172.17.41.0/26
+ deployment_type: physical
+ dns_server01: 172.18.208.44
+ dns_server02: 172.18.176.6
+ email_address: dtyzhnenko@mirantis.com
+ etcd_ssl: 'True'
+ infra_bond_mode: active-backup
+ infra_deploy_nic: eth0
+ infra_kvm01_control_address: 10.167.13.241
+ infra_kvm01_deploy_address: 172.17.41.4
+ infra_kvm01_hostname: kvm01
+ infra_kvm02_control_address: 10.167.13.242
+ infra_kvm02_deploy_address: 172.17.41.5
+ infra_kvm02_hostname: kvm02
+ infra_kvm03_control_address: 10.167.13.243
+ infra_kvm03_deploy_address: 172.17.41.6
+ infra_kvm03_hostname: kvm03
+ infra_kvm_vip_address: 10.167.13.240
+ infra_primary_first_nic: eth1
+ infra_primary_second_nic: eth2
+ kubernetes_enabled: 'True'
+ kubernetes_compute_count: 2
+ kubernetes_compute_rack01_hostname: cmp
+ kubernetes_compute_single_address_ranges: 10.167.13.103-10.167.13.104
+ kubernetes_compute_tenant_address_ranges: 10.167.13.103-10.167.13.104
+ kubernetes_network_opencontrail_enabled: 'True'
+ kubernetes_keepalived_vip_interface: br_ctl
+ kubernetes_metallb_enabled: 'False' # Not used with opencontrail
+ metallb_addresses: 172.17.41.160-172.17.41.180
+ kubernetes_ingressnginx_enabled: 'True'
+ kubernetes_ingressnginx_controller_replicas: 2
+ local_repositories: 'False'
+ maas_enabled: 'True'
+ maas_deploy_address: 172.17.41.3
+ maas_deploy_cidr: 172.17.41.0/26
+ maas_deploy_gateway: 172.17.41.2
+ maas_deploy_range_end: 172.17.41.60
+ maas_deploy_range_start: 172.17.41.13
+ maas_deploy_vlan: '0'
+ maas_dhcp_enabled: 'True'
+ maas_fabric_name: fabric-0
+ maas_hostname: cfg01
+ maas_manage_deploy_network: 'True'
+ maas_machines: |
+ kvm01: # cz7784-kvm.host-telecom.com
+ distro_series: "xenial"
+ # hwe_kernel: "hwe-16.04"
+ # pxe_interface_mac:
+ pxe_interface_mac: "0c:c4:7a:6c:88:fe"
+ interfaces:
+ enp9s0f0:
+ mac: "0c:c4:7a:6c:88:fe"
+ mode: "static"
+ ip: "172.17.41.4"
+ subnet: ${maas:region:subnets:deploy_network:cidr} # create it manually... in UI
+ gateway: ${_param:deploy_network_gateway}
+ power_parameters:
+ power_address: "5.43.225.115"
+ power_pass: ==IPMI_PASS==
+ power_type: ipmi
+ power_user: ==IPMI_USER==
+ kvm02: # #cz7785-kvm.host-telecom.com
+ distro_series: "xenial"
+ # hwe_kernel: "hwe-16.04"
+ pxe_interface_mac: "0c:c4:7a:34:53:8e"
+ interfaces:
+ enp9s0f0:
+ mac: "0c:c4:7a:34:53:8e"
+ mode: "static"
+ ip: "172.17.41.5"
+ subnet: ${maas:region:subnets:deploy_network:cidr} # create it manually... in UI
+ gateway: ${_param:deploy_network_gateway}
+ power_parameters:
+ power_address: "5.43.225.121"
+ power_pass: ==IPMI_PASS==
+ power_type: ipmi
+ power_user: ==IPMI_USER==
+ kvm03: # #cz7744-kvm.host-telecom.com
+ distro_series: "xenial"
+ # hwe_kernel: "hwe-16.04"
+ pxe_interface_mac: "0c:c4:7a:34:55:2c"
+ interfaces:
+ enp9s0f0:
+ mac: "0c:c4:7a:34:55:2c"
+ mode: "static"
+ ip: "172.17.41.6"
+ subnet: ${maas:region:subnets:deploy_network:cidr} # create it manually... in UI
+ gateway: ${_param:deploy_network_gateway}
+ power_parameters:
+ power_address: "5.43.225.126"
+ power_pass: ==IPMI_PASS==
+ power_type: ipmi
+ power_user: ==IPMI_USER==
+ ctl01: # #cz7609.bud.mirantis.net
+ distro_series: "xenial"
+ # hwe_kernel: "hwe-16.04"
+ pxe_interface_mac: "0c:c4:7a:54:a2:9c"
+ interfaces:
+ enp2s0f0:
+ mac: "0c:c4:7a:54:a2:9c"
+ mode: "static"
+ ip: "172.17.41.9"
+ subnet: ${maas:region:subnets:deploy_network:cidr} # create it manually... in UI
+ gateway: ${_param:deploy_network_gateway}
+ power_parameters:
+ power_address: "185.8.59.239"
+ power_pass: ==IPMI_PASS==
+ power_type: ipmi
+ power_user: ==IPMI_USER==
+ ctl02: # #cz7631-kvm.host-telecom.com
+ distro_series: "xenial"
+ # hwe_kernel: "hwe-16.04"
+ pxe_interface_mac: "0c:c4:7a:54:a0:56"
+ interfaces:
+ enp2s0f0:
+ mac: "0c:c4:7a:54:a0:56"
+ mode: "static"
+ ip: "172.17.41.10"
+ subnet: ${maas:region:subnets:deploy_network:cidr} # create it manually... in UI
+ gateway: ${_param:deploy_network_gateway}
+ power_parameters:
+ power_address: "185.8.59.237"
+ power_pass: ==IPMI_PASS==
+ power_type: ipmi
+ power_user: ==IPMI_USER==
+ ctl03: # #cz7632-kvm.host-telecom.com
+ distro_series: "xenial"
+ # hwe_kernel: "hwe-16.04"
+ pxe_interface_mac: "0c:c4:7a:54:a0:08"
+ interfaces:
+ enp2s0f0:
+ mac: "0c:c4:7a:54:a0:08"
+ mode: "static"
+ ip: "172.17.41.11"
+ subnet: ${maas:region:subnets:deploy_network:cidr} # create it manually... in UI
+ gateway: ${_param:deploy_network_gateway}
+ power_parameters:
+ power_address: "185.8.59.236"
+ power_pass: ==IPMI_PASS==
+ power_type: ipmi
+ power_user: ==IPMI_USER==
+ cmp001: # #cz7781-kvm.host-telecom.com
+ distro_series: "xenial"
+ # hwe_kernel: "hwe-16.04"
+ pxe_interface_mac: "0c:c4:7a:6c:58:06"
+ interfaces:
+ enp9s0f0:
+ mac: "0c:c4:7a:6c:58:06"
+ mode: "static"
+ ip: "172.17.41.7"
+ subnet: ${maas:region:subnets:deploy_network:cidr} # create it manually... in UI
+ gateway: ${_param:deploy_network_gateway}
+ power_parameters:
+ power_address: "5.43.225.120"
+ power_pass: ==IPMI_PASS==
+ power_type: ipmi
+ power_user: ==IPMI_USER==
+ cmp002: # cz7674.bud.mirantis.net
+ distro_series: "xenial"
+ # hwe_kernel: "hwe-16.04"
+ pxe_interface_mac: "0c:c4:7a:33:27:22"
+ interfaces:
+ enp9s0f0:
+ mac: "0c:c4:7a:33:27:22"
+ mode: "static"
+ ip: "172.17.41.8"
+ subnet: ${maas:region:subnets:deploy_network:cidr} # create it manually... in UI
+ gateway: ${_param:deploy_network_gateway}
+ power_parameters:
+ power_address: "176.74.217.166"
+ power_pass: ==IPMI_PASS==
+ power_type: ipmi
+ power_user: ==IPMI_USER==
+
+ mcp_common_scripts_branch: ''
+ mcp_version: proposed
+ offline_deployment: 'False'
+ kubernetes_control_address: 10.167.13.236
+ kubernetes_control_node01_deploy_address: 172.17.41.9
+ kubernetes_control_node01_address: 10.167.13.239
+ kubernetes_control_node01_hostname: ctl01
+ kubernetes_control_node02_deploy_address: 172.17.41.10
+ kubernetes_control_node02_address: 10.167.13.238
+ kubernetes_control_node02_hostname: ctl02
+ kubernetes_control_node02_deploy_address: 172.17.41.11
+ kubernetes_control_node03_address: 10.167.13.237
+ kubernetes_control_node03_hostname: ctl03
+ linux_repo_contrail_component: oc40
+ opencontrail_analytics_hostname: ctl
+ opencontrail_analytics_node01_hostname: ctl01
+ opencontrail_analytics_node02_hostname: ctl02
+ opencontrail_analytics_node03_hostname: ctl03
+ opencontrail_analytics_address: ${_param:opencontrail_control_address}
+ opencontrail_analytics_node01_address: ${_param:opencontrail_control_node01_address}
+ opencontrail_analytics_node02_address: ${_param:opencontrail_control_node02_address}
+ opencontrail_analytics_node03_address: ${_param:opencontrail_control_node03_address}
+ opencontrail_compute_iface_mask: '24'
+ opencontrail_compute_iface: ten2
+ opencontrail_control_address: 10.167.13.236
+ opencontrail_control_hostname: ctl
+ opencontrail_control_node01_address: 10.167.13.239
+ opencontrail_control_node01_hostname: ctl01
+ opencontrail_control_node02_address: 10.167.13.238
+ opencontrail_control_node02_hostname: ctl02
+ opencontrail_control_node03_address: 10.167.13.237
+ opencontrail_control_node03_hostname: ctl03
+ opencontrail_enabled: 'True'
+ opencontrail_router01_address: 10.167.13.100
+ opencontrail_router01_hostname: rtr01
+ opencontrail_router02_address: 10.167.13.101
+ opencontrail_router02_hostname: rtr02
+ opencontrail_public_ip_range: 172.17.41.128/26
+ opencontrail_version: '4.0'
+ openstack_enabled: 'False'
+ openssh_groups: ''
+ openstack_version: pike
+ openldap_domain: ${_param:cluster_name}.local
+ openldap_enabled: 'True'
+ openldap_organisation: ${_param:cluster_name}
+ oss_enabled: 'False'
+ oss_node03_address: ${_param:stacklight_monitor_node03_address}
+ oss_notification_smtp_use_tls: 'False'
+ oss_pushkin_email_sender_password: password
+ oss_pushkin_smtp_host: 127.0.0.1
+ oss_pushkin_smtp_port: '587'
+ oss_webhook_app_id: '24'
+ oss_webhook_login_id: '13'
+ platform: kubernetes_enabled
+ public_host: ${_param:infra_config_address}
+ publication_method: email
+ reclass_repository: https://github.com/Mirantis/mk-lab-salt-model.git
+ salt_api_password: frJMLJsfGkFXCk4qTTEttKla518Akvdp
+ salt_api_password_hash: $6$ixefPtcd$vasKuySO6L2JM0FKaB/udsQvH4upI2dWoJZaR9XTqeAx4UMvkHsNNSwsALVqTTLbXIngkFqYNXpbNm1o4iMGS.
+ salt_master_address: 10.167.13.15
+ salt_master_hostname: cfg01
+ salt_master_management_address: 172.17.41.3
+ shared_reclass_branch: ''
+ shared_reclass_url: https://gerrit.mcp.mirantis.com/salt-models/reclass-system.git
+ stacklight_enabled: 'True'
+ stacklight_log_address: 10.167.13.60
+ stacklight_log_hostname: log
+ stacklight_log_node01_address: 10.167.13.61
+ stacklight_log_node01_hostname: log01
+ stacklight_log_node02_address: 10.167.13.62
+ stacklight_log_node02_hostname: log02
+ stacklight_log_node03_address: 10.167.13.63
+ stacklight_log_node03_hostname: log03
+ stacklight_monitor_address: 10.167.13.70
+ stacklight_monitor_hostname: mon
+ stacklight_monitor_node01_address: 10.167.13.71
+ stacklight_monitor_node01_hostname: mon01
+ stacklight_monitor_node02_address: 10.167.13.72
+ stacklight_monitor_node02_hostname: mon02
+ stacklight_monitor_node03_address: 10.167.13.73
+ stacklight_monitor_node03_hostname: mon03
+ stacklight_telemetry_address: 10.167.13.85
+ stacklight_telemetry_hostname: mtr
+ stacklight_telemetry_node01_address: 10.167.13.86
+ stacklight_telemetry_node01_hostname: mtr01
+ stacklight_telemetry_node02_address: 10.167.13.87
+ stacklight_telemetry_node02_hostname: mtr02
+ stacklight_telemetry_node03_address: 10.167.13.88
+ stacklight_telemetry_node03_hostname: mtr03
+ stacklight_version: '2'
+ static_ips_on_deploy_network_enabled: 'False'
+ tenant_network_gateway: 10.167.13.1
+ tenant_network_netmask: 255.255.255.0
+ tenant_network_subnet: 10.167.13.0/24
+ tenant_vlan: '2410'
+ upstream_proxy_enabled: 'False'
+ use_default_network_scheme: 'True'
+ vnf_onboarding_enabled: 'False'
diff --git a/tcp_tests/templates/cookied-cicd-bm-k8s-contrail40-maas/salt-context-environment.yaml b/tcp_tests/templates/cookied-cicd-bm-k8s-contrail40-maas/salt-context-environment.yaml
new file mode 100644
index 0000000..5ef4e1b
--- /dev/null
+++ b/tcp_tests/templates/cookied-cicd-bm-k8s-contrail40-maas/salt-context-environment.yaml
@@ -0,0 +1,132 @@
+nodes:
+ mon01.bm-k8s-contrail.local:
+ reclass_storage_name: stacklight_server_node01
+ roles:
+ - stacklightv2_server_leader
+ - linux_system_codename_xenial
+ interfaces:
+ ens2:
+ role: single_dhcp
+ ens3:
+ role: single_ctl
+
+ mon02.bm-k8s-contrail.local:
+ reclass_storage_name: stacklight_server_node02
+ roles:
+ - stacklightv2_server
+ - linux_system_codename_xenial
+ interfaces:
+ ens2:
+ role: single_dhcp
+ ens3:
+ role: single_ctl
+
+ mon03.bm-k8s-contrail.local:
+ reclass_storage_name: stacklight_server_node03
+ roles:
+ - stacklightv2_server
+ - linux_system_codename_xenial
+ interfaces:
+ ens2:
+ role: single_dhcp
+ ens3:
+ role: single_ctl
+
+ mtr01.bm-k8s-contrail.local:
+ reclass_storage_name: stacklight_telemetry_node01
+ roles:
+ - stacklight_telemetry
+ - linux_system_codename_xenial
+ interfaces:
+ ens2:
+ role: single_dhcp
+ ens3:
+ role: single_ctl
+
+ mtr02.bm-k8s-contrail.local:
+ reclass_storage_name: stacklight_telemetry_node02
+ roles:
+ - stacklight_telemetry
+ - linux_system_codename_xenial
+ interfaces:
+ ens2:
+ role: single_dhcp
+ ens3:
+ role: single_ctl
+
+ mtr03.bm-k8s-contrail.local:
+ reclass_storage_name: stacklight_telemetry_node03
+ roles:
+ - stacklight_telemetry
+ - linux_system_codename_xenial
+ interfaces:
+ ens2:
+ role: single_dhcp
+ ens3:
+ role: single_ctl
+
+ log01.bm-k8s-contrail.local:
+ reclass_storage_name: stacklight_log_node01
+ roles:
+ - stacklight_log_leader_v2
+ - linux_system_codename_xenial
+ interfaces:
+ ens2:
+ role: single_dhcp
+ ens3:
+ role: single_ctl
+
+ log02.bm-k8s-contrail.local:
+ reclass_storage_name: stacklight_log_node02
+ roles:
+ - stacklight_log
+ - linux_system_codename_xenial
+ interfaces:
+ ens2:
+ role: single_dhcp
+ ens3:
+ role: single_ctl
+
+ log03.bm-k8s-contrail.local:
+ reclass_storage_name: stacklight_log_node03
+ roles:
+ - stacklight_log
+ - linux_system_codename_xenial
+ interfaces:
+ ens2:
+ role: single_dhcp
+ ens3:
+ role: single_ctl
+
+ cid01.bm-k8s-contrail.local:
+ reclass_storage_name: cicd_control_node01
+ roles:
+ - cicd_control_leader
+ - linux_system_codename_xenial
+ interfaces:
+ ens2:
+ role: single_dhcp
+ ens3:
+ role: single_ctl
+
+ cid02.bm-k8s-contrail.local:
+ reclass_storage_name: cicd_control_node02
+ roles:
+ - cicd_control_manager
+ - linux_system_codename_xenial
+ interfaces:
+ ens2:
+ role: single_dhcp
+ ens3:
+ role: single_ctl
+
+ cid03.bm-k8s-contrail.local:
+ reclass_storage_name: cicd_control_node03
+ roles:
+ - cicd_control_manager
+ - linux_system_codename_xenial
+ interfaces:
+ ens2:
+ role: single_dhcp
+ ens3:
+ role: single_ctl
diff --git a/tcp_tests/templates/cookied-cicd-bm-k8s-contrail40-maas/salt.yaml b/tcp_tests/templates/cookied-cicd-bm-k8s-contrail40-maas/salt.yaml
new file mode 100644
index 0000000..4fe952a
--- /dev/null
+++ b/tcp_tests/templates/cookied-cicd-bm-k8s-contrail40-maas/salt.yaml
@@ -0,0 +1,82 @@
+{% from 'cookied-cicd-bm-k8s-contrail40-maas/underlay.yaml' import HOSTNAME_CFG01 with context %}
+{% from 'cookied-cicd-bm-k8s-contrail40-maas/underlay.yaml' import LAB_CONFIG_NAME with context %}
+{% from 'cookied-cicd-bm-k8s-contrail40-maas/underlay.yaml' import DOMAIN_NAME with context %}
+
+# Other salt model repository parameters see in shared-salt.yaml
+
+{% import 'shared-salt.yaml' as SHARED with context %}
+
+- description: Wait for salt-master is ready after configdrive user-data
+ cmd: |
+ timeout 120 salt-call test.ping
+ node_name: {{ HOSTNAME_CFG01 }}
+ retry: {count: 2, delay: 5}
+ skip_fail: false
+
+{{ SHARED.MACRO_INSTALL_SALT_MINIONS() }}
+
+{{SHARED.MACRO_CHECK_SALT_VERSION_SERVICES_ON_CFG()}}
+
+{{SHARED.MACRO_CHECK_SALT_VERSION_ON_NODES()}}
+
+- description: Prepare maas
+ cmd: |
+ salt-call state.sls maas.cluster;
+ salt-call state.sls maas.region;
+ node_name: {{ HOSTNAME_CFG01 }}
+ retry: {count: 2, delay: 5}
+ skip_fail: false
+
+- description: Generate a public key for machines in MAAS
+ cmd: |
+ ssh-keygen -y -f ~root/.ssh/id_rsa > ~root/.ssh/id_rsa.pub
+ maas mirantis sshkeys create key="$(cat ~root/.ssh/id_rsa.pub)"
+ node_name: {{ HOSTNAME_CFG01 }}
+ retry: {count: 1, delay: 5}
+ skip_fail: false
+
+- description: Run comissioning of BM nodes
+ cmd: |
+ salt-call maas.process_machines
+ node_name: {{ HOSTNAME_CFG01 }}
+ retry: {count: 1, delay: 5}
+ skip_fail: false
+
+- description: Wait for machines ready
+ cmd: |
+ salt-call maas.machines_status && timeout 120 salt-call state.sls maas.machines.wait_for_ready
+ node_name: {{ HOSTNAME_CFG01 }}
+ retry: {count: 7, delay: 5}
+ skip_fail: false
+
+- description: Enforce the interfaces configuration defined in the model for servers
+ cmd: |
+ salt-call state.sls maas.machines.assign_ip;
+ node_name: {{ HOSTNAME_CFG01 }}
+ retry: {count: 1, delay: 5}
+ skip_fail: false
+
+- description: Remove all the salt-minions and re-register the cfg01 minion
+ cmd: |
+ salt-key -y -D;
+ salt-call test.ping
+ sleep 5
+ # Check that the cfg01 is registered
+ salt-key | grep cfg01
+ node_name: {{ HOSTNAME_CFG01 }}
+ retry: {count: 1, delay: 5}
+ skip_fail: false
+
+- description: provision the automatically commissioned physical nodes through MAAS
+ cmd: |
+ salt-call maas.deploy_machines;
+ node_name: {{ HOSTNAME_CFG01 }}
+ retry: {count: 3, delay: 5}
+ skip_fail: false
+
+- description: Wait for machines deployed
+ cmd: |
+ salt-call maas.machines_status && timeout 300 salt-call state.sls maas.machines.wait_for_deployed
+ node_name: {{ HOSTNAME_CFG01 }}
+ retry: {count: 6, delay: 5}
+ skip_fail: false
diff --git a/tcp_tests/templates/cookied-cicd-bm-k8s-contrail40-maas/underlay.yaml b/tcp_tests/templates/cookied-cicd-bm-k8s-contrail40-maas/underlay.yaml
new file mode 100644
index 0000000..e40b708
--- /dev/null
+++ b/tcp_tests/templates/cookied-cicd-bm-k8s-contrail40-maas/underlay.yaml
@@ -0,0 +1,129 @@
+# Set the repository suite, one of the: 'nightly', 'testing', 'stable', or any other required
+{% set REPOSITORY_SUITE = os_env('REPOSITORY_SUITE', 'proposed') %}
+
+#{% set DOMAIN_NAME = os_env('LAB_CONFIG_NAME', 'physical_mcp11_ovs_dpdk') + '.local' %}
+{% set LAB_CONFIG_NAME = os_env('LAB_CONFIG_NAME', 'cookied-cicd-bm-k8s-contrail40-maas') %}
+{% set DOMAIN_NAME = os_env('DOMAIN_NAME', LAB_CONFIG_NAME + '.local') %}
+{% set HOSTNAME_CFG01 = os_env('HOSTNAME_CFG01', 'cfg01') %}
+
+{% set ETH1_IP_ADDRESS_CFG01 = os_env('ETH1_IP_ADDRESS_CFG01', '172.17.41.3') %}
+
+---
+aliases:
+ - &interface_model {{ os_env('INTERFACE_MODEL', 'virtio') }}
+ - &cloudinit_meta_data {{ CLOUDINIT_META_DATA }}
+ - &cloudinit_user_data_cfg01 {{ CLOUDINIT_USER_DATA_CFG01 }}
+
+
+template:
+ devops_settings:
+ env_name: {{ os_env('ENV_NAME', 'cookied-cicd-bm-k8s-contrail40-maas_' + REPOSITORY_SUITE + "_" + os_env('BUILD_NUMBER', '')) }}
+
+ address_pools:
+ admin-pool01:
+ net: {{ os_env('ADMIN_ADDRESS_POOL01', '172.17.41.0/26:26') }}
+ params:
+ ip_reserved:
+ gateway: '172.17.41.2'
+ l2_network_device: +61
+ default_{{ HOSTNAME_CFG01 }}: {{ ETH1_IP_ADDRESS_CFG01 }}
+ ip_ranges:
+ dhcp: [+2, -3]
+ private-pool01:
+ net: {{ os_env('PRIVATE_ADDRESS_POOL01', '10.167.13.0/24:24') }}
+ params:
+ ip_reserved:
+ gateway: +1
+ l2_network_device: +1
+ ip_ranges:
+ dhcp: [+2, -3]
+
+ tenant-pool01:
+ net: {{ os_env('TENANT_ADDRESS_POOL01', '10.167.14.0/24:24') }}
+ params:
+ ip_reserved:
+ gateway: +1
+ l2_network_device: +1
+ ip_ranges:
+ dhcp: [+2, -3]
+
+ external-pool01:
+ net: {{ os_env('EXTERNAL_ADDRESS_POOL01', '172.17.41.128/26:26') }}
+ params:
+ ip_reserved:
+ gateway: +1
+ l2_network_device: -2
+ ip_ranges:
+ dhcp: [+2, -3]
+
+ groups:
+
+ - name: default
+ driver:
+ name: devops.driver.libvirt
+ params:
+ connection_string: !os_env CONNECTION_STRING, qemu:///system
+ storage_pool_name: !os_env STORAGE_POOL_NAME, default
+ stp: False
+ hpet: False
+ enable_acpi: true
+ use_host_cpu: !os_env DRIVER_USE_HOST_CPU, true
+
+ network_pools:
+ admin: admin-pool01
+
+ l2_network_devices:
+ admin:
+ address_pool: admin-pool01
+ dhcp: false
+ forward:
+ mode: bridge
+ parent_iface:
+ phys_dev: !os_env LAB_MANAGEMENT_IFACE
+ private:
+ address_pool: private-pool01
+ dhcp: false
+ forward:
+ mode: bridge
+ parent_iface:
+ phys_dev: !os_env LAB_CONTROL_IFACE
+
+ group_volumes:
+ - name: cfg01_day01_image # Pre-configured day01 image
+ source_image: {{ os_env('IMAGE_PATH_CFG01_DAY01') }} # http://images.mirantis.com/cfg01-day01.qcow2 or fallback to IMAGE_PATH1604
+ format: qcow2
+
+ nodes:
+ - name: {{ HOSTNAME_CFG01 }}
+ role: salt_master
+ params:
+ vcpu: !os_env SLAVE_NODE_CPU, 4
+ memory: !os_env SLAVE_NODE_MEMORY, 16384
+ boot:
+ - hd
+ volumes:
+ - name: system
+ capacity: !os_env NODE_VOLUME_SIZE, 150
+ backing_store: cfg01_day01_image
+ format: qcow2
+ - name: config
+ capacity: 1
+ format: raw
+ device: cdrom
+ bus: ide
+
+ interfaces:
+ - label: ens3
+ l2_network_device: admin
+ interface_model: *interface_model
+ - label: ens4
+ l2_network_device: private
+ interface_model: *interface_model
+
+ network_config:
+ ens3:
+ networks:
+ - admin
+ ens4:
+ networks:
+ - private