|
3 | 3 | ansible.builtin.file: |
4 | 4 | path: "{{ runner_dir }}" |
5 | 5 | state: directory |
6 | | - mode: '0755' |
| 6 | + mode: "0755" |
7 | 7 | owner: "{{ runner_user_id.stdout }}" |
8 | 8 | group: "{{ runner_user_group_id.stdout }}" |
9 | 9 |
|
|
26 | 26 | dest: "{{ runner_dir }}/" |
27 | 27 | owner: "{{ runner_user_id.stdout }}" |
28 | 28 | group: "{{ runner_user_group_id.stdout }}" |
29 | | - remote_src: yes |
30 | | - mode: '0755' |
| 29 | + remote_src: true |
| 30 | + mode: "0755" |
31 | 31 | environment: |
32 | 32 | PATH: /usr/local/bin:/opt/homebrew/bin/:{{ ansible_env.HOME }}/bin:{{ ansible_env.PATH }} |
33 | 33 | when: runner_version not in runner_installed.stdout or reinstall_runner |
|
37 | 37 | path: "{{ runner_dir }}/.env" |
38 | 38 | block: "{{ custom_env }}" |
39 | 39 | owner: "{{ runner_user }}" |
40 | | - create: yes |
41 | | - mode: '0755' |
| 40 | + create: true |
| 41 | + mode: "0755" |
42 | 42 | marker_begin: "# BEGIN ANSIBLE MANAGED BLOCK" |
43 | 43 | marker_end: "# END ANSIBLE MANAGED BLOCK" |
44 | 44 | when: custom_env is defined |
|
51 | 51 | - name: Set complete GitHub url for repo runner |
52 | 52 | ansible.builtin.set_fact: |
53 | 53 | github_full_url: "{{ github_url }}/{{ github_owner | default(github_account) }}/{{ github_repo }}" |
54 | | - when: not runner_org |
| 54 | + when: not runner_org and not github_enterprise |
55 | 55 |
|
56 | 56 | - name: Set complete GitHub url for org runner |
57 | 57 | ansible.builtin.set_fact: |
58 | 58 | github_full_url: "{{ github_url }}/{{ github_owner | default(github_account) }}" |
59 | | - when: runner_org | bool |
| 59 | + when: runner_org | bool and not github_enterprise |
| 60 | + |
| 61 | +- name: Set complete GitHub url for enterprise runner |
| 62 | + ansible.builtin.set_fact: |
| 63 | + github_full_url: "{{ github_url }}/enterprises/{{ github_enterprise }}" |
| 64 | + when: github_enterprise |
60 | 65 |
|
61 | 66 | - name: Register runner # noqa no-changed-when |
62 | 67 | environment: |
|
72 | 77 | {{ runner_extra_config_args }}" |
73 | 78 | args: |
74 | 79 | chdir: "{{ runner_dir }}" |
| 80 | + changed_when: true |
75 | 81 | become_user: "{{ runner_user }}" |
76 | 82 | no_log: "{{ hide_sensitive_logs | bool }}" |
77 | 83 | when: runner_name not in registered_runners.json.runners|map(attribute='name')|list |
|
90 | 96 | --replace" |
91 | 97 | args: |
92 | 98 | chdir: "{{ runner_dir }}" |
| 99 | + changed_when: true |
93 | 100 | become_user: "{{ runner_user }}" |
94 | 101 | no_log: "{{ hide_sensitive_logs | bool }}" |
95 | | - when: runner_name in registered_runners.json.runners|map(attribute='name')|list and reinstall_runner and not runner_org |
| 102 | + when: > |
| 103 | + runner_name in registered_runners.json.runners|map(attribute='name')|list and |
| 104 | + reinstall_runner and |
| 105 | + not runner_org |
96 | 106 |
|
97 | 107 | - name: Install service # noqa no-changed-when |
98 | 108 | ansible.builtin.command: "./svc.sh install {{ runner_user }}" |
99 | 109 | args: |
100 | 110 | chdir: "{{ runner_dir }}" |
| 111 | + changed_when: true |
101 | 112 | become: "{{ 'false' if ansible_system == 'Darwin' else 'true' }}" |
102 | 113 | when: not runner_service_file_path.stat.exists |
103 | 114 |
|
|
112 | 123 | chdir: "{{ runner_dir }}" |
113 | 124 | no_log: "{{ hide_sensitive_logs | bool }}" |
114 | 125 | ignore_errors: "{{ ansible_check_mode }}" |
115 | | - when: |
116 | | - - ansible_system != 'Darwin' |
117 | | - - runner_state|lower == "started" |
118 | | - - ansible_facts.services[(runner_service.content | b64decode) | trim ]['state'] != 'running' |
| 126 | + changed_when: true |
| 127 | + when: > |
| 128 | + ansible_system != 'Darwin' and |
| 129 | + runner_state|lower == "started" and |
| 130 | + ansible_facts.services[(runner_service.content | b64decode) | trim ]['state'] != 'running' |
119 | 131 |
|
120 | 132 | - name: START and enable Github Actions Runner service (macOS) # TODO: Idempotence |
121 | 133 | ansible.builtin.command: "./svc.sh start" # noqa no-changed-when |
|
124 | 136 | become: false |
125 | 137 | no_log: "{{ hide_sensitive_logs | bool }}" |
126 | 138 | ignore_errors: "{{ ansible_check_mode }}" |
| 139 | + changed_when: true |
127 | 140 | when: ansible_system == 'Darwin' and runner_state|lower |
128 | 141 |
|
129 | 142 | - name: STOP and disable Github Actions Runner service # noqa no-changed-when |
130 | 143 | ansible.builtin.command: "./svc.sh stop" |
131 | 144 | args: |
132 | 145 | chdir: "{{ runner_dir }}" |
| 146 | + changed_when: true |
133 | 147 | become: "{{ 'false' if ansible_distribution == 'MacOS' else 'true' }}" |
134 | 148 | no_log: "{{ hide_sensitive_logs | bool }}" |
135 | 149 | ignore_errors: "{{ ansible_check_mode }}" |
136 | 150 | when: runner_state|lower == "stopped" |
137 | 151 |
|
138 | 152 | - name: Version changed - RESTART Github Actions Runner service |
139 | | - ansible.builtin.shell: # noqa no-changed-when |
140 | | - cmd: | |
141 | | - ./svc.sh stop |
142 | | - sleep 5 |
143 | | - ./svc.sh start |
| 153 | + ansible.builtin.command: "./svc.sh stop && sleep 5 && ./svc.sh start" |
144 | 154 | args: |
145 | 155 | chdir: "{{ runner_dir }}" |
| 156 | + changed_when: true |
146 | 157 | become: "{{ 'false' if ansible_system == 'Darwin' else 'true' }}" |
147 | 158 | no_log: "{{ hide_sensitive_logs | bool }}" |
148 | 159 | ignore_errors: "{{ ansible_check_mode }}" |
|
0 commit comments