aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRadosław Piliszek <radoslaw.piliszek@gmail.com>2020-02-23 17:14:47 +0100
committerRadosław Piliszek <radoslaw.piliszek@gmail.com>2020-02-26 13:27:00 +0100
commit195813dd60ddfdef3465cdda9744d4cf65362f90 (patch)
treed1df9b7759ea5435c490a17b9f9285b7e4a6fcc5
parent4ac7f6f3a0d1aa23aa805ccc261fd004ad9fe880 (diff)
downloadkolla-ansible-195813dd60ddfdef3465cdda9744d4cf65362f90.tar.gz
kolla-ansible-195813dd60ddfdef3465cdda9744d4cf65362f90.zip
CI: Add addressing on external network
This is to allow CI testing of network connectivity. Note only "primary" node gets an address on it. Hence, "primary" becomes our fake external router. Depends-on: https://review.opendev.org/709361 Change-Id: I05592888796107d6de95b940c42b2bff73ac0669
-rwxr-xr-xtests/init-core-openstack.sh13
-rw-r--r--tests/pre.yml2
-rw-r--r--tests/run.yml7
-rw-r--r--zuul.d/base.yaml2
4 files changed, 24 insertions, 0 deletions
diff --git a/tests/init-core-openstack.sh b/tests/init-core-openstack.sh
index 02a445c4c..d50e82b06 100755
--- a/tests/init-core-openstack.sh
+++ b/tests/init-core-openstack.sh
@@ -12,6 +12,19 @@ function init_runonce {
echo "Initialising OpenStack resources via init-runonce"
tools/init-runonce &> /tmp/logs/ansible/init-runonce
+
+ echo "Setting address on the external network bridge"
+ if [[ $SCENARIO == "linuxbridge" ]]; then
+ # NOTE(yoctozepto): linuxbridge agent manages its bridges by itself
+ # hence, we need to find the current name of the external network bridge
+ devname=$(basename $(readlink /sys/class/net/${EXT_NET_SLAVE_DEVICE}/master))
+ else
+ devname=br-ex
+ # NOTE(yoctozepto): ovs virtual interfaces are down (not used) by default
+ # hence, we need to bring the external network bridge up
+ sudo ip link set ${devname} up
+ fi
+ sudo ip addr add ${EXT_NET_LOCAL_ADDR} dev ${devname}
}
diff --git a/tests/pre.yml b/tests/pre.yml
index 504e65082..7dcf4b87c 100644
--- a/tests/pre.yml
+++ b/tests/pre.yml
@@ -16,6 +16,8 @@
managed_network_prefix: "{{ api_network_prefix }}"
managed_network_prefix_length: "{{ api_network_prefix_length }}"
managed_network_address_family: "{{ address_family }}"
+ # NOTE(yoctozepto): no addressing for neutron_external_interface in here
+ # because it is enslaved by a bridge
- role: multi-node-vxlan-overlay
vars:
vxlan_interface_name: "{{ neutron_external_interface_name }}"
diff --git a/tests/run.yml b/tests/run.yml
index e9bdfece5..f5f4251fd 100644
--- a/tests/run.yml
+++ b/tests/run.yml
@@ -356,6 +356,13 @@
cmd: init-core-openstack.sh
executable: /bin/bash
chdir: "{{ kolla_ansible_src_dir }}"
+ environment:
+ EXT_NET_CIDR: "{{ neutron_external_network_prefix }}0/{{ neutron_external_network_prefix_length }}"
+ EXT_NET_RANGE: "start={{ neutron_external_network_prefix }}150,end={{ neutron_external_network_prefix }}199"
+ EXT_NET_GATEWAY: "{{ neutron_external_network_prefix }}1"
+ EXT_NET_LOCAL_ADDR: "{{ neutron_external_network_prefix }}1/{{ neutron_external_network_prefix_length }}"
+ EXT_NET_SLAVE_DEVICE: "{{ neutron_external_interface_name }}"
+ SCENARIO: "{{ scenario }}"
when: openstack_core_tested or scenario in ['ironic', 'scenario_nfv', 'zun']
- name: Run test-core-openstack.sh script
diff --git a/zuul.d/base.yaml b/zuul.d/base.yaml
index dc30e6ac4..563674edc 100644
--- a/zuul.d/base.yaml
+++ b/zuul.d/base.yaml
@@ -32,6 +32,8 @@
api_interface_name: vxlan0
kolla_internal_vip_address: "192.0.2.10"
address_family: 'ipv4'
+ neutron_external_network_prefix: "198.51.100."
+ neutron_external_network_prefix_length: "24"
neutron_external_interface_name: vxlan1
tls_enabled: false
roles: