f9d9afcfba
This partially reverts commit 47bbb96b29ab30764d6220cdd43e63a1d2072533 which triggered a retry on vexxhost clouds. The issue was introduced in Ie8fd965165e8d347d27528a2c16d0647e412ccdc, which applied some fixes for CentOS 8.3, and inadvertently removed the Tenks variable that forces the use of qemu for 'bare metal' VMs. This lead to autodetection of KVM, which does not work well when nested in all CI cloud providers. This change fixes the issue by forcing the use of qemu for the overcloud once more. It also adds a similar option for the seed VM job. Change-Id: I6bc8da2b8da903e09b97df8cd95c68a562c11db9
64 lines
2.2 KiB
YAML
64 lines
2.2 KiB
YAML
---
|
|
- hosts: primary
|
|
environment:
|
|
KAYOBE_CONFIG_SOURCE_PATH: "{{ kayobe_config_src_dir }}"
|
|
tasks:
|
|
# NOTE(mgoddard): Use the name zz-overrides.yml to ensure this takes
|
|
# precedence over the standard config files.
|
|
- name: Ensure kayobe-config override config file exists
|
|
template:
|
|
src: overrides.yml.j2
|
|
dest: "{{ kayobe_config_src_dir }}/etc/kayobe/zz-overrides.yml"
|
|
|
|
- name: Ensure seed group variables exist
|
|
template:
|
|
src: seed-group-vars.j2
|
|
dest: "{{ kayobe_config_src_dir }}/etc/kayobe/inventory/group_vars/seed/network-interfaces"
|
|
|
|
# NOTE(mgoddard): The kayobe dev config by default expects a bridge -
|
|
# braio - to exist with an IP address of 192.168.33.4.
|
|
- name: Ensure all-in-one network bridge interface exists
|
|
command: "{{ item }}"
|
|
become: true
|
|
with_items:
|
|
- "ip l add braio type bridge"
|
|
- "ip l set braio up"
|
|
- "ip a add 192.168.33.4/24 dev braio"
|
|
# NOTE(mgoddard): CentOS 8 removes interfaces from their bridge during
|
|
# ifdown, and removes the bridge if there are no interfaces left. When
|
|
# Kayobe bounces veth links plugged into the bridge, it causes the
|
|
# bridge which has the IP we are using for SSH to be removed. Use a
|
|
# dummy interface.
|
|
- "ip l add dummy1 type dummy"
|
|
- "ip l set dummy1 up"
|
|
- "ip l set dummy1 master braio"
|
|
|
|
# NOTE(mgoddard): Configure IP forwarding and NAT to allow communication
|
|
# from the seed VM to the outside world.
|
|
|
|
# FIXME(mgoddard): use a libvirt network?
|
|
- name: Ensure NAT is configured
|
|
iptables:
|
|
chain: POSTROUTING
|
|
table: nat
|
|
out_interface: "{{ ansible_default_ipv4.interface }}"
|
|
jump: MASQUERADE
|
|
become: true
|
|
|
|
# FIXME(mgoddard): use a libvirt network?
|
|
- name: Ensure IP forwarding is enabled
|
|
sysctl:
|
|
name: net.ipv4.conf.all.forwarding
|
|
value: 1
|
|
become: true
|
|
|
|
- name: Ensure SELinux is disabled
|
|
selinux:
|
|
state: disabled
|
|
become: True
|
|
|
|
- name: Ensure kayobe is installed
|
|
shell:
|
|
cmd: dev/install.sh &> {{ logs_dir }}/ansible/install
|
|
chdir: "{{ kayobe_src_dir }}"
|