58a8d1a119
This adds names to blocks and includes for consistency. We've done this before (e.g. Ia7e490aaba99da9694a6f3fdb1bca9838221b30a) but I guess 6.12.0 is finding more... Change-Id: Ib451f6d3c5a18047873e63aa0a1aa2b425846fec
100 lines
3.2 KiB
YAML
100 lines
3.2 KiB
YAML
- hosts: all
|
|
roles:
|
|
- ensure-tox
|
|
tasks:
|
|
- name: Run bindep
|
|
include_role:
|
|
name: bindep
|
|
- name: Run tox with constraints
|
|
include_role:
|
|
name: tox
|
|
vars:
|
|
tox_envlist: docs
|
|
tox_constraints_file: '{{ zuul.project.src_dir }}/zuul-tests.d/test-constraints.txt'
|
|
# Make sure we test with verbose output even if the default changes
|
|
tox_extra_args: '-vv'
|
|
|
|
- name: Run tox with multiple testenvs
|
|
include_role:
|
|
name: tox
|
|
vars:
|
|
tox_envlist: docs,linters
|
|
tox_environment:
|
|
ANSIBLE_ROLES_PATH: "{{ ansible_user_dir }}/{{ zuul.project.src_dir }}/roles"
|
|
# Make sure we test with verbose output even if the default changes
|
|
tox_extra_args: '-vv'
|
|
|
|
- name: Create tempfile to verify testenvs ran
|
|
tempfile:
|
|
register: default_tempfile
|
|
|
|
- name: Run tox
|
|
block:
|
|
- name: Run tox with empty envlist
|
|
include_role:
|
|
name: tox
|
|
vars:
|
|
zuul_work_dir: "{{ zuul.project.src_dir }}/test-playbooks/python/"
|
|
tox_extra_args: "-- {{ default_tempfile.path }}"
|
|
tox_install_siblings: false
|
|
tox_envlist: ''
|
|
|
|
- name: Make sure magic lines are present
|
|
lineinfile:
|
|
path: "{{ default_tempfile.path }}"
|
|
line: linters
|
|
check_mode: true
|
|
register: default_status
|
|
failed_when: default_status is changed
|
|
always:
|
|
- name: Remove tempfile
|
|
file:
|
|
state: absent
|
|
path: "{{ default_tempfile.path }}"
|
|
|
|
- name: Check testenvs output
|
|
block:
|
|
- name: Create tempfile to verify testenvs ran
|
|
tempfile:
|
|
register: ALL_tempfile
|
|
|
|
- name: Run tox with ALL
|
|
include_role:
|
|
name: tox
|
|
vars:
|
|
zuul_work_dir: "{{ zuul.project.src_dir }}/test-playbooks/python/"
|
|
tox_install_siblings: false
|
|
tox_extra_args: "-- {{ ALL_tempfile.path }}"
|
|
tox_envlist: 'ALL'
|
|
always:
|
|
- name: Make sure magic lines are present
|
|
loop:
|
|
- linters
|
|
- non-default
|
|
lineinfile:
|
|
path: "{{ ALL_tempfile.path }}"
|
|
line: "{{ item }}"
|
|
check_mode: true
|
|
register: ALL_status
|
|
failed_when: ALL_status is changed
|
|
|
|
- name: Move test-playbooks/python/tox.ini to test-playbooks/python/foo.ini
|
|
# Tox 4 appears to have trouble when there is a tox.ini in the current
|
|
# dir and you run it with -c pointing at another file. Work around this
|
|
# to test the use of -c by moving the tox.ini to another location
|
|
# and -c'ing against that in the next task.
|
|
command: mv tox.ini foo.ini
|
|
args:
|
|
chdir: "{{ zuul.project.src_dir }}/test-playbooks/python/"
|
|
|
|
- name: Run tox against a specific config file
|
|
include_role:
|
|
name: tox
|
|
vars:
|
|
zuul_work_dir: "{{ zuul.project.src_dir }}/test-playbooks/python/"
|
|
# Make sure the tox_config_file option works
|
|
tox_config_file: foo.ini
|
|
tox_envlist: 'foo'
|
|
# Make sure we test with verbose output even if the default changes
|
|
tox_extra_args: '-vv'
|