a32119249c
Change-Id: I49638ab7949804fc967e337fa5ce21d2a3dc9d49
81 lines
2.1 KiB
YAML
81 lines
2.1 KiB
YAML
- name: Require tox_envlist variable
|
|
fail:
|
|
msg: tox_envlist is required for this role
|
|
when: tox_envlist is not defined
|
|
|
|
- name: Check to see if the constraints file exists
|
|
stat:
|
|
path: "{{ tox_constraints_file }}"
|
|
get_checksum: false
|
|
get_mime: false
|
|
get_md5: false
|
|
register: stat_results
|
|
when: tox_constraints_file is defined
|
|
|
|
- name: Fail if constraints file is missing
|
|
when: tox_constraints_file is defined and not stat_results.stat.exists
|
|
fail:
|
|
msg: tox_constraints_file is defined but was not found
|
|
|
|
- name: Record file location
|
|
set_fact:
|
|
tox_constraints_env:
|
|
TOX_CONSTRAINTS_FILE: "{{ tox_constraints_file }}"
|
|
# Backward compatibility, to be removed
|
|
UPPER_CONSTRAINTS_FILE: "{{ tox_constraints_file }}"
|
|
when: tox_constraints_file is defined
|
|
|
|
- name: Install tox siblings
|
|
include: siblings.yaml
|
|
when: tox_install_siblings
|
|
|
|
- name: Emit tox command
|
|
debug:
|
|
msg: >-
|
|
{{ tox_executable }}
|
|
{% if tox_envlist is defined and tox_envlist %}
|
|
-e{{ tox_envlist }}
|
|
{% endif %}
|
|
{{ tox_extra_args }}
|
|
|
|
- name: Run tox
|
|
args:
|
|
chdir: "{{ zuul_work_dir }}"
|
|
environment: "{{ tox_environment|combine(tox_constraints_env|default({})) }}"
|
|
command: >-
|
|
{{ tox_executable }}
|
|
{% if tox_envlist is defined and tox_envlist %}
|
|
-e{{ tox_envlist }}
|
|
{% endif %}
|
|
{{ tox_extra_args }}
|
|
# Note: This intentionally ignores errors to give us the chance to look
|
|
# for file comments in the stdout. In case of an error this will be returned
|
|
# in a later task.
|
|
ignore_errors: yes
|
|
register: tox_output
|
|
|
|
- name: Look for output
|
|
tox_parse_output:
|
|
tox_output: '{{ tox_output.stdout }}'
|
|
tox_envlist: '{{ tox_envlist }}'
|
|
workdir: '{{ zuul_work_dir }}'
|
|
when: tox_inline_comments
|
|
register: file_comments
|
|
ignore_errors: yes
|
|
|
|
- name: Return file comments to Zuul
|
|
when:
|
|
- file_comments
|
|
- file_comments.file_comments
|
|
delegate_to: localhost
|
|
zuul_return:
|
|
data:
|
|
zuul:
|
|
file_comments: '{{ file_comments.file_comments }}'
|
|
ignore_errors: yes
|
|
|
|
- name: Return tox status
|
|
fail:
|
|
msg: 'tox exited with return code {{ tox_output.rc }}'
|
|
when: tox_output.rc != 0
|