- name: List containers command: "{{ container_command }} ps -a --format '{{ '{{ .Names }}' }}'" register: docker_containers ignore_errors: true - name: Create container log dir file: path: "{{ ansible_user_dir }}/zuul-output/logs/{{ container_command }}" state: directory - name: Save container logs loop: "{{ docker_containers.stdout_lines | default([]) }}" # We can't use the default 'item' because roles may be used in # higher level loops and 'item' could conflict in that case. loop_control: loop_var: zj_container_name shell: "{{ container_command }} logs {{ zj_container_name }} &> {{ ansible_user_dir }}/zuul-output/logs/{{ container_command }}/{{ zj_container_name }}.txt" args: executable: /bin/bash ignore_errors: true - name: Open container logs permissions file: dest: "{{ ansible_user_dir }}/zuul-output/logs/{{ container_command }}" mode: u=rwX,g=rX,o=rX recurse: yes