|
1 | 1 | --- |
2 | 2 | - name: "Load OS variables" |
3 | | - include_vars: "{{ ansible_os_family }}.yml" |
| 3 | + ansible.builtin.include_vars: "{{ ansible_os_family }}.yml" |
4 | 4 |
|
5 | 5 | - name: "install required packages" |
6 | | - package: |
| 6 | + ansible.builtin.package: |
7 | 7 | name: "{{ bats_packages }}" |
8 | 8 | state: present |
9 | 9 |
|
10 | 10 | - name: "Install bats from package" |
11 | | - package: |
| 11 | + ansible.builtin.package: |
12 | 12 | name: "bats" |
13 | 13 | state: present |
14 | 14 | ignore_errors: yes |
15 | 15 |
|
16 | 16 | - name: "Get /usr/bin/bats stat" |
17 | | - stat: |
| 17 | + ansible.builtin.stat: |
18 | 18 | path: "/usr/bin/bats" |
19 | 19 | register: bats_bin |
20 | 20 |
|
21 | 21 | - name: "Clone bats" |
22 | | - git: |
| 22 | + ansible.builtin.git: |
23 | 23 | repo: "https://github.com/sstephenson/bats.git" |
24 | 24 | dest: "{{ bats_git_dir }}" |
25 | 25 | when: not bats_bin.stat.exists |
26 | 26 |
|
27 | 27 | - name: "Install bats" |
28 | | - shell: "{{ bats_git_dir }}/install.sh /usr" |
| 28 | + ansible.builtin.shell: "{{ bats_git_dir }}/install.sh /usr" |
29 | 29 | args: |
30 | 30 | creates: "/usr/bin/bats" |
31 | 31 |
|
32 | 32 | - name: "Clone forklift" |
33 | | - git: |
| 33 | + ansible.builtin.git: |
34 | 34 | repo: "{{ bats_forklift_repo }}" |
35 | 35 | dest: "{{ bats_forklift_dir }}" |
36 | 36 | update: "{{ bats_update_forklift }}" |
37 | 37 | version: "{{ bats_forklift_version }}" |
38 | 38 |
|
39 | 39 | - name: "Bats output directory" |
40 | | - file: |
| 40 | + ansible.builtin.file: |
41 | 41 | state: "directory" |
42 | 42 | path: "{{ bats_output_dir }}" |
43 | 43 |
|
44 | 44 | - block: |
45 | 45 | - name: "Run bats" |
46 | | - shell: "bats --tap {{ item }} > {{ bats_output_dir }}/{{ item }}.tap" |
| 46 | + ansible.builtin.shell: "bats --tap {{ item }} > {{ bats_output_dir }}/{{ item }}.tap" |
47 | 47 | args: |
48 | 48 | chdir: "{{ bats_forklift_dir }}/bats" |
49 | 49 | with_items: |
|
56 | 56 | environment: "{{ bats_environment }}" |
57 | 57 |
|
58 | 58 | - name: "Read results" |
59 | | - shell: "cat {{ bats_output_dir }}/{{ item }}.tap" |
| 59 | + ansible.builtin.shell: "cat {{ bats_output_dir }}/{{ item }}.tap" |
60 | 60 | register: "test_results" |
61 | 61 | with_items: |
62 | 62 | - "{{ bats_setup | select() | list }}" |
|
65 | 65 | - "{{ bats_teardown | select() | list }}" |
66 | 66 |
|
67 | 67 | - name: "Output test results" |
68 | | - debug: |
| 68 | + ansible.builtin.debug: |
69 | 69 | msg: "{{ test_results.results | join('\n', attribute='stdout') }}" |
70 | 70 |
|
71 | | - - include_tasks: 'bats_fetch_results.yml' |
| 71 | + - ansible.builtin.include_tasks: 'bats_fetch_results.yml' |
72 | 72 | when: bats_fetch_results |
73 | 73 |
|
74 | 74 | - name: "Fail if tests didn't pass" |
75 | | - fail: |
| 75 | + ansible.builtin.fail: |
76 | 76 | msg: "Test failed, please see {{ bats_output_dir }}/ for more information" |
77 | 77 | when: item.rc != 0 |
78 | 78 | with_items: "{{ test_output.results }}" |
|
0 commit comments