[scenario] Factor out common nodes, states 99/61699/2
authorAlexandru Avadanii <Alexandru.Avadanii@enea.com>
Sat, 1 Sep 2018 21:49:08 +0000 (23:49 +0200)
committerAlexandru Avadanii <Alexandru.Avadanii@enea.com>
Sat, 1 Sep 2018 22:49:13 +0000 (00:49 +0200)
Make the bulk of scenario files static again by shifting out all
common virtual nodes (mas01) and states (virtual_init, maas etc.)
to default.yaml(.j2).

This allows us to parse scenario-specific data during first j2
expansion, preparing for the new Pharos installer adapter that
relies on `conf.virtual.nodes.control` length to construct the
proper list of MaaS node definitions (kvm{01,02,03} vs {ctl01,gtw01}).

Change-Id: I666ab5bd6bb2a42f98646af51950f6b9fffa0e8b
Signed-off-by: Alexandru Avadanii <Alexandru.Avadanii@enea.com>
14 files changed:
mcp/config/scenario/.gitignore
mcp/config/scenario/defaults.yaml.j2 [moved from mcp/config/scenario/defaults.yaml with 78% similarity]
mcp/config/scenario/os-nosdn-nofeature-ha.yaml [moved from mcp/config/scenario/os-nosdn-nofeature-ha.yaml.j2 with 77% similarity]
mcp/config/scenario/os-nosdn-nofeature-noha.yaml [moved from mcp/config/scenario/os-nosdn-nofeature-noha.yaml.j2 with 76% similarity]
mcp/config/scenario/os-nosdn-ovs-ha.yaml [moved from mcp/config/scenario/os-nosdn-ovs-ha.yaml.j2 with 77% similarity]
mcp/config/scenario/os-nosdn-ovs-noha.yaml [moved from mcp/config/scenario/os-nosdn-ovs-noha.yaml.j2 with 78% similarity]
mcp/config/scenario/os-nosdn-vpp-ha.yaml [moved from mcp/config/scenario/os-nosdn-vpp-ha.yaml.j2 with 78% similarity]
mcp/config/scenario/os-nosdn-vpp-noha.yaml [moved from mcp/config/scenario/os-nosdn-vpp-noha.yaml.j2 with 76% similarity]
mcp/config/scenario/os-odl-nofeature-ha.yaml [moved from mcp/config/scenario/os-odl-nofeature-ha.yaml.j2 with 77% similarity]
mcp/config/scenario/os-odl-nofeature-noha.yaml [moved from mcp/config/scenario/os-odl-nofeature-noha.yaml.j2 with 77% similarity]
mcp/config/scenario/os-odl-ovs-noha.yaml [moved from mcp/config/scenario/os-odl-ovs-noha.yaml.j2 with 79% similarity]
mcp/config/scenario/os-ovn-nofeature-ha.yaml [moved from mcp/config/scenario/os-ovn-nofeature-ha.yaml.j2 with 77% similarity]
mcp/config/scenario/os-ovn-nofeature-noha.yaml [moved from mcp/config/scenario/os-ovn-nofeature-noha.yaml.j2 with 76% similarity]
mcp/scripts/xdf_data.sh.j2

similarity index 78%
rename from mcp/config/scenario/defaults.yaml
rename to mcp/config/scenario/defaults.yaml.j2
index db98eb1..141af4d 100644 (file)
@@ -5,12 +5,29 @@
 # which accompanies this distribution, and is available at
 # http://www.apache.org/licenses/LICENSE-2.0
 ##############################################################################
+{%- import 'net_map.j2' as nm with context %}
 ---
 x86_64:
   base_image: https://cloud-images.ubuntu.com/xenial/current/xenial-server-cloudimg-amd64-disk1.img
   default:
     vcpus: 2
     ram: 4096
+    virtual: &arch_default_virtual_nodes_infra
+      nodes:
+        infra:
+{%- if nm.cluster.has_baremetal_nodes %}
+          - mas01
+{%- endif %}
+    cluster: &arch_default_cluster_states
+      states:
+        - virtual_init
+{%- if nm.cluster.has_baremetal_nodes %}
+        - maas
+        - baremetal_init
+{%- if conf.MCP_VCP %}
+        - virtual_control_plane
+{%- endif %}
+{%- endif %}
   common:
     apt:
       keys:
@@ -32,6 +49,8 @@ aarch64:
   default:
     vcpus: 6
     ram: 4096
+    virtual: *arch_default_virtual_nodes_infra
+    cluster: *arch_default_cluster_states
   common:
     apt:
       keys:
@@ -5,27 +5,14 @@
 # which accompanies this distribution, and is available at
 # http://www.apache.org/licenses/LICENSE-2.0
 ##############################################################################
-{%- import 'net_map.j2' as nm with context %}
 ---
 cluster:
   domain: mcp-ovs-ha.local
   states:
-    - virtual_init
-{%- if nm.cluster.has_baremetal_nodes %}
-    - maas
-    - baremetal_init
-{%- endif %}
-{%- if conf.MCP_VCP %}
-    - virtual_control_plane
-{%- endif %}
     - openstack_ha
     - networks
 virtual:
   nodes:
-    infra:
-{%- if nm.cluster.has_baremetal_nodes %}
-      - mas01
-{%- endif %}
     control:
       - kvm01
       - kvm02
@@ -5,25 +5,15 @@
 # which accompanies this distribution, and is available at
 # http://www.apache.org/licenses/LICENSE-2.0
 ##############################################################################
-{%- import 'net_map.j2' as nm with context %}
 ---
 cluster:
   domain: mcp-ovs-noha.local
   states:
-    - virtual_init
-{%- if nm.cluster.has_baremetal_nodes %}
-    - maas
-    - baremetal_init
-{%- endif %}
     - openstack_noha
     - neutron_gateway
     - networks
 virtual:
   nodes:
-    infra:
-{%- if nm.cluster.has_baremetal_nodes %}
-      - mas01
-{%- endif %}
     control:
       - ctl01
       - gtw01
similarity index 77%
rename from mcp/config/scenario/os-nosdn-ovs-ha.yaml.j2
rename to mcp/config/scenario/os-nosdn-ovs-ha.yaml
index 0f7a7bc..57f2140 100644 (file)
@@ -5,28 +5,15 @@
 # which accompanies this distribution, and is available at
 # http://www.apache.org/licenses/LICENSE-2.0
 ##############################################################################
-{%- import 'net_map.j2' as nm with context %}
 ---
 cluster:
   domain: mcp-ovs-dpdk-ha.local
   states:
-    - virtual_init
-{%- if nm.cluster.has_baremetal_nodes %}
-    - maas
-    - baremetal_init
-{%- endif %}
-{%- if conf.MCP_VCP %}
-    - virtual_control_plane
-{%- endif %}
     - dpdk
     - openstack_ha
     - networks
 virtual:
   nodes:
-    infra:
-{%- if nm.cluster.has_baremetal_nodes %}
-      - mas01
-{%- endif %}
     control:
       - kvm01
       - kvm02
similarity index 78%
rename from mcp/config/scenario/os-nosdn-ovs-noha.yaml.j2
rename to mcp/config/scenario/os-nosdn-ovs-noha.yaml
index bf37f93..15cad1d 100644 (file)
@@ -5,26 +5,16 @@
 # which accompanies this distribution, and is available at
 # http://www.apache.org/licenses/LICENSE-2.0
 ##############################################################################
-{%- import 'net_map.j2' as nm with context %}
 ---
 cluster:
   domain: mcp-ovs-dpdk-noha.local
   states:
-    - virtual_init
-{%- if nm.cluster.has_baremetal_nodes %}
-    - maas
-    - baremetal_init
-{%- endif %}
     - dpdk
     - openstack_noha
     - neutron_gateway
     - networks
 virtual:
   nodes:
-    infra:
-{%- if nm.cluster.has_baremetal_nodes %}
-      - mas01
-{%- endif %}
     control:
       - ctl01
       - gtw01
similarity index 78%
rename from mcp/config/scenario/os-nosdn-vpp-ha.yaml.j2
rename to mcp/config/scenario/os-nosdn-vpp-ha.yaml
index 6ccb590..9e7ebc1 100644 (file)
@@ -5,27 +5,14 @@
 # which accompanies this distribution, and is available at
 # http://www.apache.org/licenses/LICENSE-2.0
 ##############################################################################
-{%- import 'net_map.j2' as nm with context %}
 ---
 cluster:
   domain: mcp-vpp-ha.local
   states:
-{%- if nm.cluster.has_baremetal_nodes %}
-    - maas
-    - baremetal_init
-{%- endif %}
-{%- if conf.MCP_VCP %}
-    - virtual_control_plane
-{%- endif %}
     - openstack_ha
     - networks
 virtual:
   nodes:
-    infra:
-      - cfg01
-{%- if nm.cluster.has_baremetal_nodes %}
-      - mas01
-{%- endif %}
     control:
       - kvm01
       - kvm02
similarity index 76%
rename from mcp/config/scenario/os-nosdn-vpp-noha.yaml.j2
rename to mcp/config/scenario/os-nosdn-vpp-noha.yaml
index 41cb504..e903004 100644 (file)
@@ -5,25 +5,15 @@
 # which accompanies this distribution, and is available at
 # http://www.apache.org/licenses/LICENSE-2.0
 ##############################################################################
-{%- import 'net_map.j2' as nm with context %}
 ---
 cluster:
   domain: mcp-vpp-noha.local
   states:
-{%- if nm.cluster.has_baremetal_nodes %}
-    - maas
-    - baremetal_init
-{%- endif %}
     - openstack_noha
     - neutron_gateway
     - networks
 virtual:
   nodes:
-    infra:
-      - cfg01
-{%- if nm.cluster.has_baremetal_nodes %}
-      - mas01
-{%- endif %}
     control:
       - ctl01
       - gtw01
@@ -5,28 +5,15 @@
 # which accompanies this distribution, and is available at
 # http://www.apache.org/licenses/LICENSE-2.0
 ##############################################################################
-{%- import 'net_map.j2' as nm with context %}
 ---
 cluster:
   domain: mcp-odl-ha.local
   states:
-    - virtual_init
-{%- if nm.cluster.has_baremetal_nodes %}
-    - maas
-    - baremetal_init
-{%- endif %}
-{%- if conf.MCP_VCP %}
-    - virtual_control_plane
-{%- endif %}
     - opendaylight
     - openstack_ha
     - networks
 virtual:
   nodes:
-    infra:
-{%- if nm.cluster.has_baremetal_nodes %}
-      - mas01
-{%- endif %}
     control:
       - kvm01
       - kvm02
@@ -5,26 +5,16 @@
 # which accompanies this distribution, and is available at
 # http://www.apache.org/licenses/LICENSE-2.0
 ##############################################################################
-{%- import 'net_map.j2' as nm with context %}
 ---
 cluster:
   domain: mcp-odl-noha.local
   states:
-    - virtual_init
-{%- if nm.cluster.has_baremetal_nodes %}
-    - maas
-    - baremetal_init
-{%- endif %}
     - opendaylight
     - openstack_noha
     - neutron_gateway
     - networks
 virtual:
   nodes:
-    infra:
-{%- if nm.cluster.has_baremetal_nodes %}
-      - mas01
-{%- endif %}
     control:
       - ctl01
       - gtw01
similarity index 79%
rename from mcp/config/scenario/os-odl-ovs-noha.yaml.j2
rename to mcp/config/scenario/os-odl-ovs-noha.yaml
index 62c120b..e2df6a4 100644 (file)
@@ -5,16 +5,10 @@
 # which accompanies this distribution, and is available at
 # http://www.apache.org/licenses/LICENSE-2.0
 ##############################################################################
-{%- import 'net_map.j2' as nm with context %}
 ---
 cluster:
   domain: mcp-odl-noha.local
   states:
-    - virtual_init
-{%- if nm.cluster.has_baremetal_nodes %}
-    - maas
-    - baremetal_init
-{%- endif %}
     - dpdk
     - opendaylight
     - openstack_noha
@@ -22,10 +16,6 @@ cluster:
     - networks
 virtual:
   nodes:
-    infra:
-{%- if nm.cluster.has_baremetal_nodes %}
-      - mas01
-{%- endif %}
     control:
       - ctl01
       - gtw01
@@ -5,27 +5,14 @@
 # which accompanies this distribution, and is available at
 # http://www.apache.org/licenses/LICENSE-2.0
 ##############################################################################
-{%- import 'net_map.j2' as nm with context %}
 ---
 cluster:
   domain: mcp-ovn-ha.local
   states:
-    - virtual_init
-{%- if nm.cluster.has_baremetal_nodes %}
-    - maas
-    - baremetal_init
-{%- endif %}
-{%- if conf.MCP_VCP %}
-    - virtual_control_plane
-{%- endif %}
     - openstack_ha
     - networks
 virtual:
   nodes:
-    infra:
-{%- if nm.cluster.has_baremetal_nodes %}
-      - mas01
-{%- endif %}
     control:
       - kvm01
       - kvm02
@@ -5,24 +5,14 @@
 # which accompanies this distribution, and is available at
 # http://www.apache.org/licenses/LICENSE-2.0
 ##############################################################################
-{%- import 'net_map.j2' as nm with context %}
 ---
 cluster:
   domain: mcp-ovn-noha.local
   states:
-    - virtual_init
-{%- if nm.cluster.has_baremetal_nodes %}
-    - maas
-    - baremetal_init
-{%- endif %}
     - openstack_noha
     - networks
 virtual:
   nodes:
-    infra:
-{%- if nm.cluster.has_baremetal_nodes %}
-      - mas01
-{%- endif %}
     control:
       - ctl01
     compute:
index b8c3213..ee5fffa 100644 (file)
@@ -14,6 +14,7 @@
 {%- import 'net_map.j2' as nm with context -%}
 {%- set arch = conf[conf.MCP_JUMP_ARCH] -%}
 {%- set V = conf.virtual -%}
+{%- do V.nodes.update(arch.default.virtual.nodes) -%}
 {%- set section_map = {
   'infra': -1,
   'control': nm.ctl01.idx,
@@ -87,7 +88,7 @@ OPNFV_BRIDGES=(
 )
 
 export CLUSTER_DOMAIN={{ conf.cluster.domain }}
-cluster_states={{ bash_arr(conf.cluster.states) }}
+cluster_states={{ bash_arr(arch.default.cluster.states + conf.cluster.states) }}
 virtual_nodes={{ filter_nodes('virtual') }}
 control_nodes_query={{ filter_nodes(['baremetal', 'virtual'], True, ['control']) }}
 base_image={{ arch.base_image }}