d8ec17cab0
The get_md5 parameter was removed with ansible 9. https://docs.ansible.com/ansible/latest/porting_guides/porting_guide_9.html#id44 If it is being used the following error appears: "Unsupported parameters for (stat) module: get_md5..." Unrelated, but also blocking testing/merging of this change, the Ansible version specs for older python versions is loosened to allow installing older versions of Ansible on test nodes (like focal) that have older pythons that are unsupported by newer Ansible. Change-Id: I99dd4f16fde659d84eb3dfa191557b3d9508b0fb
100 lines
3.0 KiB
YAML
100 lines
3.0 KiB
YAML
- name: Check to see if the constraints file exists
|
|
stat:
|
|
path: "{{ nox_constraints_file }}"
|
|
get_checksum: false
|
|
get_mime: false
|
|
register: stat_results
|
|
when: nox_constraints_file is defined
|
|
|
|
- name: Fail if constraints file is missing
|
|
when: nox_constraints_file is defined and not stat_results.stat.exists
|
|
fail:
|
|
msg: nox_constraints_file is defined but was not found
|
|
|
|
- name: Record constraints file location
|
|
set_fact:
|
|
nox_constraints_env:
|
|
NOX_CONSTRAINTS_FILE: "{{ nox_constraints_file }}"
|
|
when: nox_constraints_file is defined
|
|
|
|
- name: Install nox siblings
|
|
include_tasks: siblings.yaml
|
|
when: nox_install_siblings
|
|
|
|
- name: Emit nox command
|
|
debug:
|
|
msg: >-
|
|
{{ nox_executable }}
|
|
{% if nox_config_file is defined and nox_config_file %}
|
|
-f {{ nox_config_file }}
|
|
{% endif %}
|
|
{% if nox_session is defined and nox_session %}
|
|
-s {{ nox_session }}
|
|
{% endif %}
|
|
{% if nox_keyword is defined and nox_keyword %}
|
|
-k {{ nox_keyword }}
|
|
{% endif %}
|
|
{% if nox_tag is defined and nox_tag %}
|
|
-t {{ nox_tag }}
|
|
{% endif %}
|
|
{% if nox_force_python is defined and nox_force_python %}
|
|
--force-python {{ nox_force_python }}
|
|
{% endif %}
|
|
{% if nox_install_siblings %}
|
|
--reuse-existing-virtualenvs --no-install
|
|
{% endif %}
|
|
{{ nox_extra_args }}
|
|
|
|
- name: Run nox
|
|
block:
|
|
- name: Run nox
|
|
args:
|
|
chdir: "{{ zuul_work_dir }}"
|
|
environment: "{{ nox_environment | combine(nox_constraints_env | default({})) }}"
|
|
command: >-
|
|
{{ nox_executable }}
|
|
{% if nox_config_file is defined and nox_config_file %}
|
|
-f {{ nox_config_file }}
|
|
{% endif %}
|
|
{% if nox_session is defined and nox_session %}
|
|
-s {{ nox_session }}
|
|
{% endif %}
|
|
{% if nox_keyword is defined and nox_keyword %}
|
|
-k {{ nox_keyword }}
|
|
{% endif %}
|
|
{% if nox_tag is defined and nox_tag %}
|
|
-t {{ nox_tag }}
|
|
{% endif %}
|
|
{% if nox_force_python is defined and nox_force_python %}
|
|
--force-python {{ nox_force_python }}
|
|
{% endif %}
|
|
{% if nox_install_siblings %}
|
|
--reuse-existing-virtualenvs --no-install
|
|
{% endif %}
|
|
{{ nox_extra_args }}
|
|
register: nox_output
|
|
|
|
# Even though any test environment in nox failed we want to
|
|
# return file comments produced so always run this.
|
|
always:
|
|
- name: Look for output
|
|
tox_parse_output:
|
|
tox_output: '{{ nox_output.stdout }}'
|
|
tox_envlist: '{{ nox_session | default(nox_keyword) | default(nox_tag) }}'
|
|
workdir: '{{ zuul_work_dir }}'
|
|
when: nox_inline_comments
|
|
register: file_comments
|
|
failed_when: false
|
|
|
|
- name: Return file comments to Zuul
|
|
when:
|
|
- nox_inline_comments
|
|
- file_comments.file_comments is defined
|
|
- file_comments.file_comments
|
|
delegate_to: localhost
|
|
zuul_return:
|
|
data:
|
|
zuul:
|
|
file_comments: '{{ file_comments.file_comments }}'
|
|
failed_when: false
|