- hosts: all tasks: # Create unwritable /tmp/console-None.log # This ensures that no further task can write to it without failing. # A task trying to write to /tmp/console-None.log is considered broken # because zuul_log_id is missing. - name: Create unwritable /tmp/console-None.log file: path: /tmp/console-None.log state: touch mode: 0444 run_once: True - name: Start zuul_console daemon zuul_console: - name: Create first file copy: content: "command test one\n" dest: "{{ ansible_user_dir }}/command_test_file1" - name: Create second file copy: content: "command test two\n" dest: "{{ ansible_user_dir }}/command_test_file2" - name: Show contents of first file command: "cat {{ ansible_user_dir }}/command_test_file1" - name: Show contents of second file # We use a sleep here to ensure that we log even after # a period of no logging. shell: "sleep 6 && cat {{ ansible_user_dir }}/command_test_file2" # Test a task with a handler - name: Run a command with notifying a handler command: /bin/true notify: test handler # Test cleanup task - name: Block with cleanup block: - name: Run a command command: /bin/false rescue: - name: Rescue task command: echo "This is a rescue task" always: - name: Always task command: echo "This is an always task" handlers: - name: test handler command: echo "This is a handler" - hosts: all strategy: free tasks: - name: Command task 1 within free strategy command: echo "First free task" - name: Command task 2 within free strategy command: echo "Second free task" # Test a role that has an include_role - hosts: all strategy: linear roles: - include-a-role - hosts: compute1 tasks: - name: Single command command: "echo single" # Test commands within loops - name: Command with loop shell: | echo {{ item }} with_items: - item_in_loop1 - item_in_loop2 - name: Failing command with loop shell: | echo {{ item }} exit 1 with_items: - failed_in_loop1 - failed_in_loop2 ignore_errors: True - hosts: all tasks: - name: Remote shell task with python exception command: echo foo args: chdir: /remote-shelltask/somewhere/that/does/not/exist failed_when: false - hosts: localhost tasks: - name: Local shell task with python exception command: echo foo args: chdir: /local-shelltask/somewhere/that/does/not/exist failed_when: false