zuul-jobs/roles/fetch-output/tasks/main.yaml

41 lines
1.0 KiB
YAML

- name: Set log path for multiple nodes
set_fact:
log_path: "{{ zuul.executor.log_root }}/{{ inventory_hostname }}"
when: groups['all'] | length > 1
- name: Set log path for single node
set_fact:
log_path: "{{ zuul.executor.log_root }}"
when: log_path is not defined
- name: Ensure local output dirs
delegate_to: localhost
file:
path: "{{ zj_output_dir }}"
state: directory
mode: 0755
with_items:
- "{{ log_path }}"
- "{{ zuul.executor.work_root }}/artifacts"
- "{{ zuul.executor.work_root }}/docs"
loop_control:
loop_var: zj_output_dir
- name: Collect logs, artifacts and docs
synchronize:
dest: "{{ zj_output.dest }}/"
mode: pull
src: "{{ zuul_output_dir }}/{{ zj_output.src }}/"
verify_host: true
owner: false
group: false
loop:
- dest: "{{ log_path }}"
src: "logs"
- dest: "{{ zuul.executor.work_root }}/artifacts"
src: "artifacts"
- dest: "{{ zuul.executor.work_root }}/docs"
src: "docs"
loop_control:
loop_var: zj_output