tenks/ansible/host_setup.yml
Mark Goddard 2c2c8b9504 Fix CI failures
* new ansible-lint complaints
* clamp ansible-lint to <7
* tox 4 support
* switch to CentOS NFV Open vSwitch repository for OVS - rocky 9 RDO install was failing
* switch from Kayobe CentOS stream 8 to Rocky Linux 9 and Ubuntu Jammy
  jobs - these are the current supported distros in Kayobe master

Change-Id: Ic607ccccc866da65c100053bfa15ee141a98679e
2023-05-18 09:24:55 +01:00

84 lines
2.6 KiB
YAML

---
- name: Create Tenks venv
hosts: localhost:hypervisors
tags:
- host-setup
tasks:
- name: Ensure Tenks venv is properly set up
when: virtualenv_path
block:
- name: Init Tenks venv and upgrade pip
pip:
name: pip
state: latest # noqa package-latest
virtualenv: "{{ virtualenv_path }}"
virtualenv_command: "{{ ansible_facts.python.executable }} -m venv"
virtualenv_site_packages: true
- name: Upgrade setuptools
pip:
name: setuptools
state: latest # noqa package-latest
virtualenv: "{{ virtualenv_path }}"
- name: Load current Tenks state
hosts: localhost
tags:
- host-setup
tasks:
- name: Load state from file
include_vars:
file: "{{ state_file_path }}"
name: tenks_state
- name: Run hypervisor setup
hosts: hypervisors
tags:
- host-setup
vars:
physnet_indices: >-
{{ hostvars.localhost.tenks_state[inventory_hostname].physnet_indices }}
tasks:
- include_tasks: hypervisor_setup.yml
- name: Set up libvirt and vbmc
hosts: libvirt
tags:
- host-setup
tasks:
- name: Set up host
when: cmd == 'deploy'
block:
- name: Configure host for Libvirt
include_role:
name: stackhpc.libvirt-host
vars:
libvirt_host_pools:
- name: "{{ libvirt_pool_name }}"
type: "{{ libvirt_pool_type }}"
capacity: "{{ libvirt_pool_capacity }}"
path: "{{ libvirt_pool_path }}"
mode: "{{ libvirt_pool_mode }}"
owner: "{{ libvirt_pool_owner }}"
group: "{{ libvirt_pool_group }}"
libvirt_host_require_vt: "{{ libvirt_require_vt }}"
libvirt_host_uri: "{{ libvirt_local_uri }}"
libvirt_host_socket_dir: "{{ libvirt_custom_socket_path }}"
libvirt_host_pid_path: "{{ libvirt_custom_pid_path }}"
libvirt_host_enable_efi_support: >-
{{ hostvars.localhost.tenks_state[inventory_hostname].nodes |
default([]) |
map('set_libvirt_boot_firmware') |
selectattr('boot_firmware', 'equalto', 'efi') |
list |
length > 0 }}
- name: Set up Virtual BMC daemon
include_role:
name: virtualbmc-daemon
vars:
vbmcd_virtualenv_path: "{{ virtualenv_path }}"
vbmcd_python_upper_constraints_url: >-
{{ python_upper_constraints_url }}