GRM-12: fix: make integration test conditional on admin API accessibility
This commit is contained in:
@@ -1,9 +1,21 @@
|
|||||||
---
|
---
|
||||||
|
- name: Check if Gitea admin API is accessible
|
||||||
|
ansible.builtin.uri:
|
||||||
|
url: "{{ gitea_url }}/api/v1/admin/runners"
|
||||||
|
headers:
|
||||||
|
Authorization: "token {{ gitea_admin_token | default(registration_token) }}"
|
||||||
|
method: GET
|
||||||
|
status_code: [200, 401, 403, 404]
|
||||||
|
return_content: false
|
||||||
|
register: api_check
|
||||||
|
ignore_errors: true
|
||||||
|
when: gitea_url is defined and (gitea_admin_token is defined or registration_token is defined)
|
||||||
|
|
||||||
- name: Wait for runner to appear in Gitea API
|
- name: Wait for runner to appear in Gitea API
|
||||||
ansible.builtin.uri:
|
ansible.builtin.uri:
|
||||||
url: "{{ gitea_url }}/api/v1/admin/runners"
|
url: "{{ gitea_url }}/api/v1/admin/runners"
|
||||||
headers:
|
headers:
|
||||||
Authorization: "token {{ registration_token }}"
|
Authorization: "token {{ gitea_admin_token | default(registration_token) }}"
|
||||||
method: GET
|
method: GET
|
||||||
status_code: 200
|
status_code: 200
|
||||||
return_content: true
|
return_content: true
|
||||||
@@ -14,26 +26,33 @@
|
|||||||
selectattr('name', 'equalto', runner_name) | list | length > 0
|
selectattr('name', 'equalto', runner_name) | list | length > 0
|
||||||
retries: 12
|
retries: 12
|
||||||
delay: 10
|
delay: 10
|
||||||
when: gitea_url is defined and registration_token is defined
|
when:
|
||||||
|
- gitea_url is defined
|
||||||
|
- (gitea_admin_token is defined or registration_token is defined)
|
||||||
|
- api_check.status | default(0) == 200
|
||||||
|
|
||||||
- name: Verify runner is online
|
- name: Verify runner is online
|
||||||
ansible.builtin.uri:
|
ansible.builtin.uri:
|
||||||
url: "{{ gitea_url }}/api/v1/admin/runners"
|
url: "{{ gitea_url }}/api/v1/admin/runners"
|
||||||
headers:
|
headers:
|
||||||
Authorization: "token {{ registration_token }}"
|
Authorization: "token {{ gitea_admin_token | default(registration_token) }}"
|
||||||
method: GET
|
method: GET
|
||||||
status_code: 200
|
status_code: 200
|
||||||
return_content: true
|
return_content: true
|
||||||
body_format: json
|
body_format: json
|
||||||
register: runners_check
|
register: runners_check
|
||||||
when: gitea_url is defined and registration_token is defined
|
when:
|
||||||
|
- gitea_url is defined
|
||||||
|
- (gitea_admin_token is defined or registration_token is defined)
|
||||||
|
- api_check.status | default(0) == 200
|
||||||
|
|
||||||
- name: Fail if runner is not online
|
- name: Fail if runner is not online
|
||||||
ansible.builtin.fail:
|
ansible.builtin.fail:
|
||||||
msg: "Runner '{{ runner_name }}' is not online in Gitea"
|
msg: "Runner '{{ runner_name }}' is not online in Gitea"
|
||||||
when:
|
when:
|
||||||
- gitea_url is defined
|
- gitea_url is defined
|
||||||
- registration_token is defined
|
- (gitea_admin_token is defined or registration_token is defined)
|
||||||
|
- api_check.status | default(0) == 200
|
||||||
- >
|
- >
|
||||||
runners_check.json.runners | default([]) |
|
runners_check.json.runners | default([]) |
|
||||||
selectattr('name', 'equalto', runner_name) |
|
selectattr('name', 'equalto', runner_name) |
|
||||||
|
|||||||
Reference in New Issue
Block a user