
The previous change added a bunch of tox v4 compatiblity, now we switch to as our default. This should only happen after people have had sufficient time to add tox v4 compatibility or manually pin back to <4 in their projects. Change-Id: I16742fb933dba2162a73d532e1a9613af69021aa
70 lines
1.9 KiB
YAML
70 lines
1.9 KiB
YAML
- hosts: all
|
|
pre_tasks:
|
|
# Run ensure-output-dirs now as it is not performed speculatively
|
|
- import_role:
|
|
name: ensure-output-dirs
|
|
|
|
- name: Simplify tox config
|
|
copy:
|
|
content: "{{ item.content }}"
|
|
dest: "{{ zuul.project.src_dir }}/{{ item.dest }}"
|
|
with_items:
|
|
- content: |
|
|
[testenv]
|
|
sitepackages = True
|
|
usedevelop = True
|
|
|
|
[testenv:venv]
|
|
commands = python -c 'exit(0)'
|
|
dest: tox.ini
|
|
- content: |
|
|
import setuptools
|
|
setuptools.setup(py_modules=[])
|
|
dest: setup.py
|
|
- content: ""
|
|
dest: setup.cfg
|
|
|
|
- name: Generate tox results
|
|
include_role:
|
|
name: "{{ item }}"
|
|
with_items:
|
|
- ensure-tox
|
|
- ensure-python
|
|
- tox
|
|
|
|
tasks:
|
|
- import_role:
|
|
name: fetch-tox-output
|
|
vars:
|
|
tox_envlist: "ALL"
|
|
|
|
- block:
|
|
- name: Undo the log_path fact set by fetch-javascript-output
|
|
set_fact:
|
|
log_path: "{{ zuul.executor.log_root }}/{{ inventory_hostname }}"
|
|
when: groups['all'] | length > 1
|
|
|
|
- name: Undo the log_path fact set log path for single node
|
|
set_fact:
|
|
log_path: "{{ zuul.executor.log_root }}"
|
|
when: groups['all'] | length == 1
|
|
|
|
- import_role:
|
|
name: fetch-output
|
|
when: zuul_use_fetch_output
|
|
|
|
post_tasks:
|
|
- name: Check for artifact on the test instance
|
|
stat:
|
|
path: "{{ ansible_user_dir }}/zuul-output/logs/tox/venv/1-install_package.log"
|
|
register: _test_artifact
|
|
failed_when: not _test_artifact.stat.exists
|
|
when: zuul_use_fetch_output
|
|
|
|
- name: Check for artifact on the executor
|
|
stat:
|
|
path: "{{ zuul.executor.log_root }}/tox/venv/1-install_package.log"
|
|
delegate_to: localhost
|
|
register: _executor_artifact
|
|
failed_when: not _executor_artifact.stat.exists
|