summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--xci/installer/kubespray/playbooks/configure-kubenet.yml4
-rwxr-xr-xxci/installer/osa/deploy.sh31
-rw-r--r--xci/opnfv-scenario-requirements.yml16
-rwxr-xr-xxci/playbooks/dynamic_inventory.py14
-rw-r--r--xci/playbooks/roles/bootstrap-host/tasks/network_debian.yml2
-rw-r--r--xci/playbooks/roles/bootstrap-host/tasks/network_redhat.yml2
-rw-r--r--xci/playbooks/roles/bootstrap-host/tasks/network_suse.yml2
-rw-r--r--xci/var/idf.yml77
8 files changed, 85 insertions, 63 deletions
diff --git a/xci/installer/kubespray/playbooks/configure-kubenet.yml b/xci/installer/kubespray/playbooks/configure-kubenet.yml
index 3b1cb013..18a126c1 100644
--- a/xci/installer/kubespray/playbooks/configure-kubenet.yml
+++ b/xci/installer/kubespray/playbooks/configure-kubenet.yml
@@ -38,14 +38,14 @@
with_items: "{{ kubenet_xci_static_routes }}"
loop_control:
label: "{{ item.network }}"
- when: deploy_scenario == 'k8-nosdn-nofeature'
+ when: deploy_scenario.find('k8-nosdn-') != -1
- name: Ensure rp_filter is disabled on localhost
sysctl:
name: net.ipv4.conf.all.rp_filter
sysctl_set: yes
state: present
- value: "{{ deploy_scenario == 'k8-nosdn-nofeature' | ternary(0, 1) }}"
+ value: "{{ (kubenet_xci_static_routes is defined) | ternary(0, 1) }}"
reload: yes
delegate_to: localhost
run_once: True
diff --git a/xci/installer/osa/deploy.sh b/xci/installer/osa/deploy.sh
index fd794d01..8b3a67d0 100755
--- a/xci/installer/osa/deploy.sh
+++ b/xci/installer/osa/deploy.sh
@@ -160,6 +160,22 @@ echo
echo "Info: OpenStack installation is successfully completed!"
#-------------------------------------------------------------------------------
+# Execute post-installation tasks
+#-------------------------------------------------------------------------------
+# Playbook post.yml is used in order to execute any post-deployment tasks that
+# are required for the scenario under test.
+#-------------------------------------------------------------------------------
+echo "-----------------------------------------------------------------------"
+echo "Info: Running post-deployment scenario role"
+echo "-----------------------------------------------------------------------"
+cd $OSA_XCI_PLAYBOOKS
+ansible-playbook ${XCI_ANSIBLE_PARAMS} -i ${XCI_PLAYBOOKS}/dynamic_inventory.py \
+ post-deployment.yml
+echo "-----------------------------------------------------------------------"
+echo
+echo "Info: Post-deployment scenario role execution done"
+
+#-------------------------------------------------------------------------------
# - Getting OpenStack login information
#-------------------------------------------------------------------------------
echo "Info: Openstack login details"
@@ -180,19 +196,4 @@ echo "Info: Admin username - ${USERNAME##*=}"
echo "Info: Admin password - ${PASSWORD##*=}"
echo "Info: It is recommended to change the default password."
-#-------------------------------------------------------------------------------
-# Execute post-installation tasks
-#-------------------------------------------------------------------------------
-# Playbook post.yml is used in order to execute any post-deployment tasks that
-# are required for the scenario under test.
-#-------------------------------------------------------------------------------
-echo "-----------------------------------------------------------------------"
-echo "Info: Running post-deployment scenario role"
-echo "-----------------------------------------------------------------------"
-cd $OSA_XCI_PLAYBOOKS
-ansible-playbook ${XCI_ANSIBLE_PARAMS} -i ${XCI_PLAYBOOKS}/dynamic_inventory.py \
- post-deployment.yml
-echo "-----------------------------------------------------------------------"
-echo
-echo "Info: Post-deployment scenario role execution done"
# vim: set ts=4 sw=4 expandtab:
diff --git a/xci/opnfv-scenario-requirements.yml b/xci/opnfv-scenario-requirements.yml
index 1c7c8d5b..f5fc62df 100644
--- a/xci/opnfv-scenario-requirements.yml
+++ b/xci/opnfv-scenario-requirements.yml
@@ -167,3 +167,19 @@
- ubuntu
- centos
- opensuse
+
+- scenario: k8-nosdn-istio
+ scm: git
+ src: https://gerrit.opnfv.org/gerrit/releng-xci-scenarios
+ version: master
+ role: scenarios/k8-nosdn-istio/role/k8-nosdn-istio
+ installers:
+ - installer: kubespray
+ flavors:
+ - ha
+ - mini
+ - noha
+ distros:
+ - ubuntu
+ - centos
+ - opensuse
diff --git a/xci/playbooks/dynamic_inventory.py b/xci/playbooks/dynamic_inventory.py
index bf9483da..9a1624b0 100755
--- a/xci/playbooks/dynamic_inventory.py
+++ b/xci/playbooks/dynamic_inventory.py
@@ -42,8 +42,8 @@ class XCIInventory(object):
self.opnfv_networks = {}
self.opnfv_networks['opnfv'] = {}
- self.opnfv_networks['opnfv']['admin'] = {}
- self.opnfv_networks['opnfv']['admin']['address'] = '172.29.236.10/22'
+ self.opnfv_networks['opnfv']['mgmt'] = {}
+ self.opnfv_networks['opnfv']['mgmt']['address'] = '172.29.236.10/22'
self.opnfv_networks['opnfv']['public'] = {}
self.opnfv_networks['opnfv']['public']['address'] = '192.168.122.2/24'
self.opnfv_networks['opnfv']['public']['gateway'] = '192.168.122.1'
@@ -93,15 +93,15 @@ class XCIInventory(object):
print(e)
sys.exit(1)
- valid_host = (host for host in idf['xci'][self.installer]['nodes_roles'] \
+ valid_host = (host for host in idf['xci']['installers'][self.installer]['nodes_roles'] \
if host in idf['xci']['flavors'][self.flavor] \
and host != 'opnfv')
for host in valid_host:
nodes.append(host)
- hostname = idf['xci'][self.installer]['hostnames'][host]
+ hostname = idf['xci']['installers'][self.installer]['hostnames'][host]
self.add_host(hostname)
- for role in idf['xci'][self.installer]['nodes_roles'][host]:
+ for role in idf['xci']['installers'][self.installer]['nodes_roles'][host]:
self.add_to_group(role, hostname)
pdf_host_info = filter(lambda x: x['name'] == host, pdf['nodes'])[0]
@@ -124,8 +124,8 @@ class XCIInventory(object):
self.add_groupvar('all', 'host_info', host_networks)
# Now add the additional groups
- for parent in idf['xci'][self.installer]['groups'].keys():
- map(lambda x: self.add_group(x, parent), idf['xci'][self.installer]['groups'][parent])
+ for parent in idf['xci']['installers'][self.installer]['groups'].keys():
+ map(lambda x: self.add_group(x, parent), idf['xci']['installers'][self.installer]['groups'][parent])
# Read additional group variables
self.read_additional_group_vars()
diff --git a/xci/playbooks/roles/bootstrap-host/tasks/network_debian.yml b/xci/playbooks/roles/bootstrap-host/tasks/network_debian.yml
index 3cac1e22..f2a138f8 100644
--- a/xci/playbooks/roles/bootstrap-host/tasks/network_debian.yml
+++ b/xci/playbooks/roles/bootstrap-host/tasks/network_debian.yml
@@ -45,7 +45,7 @@
- { name: "{{ ansible_local.xci.network.xci_interface }}.10", vlan_id: 10 }
- { name: "{{ ansible_local.xci.network.xci_interface }}.30", vlan_id: 30 }
- { name: "{{ ansible_local.xci.network.xci_interface }}.20", vlan_id: 20 }
- - { name: "br-mgmt", bridge_ports: "{{ ansible_local.xci.network.xci_interface }}.10", network: "{{ host_info[inventory_hostname].admin }}" }
+ - { name: "br-mgmt", bridge_ports: "{{ ansible_local.xci.network.xci_interface }}.10", network: "{{ host_info[inventory_hostname].mgmt }}" }
- { name: "br-vxlan", bridge_ports: "{{ ansible_local.xci.network.xci_interface }}.30", network: "{{ host_info[inventory_hostname].private }}" }
- { name: "br-vlan", bridge_ports: "{{ ansible_local.xci.network.xci_interface }}", network: "{{ host_info[inventory_hostname].public }}" }
- { name: "br-storage", bridge_ports: "{{ ansible_local.xci.network.xci_interface }}.20", network: "{{ host_info[inventory_hostname].storage }}" }
diff --git a/xci/playbooks/roles/bootstrap-host/tasks/network_redhat.yml b/xci/playbooks/roles/bootstrap-host/tasks/network_redhat.yml
index c360f15d..288fdf65 100644
--- a/xci/playbooks/roles/bootstrap-host/tasks/network_redhat.yml
+++ b/xci/playbooks/roles/bootstrap-host/tasks/network_redhat.yml
@@ -18,7 +18,7 @@
- { name: "{{ ansible_local.xci.network.xci_interface }}.20", bridge: "br-storage", vlan_id: 20 }
- { name: "{{ ansible_local.xci.network.xci_interface }}.30", bridge: "br-vxlan" , vlan_id: 30 }
- { name: "br-vlan" , network: "{{ host_info[inventory_hostname].public }}" }
- - { name: "br-mgmt" , network: "{{ host_info[inventory_hostname].admin }}" }
+ - { name: "br-mgmt" , network: "{{ host_info[inventory_hostname].mgmt }}" }
- { name: "br-storage", network: "{{ host_info[inventory_hostname].storage }}" }
- { name: "br-vxlan" , network: "{{ host_info[inventory_hostname].private }}" }
loop_control:
diff --git a/xci/playbooks/roles/bootstrap-host/tasks/network_suse.yml b/xci/playbooks/roles/bootstrap-host/tasks/network_suse.yml
index e2b5aa4a..569644bf 100644
--- a/xci/playbooks/roles/bootstrap-host/tasks/network_suse.yml
+++ b/xci/playbooks/roles/bootstrap-host/tasks/network_suse.yml
@@ -17,7 +17,7 @@
- { name: "{{ ansible_local.xci.network.xci_interface }}.10", vlan_id: 10 }
- { name: "{{ ansible_local.xci.network.xci_interface }}.30", vlan_id: 30 }
- { name: "{{ ansible_local.xci.network.xci_interface }}.20", vlan_id: 20 }
- - { name: "br-mgmt", bridge_ports: "{{ ansible_local.xci.network.xci_interface }}.10", network: "{{ host_info[inventory_hostname].admin }}" }
+ - { name: "br-mgmt", bridge_ports: "{{ ansible_local.xci.network.xci_interface }}.10", network: "{{ host_info[inventory_hostname].mgmt }}" }
- { name: "br-vxlan", bridge_ports: "{{ ansible_local.xci.network.xci_interface }}.30", network: "{{ host_info[inventory_hostname].private }}" }
- { name: "br-vlan", bridge_ports: "{{ ansible_local.xci.network.xci_interface }}", network: "{{ host_info[inventory_hostname].public }}" }
- { name: "br-storage", bridge_ports: "{{ ansible_local.xci.network.xci_interface }}.20", network: "{{ host_info[inventory_hostname].storage }}" }
diff --git a/xci/var/idf.yml b/xci/var/idf.yml
index 4d743cda..628e1b8c 100644
--- a/xci/var/idf.yml
+++ b/xci/var/idf.yml
@@ -13,6 +13,10 @@ idf:
version: 0.1
net_config: &net_config
admin:
+ interface: 2
+ network: 192.168.122.0
+ mask: 22
+ mgmt:
interface: 0
network: 172.29.236.0
mask: 22
@@ -30,29 +34,7 @@ idf:
interface: 3
network: 172.29.244.0
mask: 22
-
-xci:
- pod_name: vpod1
- net_config: *net_config
- flavors:
- mini:
- - opnfv
- - node1
- - node2
- noha:
- - opnfv
- - node1
- - node2
- - node3
- ha:
- - opnfv
- - node1
- - node2
- - node3
- - node4
- - node5
-
- osa:
+ osa: &idf_osa
nodes_roles:
opnfv: [deployment]
node1: [controller]
@@ -72,9 +54,20 @@ xci:
node3: compute01
node4: controller01
node5: controller02
- kubespray:
+ network:
+ # network mapping
+ network_mapping:
+ # Management network used by installer components to communicate
+ net-mgmt: mgmt
+ # Storage Network
+ net-storage: storage
+ # Internal network for communication between VNF
+ net-internal: private
+ # Public network for VNF remote acces (ext-net in Openstack)
+ net-vnf: public
+ kubespray: &idf_kubespray
nodes_roles:
- opnvf: [opnfv]
+ opnfv: [opnfv]
node1: [kube-master, etcd, vault]
node2: [kube-node]
node3: [kube-node]
@@ -91,7 +84,26 @@ xci:
node3: node2
node4: master2
node5: master3
-
+xci:
+ pod_name: vpod1
+ net_config: *net_config
+ flavors:
+ mini:
+ - opnfv
+ - node1
+ - node2
+ noha:
+ - opnfv
+ - node1
+ - node2
+ - node3
+ ha:
+ - opnfv
+ - node1
+ - node2
+ - node3
+ - node4
+ - node5
# net_config network to be used by the PXE
pxe_network: public
@@ -104,13 +116,6 @@ xci:
extra_addresses:
opnfv: 192.168.122.2
- # network mapping
- network_mapping:
- # Management network used by installer components to communicate
- net-mgmt: admin
- # Storage Network
- net-storage: storage
- # Internal network for communication between VNF
- net-internal: private
- # Public network for VNF remote acces (ext-net in Openstack)
- net-vnf: public
+ installers:
+ osa: *idf_osa
+ kubespray: *idf_kubespray