]>
Commit | Line | Data |
---|---|---|
8ddcfb80 | 1 | --- |
d58fd115 | 2 | - name: Set scope variables |
8ddcfb80 | 3 | set_fact: |
d58fd115 | 4 | rundeck_keys_base_path: "{{ rundeck_keys_scoped_by_project | default(true) | ternary('project/' + rundeck_project + '/' + rundeck_keys_group_path, rundeck_keys_group_path) }}" |
8ddcfb80 IB |
5 | vars: |
6 | group_name: "{{ rundeck_jobs_group | default('') }}" | |
d58fd115 | 7 | rundeck_keys_group_path: "{{ rundeck_keys_scoped_by_group | default((group_name|length) > 0) | ternary(group_name, '') }}" |
8ddcfb80 | 8 | |
d58fd115 IB |
9 | - name: Include rundeck key |
10 | include_tasks: key.yml | |
11 | with_items: "{{ rundeck_jobs_keys }}" | |
12 | ||
13 | - name: Get all stored keys | |
14 | script: | |
15 | cmd: "{{ role_path }}/files/fetch_keys.sh {{ rundeck_api_url }}/{{ rundeck_api_version }} {{ rundeck_api_token }} keys/{{ rundeck_keys_base_path }}" | |
16 | register: rundeck_existing_keys | |
17 | when: rundeck_remove_missing_keys | |
8ddcfb80 | 18 | |
d58fd115 | 19 | - name: "Prepare list of keys to remove" |
8ddcfb80 | 20 | set_fact: |
d58fd115 IB |
21 | rundeck_existing_keys: "{{ rundeck_existing_keys.stdout_lines | list }}" |
22 | rundeck_known_keys: "{{ rundeck_jobs_keys | map(attribute='path') | list }}" | |
23 | when: rundeck_remove_missing_keys | |
8ddcfb80 | 24 | |
d58fd115 | 25 | - name: "Remove jobs not declared" |
8ddcfb80 | 26 | uri: |
d58fd115 IB |
27 | url: "{{ rundeck_api_url }}/{{ rundeck_api_version }}/storage/keys/{{ rundeck_keys_base_path }}/{{ item }}" |
28 | method: DELETE | |
8ddcfb80 IB |
29 | headers: |
30 | Accept: application/json | |
8ddcfb80 | 31 | X-Rundeck-Auth-Token: "{{ rundeck_api_token }}" |
d58fd115 IB |
32 | status_code: [204, 404] |
33 | with_items: "{{ rundeck_existing_keys | difference(rundeck_known_keys) }}" | |
34 | when: rundeck_remove_missing_keys |