2018-11-07 15:24:12 +00:00
|
|
|
---
|
|
|
|
- hosts: all
|
|
|
|
pre_tasks:
|
|
|
|
- name: Include common variables
|
|
|
|
include_vars: common.yml
|
|
|
|
roles:
|
|
|
|
- role: tenks-diagnostics
|
|
|
|
tenks_diagnostics_phase: "pre"
|
|
|
|
tenks_diagnostics_log_dir: "{{ logs_dir }}"
|
|
|
|
- role: tenks-ci-prep
|
|
|
|
tasks:
|
|
|
|
- name: Ensure config directory exists
|
|
|
|
file:
|
|
|
|
path: "{{ config_dir }}"
|
|
|
|
state: "directory"
|
|
|
|
|
|
|
|
- name: Template tenks overrides
|
|
|
|
template:
|
|
|
|
src: tenks-overrides.yml.j2
|
|
|
|
dest: "{{ tenks_overrides_path }}"
|
|
|
|
|
2019-11-22 17:32:53 +00:00
|
|
|
- name: Install python3
|
|
|
|
become: true
|
|
|
|
package:
|
|
|
|
name: python3
|
2020-02-27 15:46:58 +00:00
|
|
|
when: ansible_python.version.major == 3
|
2019-11-22 17:32:53 +00:00
|
|
|
|
2018-11-07 15:24:12 +00:00
|
|
|
- name: Create virtualenv for tenks
|
|
|
|
pip:
|
|
|
|
requirements: "{{ tenks_src_dir }}/requirements.txt"
|
|
|
|
virtualenv: "{{ tenks_venv }}"
|
2020-02-27 15:46:58 +00:00
|
|
|
virtualenv_python: "{{ ansible_python.executable }}"
|
2018-11-07 15:24:12 +00:00
|
|
|
|
2019-05-01 11:39:16 +01:00
|
|
|
- name: Template requirements overrides
|
|
|
|
template:
|
|
|
|
src: requirements-overrides.yml.j2
|
|
|
|
dest: "{{ tenks_requirements_overrides_path }}"
|
|
|
|
|
2018-11-07 15:24:12 +00:00
|
|
|
- name: Install Ansible Galaxy dependencies
|
|
|
|
vars:
|
|
|
|
ansible_galaxy_bin: "{{ tenks_venv }}/bin/ansible-galaxy"
|
2019-03-27 16:53:35 +00:00
|
|
|
command:
|
|
|
|
cmd: >-
|
|
|
|
{{ ansible_galaxy_bin }} install -r {{ tenks_src_dir }}/requirements.yml
|
|
|
|
-p {{ tenks_src_dir }}/ansible/roles
|
|
|
|
chdir: "{{ tenks_src_dir }}"
|
2018-11-07 15:24:12 +00:00
|
|
|
|
2019-10-18 10:32:02 +01:00
|
|
|
- name: Install dependencies for CI
|
|
|
|
# We install roles specifc to CI over the existing ones. This means that we
|
|
|
|
# don't have to keep the two requirements files in sync, as we just override
|
|
|
|
# some of them.
|
2019-05-01 11:39:16 +01:00
|
|
|
vars:
|
|
|
|
ansible_galaxy_bin: "{{ tenks_venv }}/bin/ansible-galaxy"
|
|
|
|
command:
|
|
|
|
cmd: >-
|
|
|
|
{{ ansible_galaxy_bin }} install -f -r "{{ tenks_requirements_overrides_path }}"
|
|
|
|
-p {{ tenks_src_dir }}/ansible/roles
|
|
|
|
chdir: "{{ tenks_src_dir }}"
|
|
|
|
|
2018-11-07 15:24:12 +00:00
|
|
|
- name: Ensure network bridge for physnet1 exists
|
|
|
|
command: "{{ item }}"
|
|
|
|
become: true
|
|
|
|
with_items:
|
|
|
|
- "ip l add breth1 type bridge"
|
|
|
|
- "ip l set breth1 up"
|