Files
kayobe/playbooks/kayobe-seed-vm-base/pre.yml
Will Szumski 2829bf89f7 CI: Test kayobe_control_host_become
This change adds support for the kayobe_control_host_become variable to
CI jobs. This variable will cause any uses of become on localhost to
fail. This allows us to test that the kayobe_control_host_become
configuration variable has successfully removed all uses of become.

I've enabled this on a subset of jobs to get good test coverage.

Depends-On: https://review.opendev.org/c/openstack/kolla-ansible/+/949758
Change-Id: I6da98e055714f75112cf08ff8aa53dd84de2e425
2025-05-19 17:20:21 +01:00

53 lines
1.7 KiB
YAML

---
- hosts: primary
environment:
KAYOBE_CONFIG_SOURCE_PATH: "{{ kayobe_config_src_dir }}"
tasks:
# NOTE(mgoddard): The kayobe dev config by default expects a bridge -
# braio - to exist with an IP address of 192.168.33.4.
- import_role:
name: kayobe-network-bootstrap
vars:
bridge_interface: braio
bridge_ip: 192.168.33.4
bridge_prefix: 24
bridge_port_interface: dummy1
# 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
# NOTE(mgoddard): Use the name zz-20-overrides.yml to ensure this takes
# precedence over the standard config files, but can control order with the
# priority (number after zz).
- name: Ensure kayobe-config override config file exists
template:
src: overrides.yml.j2
dest: "{{ kayobe_config_src_dir }}/etc/kayobe/zz-20-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"
- name: Ensure kayobe is installed
shell:
cmd: dev/install.sh &> {{ logs_dir }}/ansible/install
chdir: "{{ kayobe_src_dir }}"
executable: /bin/bash