Skip to content

Commit 84298f5

Browse files
author
MAHDTech
authored
Fix callbacks and destroy (#72)
- Default to __meta__ var names - Use true for boolean - 🤦 Undo incorrect variable change - Build user_remove list individually - Standardize on using 'identities' var
1 parent 316a292 commit 84298f5

File tree

5 files changed

+38
-36
lines changed

5 files changed

+38
-36
lines changed
Lines changed: 9 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -1,19 +1,16 @@
11
---
2+
23
- name: "Read User Management Job: {{ job.path | basename }}"
34
include_vars:
45
file: "{{ job.path }}"
56

6-
- name: "Display User Management Job Details"
7-
debug:
8-
msg:
9-
- "Adding the follow user details to the removal list"
10-
- "User ID: {{ uuid }}"
11-
- "First Name: {{ first_name }}"
12-
- "Last Name: {{ last_name }}"
13-
- "Email: {{ email }}"
14-
- "Role: {{ role }}"
15-
- "State: absent"
16-
177
- name: "Add User to removal queue"
188
set_fact:
19-
users_remove: "{{ (users_remove | default([])) + [ { 'first_name': (first_name | trim), 'last_name': (last_name | trim), 'email': (email | trim) , 'user_name': (email.split('@')[0] | trim), 'state': 'absent' } ] }}"
9+
users_remove: "{{ (users_remove | default([])) + [ user_info ] }}"
10+
vars:
11+
user_info:
12+
first_name: "{{ first_name | trim }}"
13+
last_name: "{{ last_name | trim }}"
14+
email: "{{ email | trim }}"
15+
user_name: "{{ email.split('@')[0] | trim }}"
16+
state: "absent"

manage-participants/completion_callback.yml

Lines changed: 6 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -7,8 +7,11 @@
77
gather_facts: false
88
hosts: localhost
99
vars:
10-
agnosticd_callback_url: "{{ agnosticd_callback_url | default('') }}"
11-
agnosticd_callback_token: "{{ agnosticd_callback_token | default('') }}"
10+
# default __meta__ to prevent errors on older ansible versions
11+
__meta__:
12+
callback: {}
13+
agnosticd_callback_url: "{{ __meta__.callback.url | default('') }}"
14+
agnosticd_callback_token: "{{ __meta__.callback.token | default('') }}"
1215
tasks:
1316

1417
- name: Skip completion callback
@@ -51,6 +54,6 @@
5154
{%- endif -%}
5255
headers:
5356
Authorization: Bearer {{ agnosticd_callback_token }}
54-
validate_certs: "{{ validate_tower_certs | default(yes) }}"
57+
validate_certs: "{{ validate_tower_certs | default(true) }}"
5558
# Best effort
5659
ignore_errors: true

manage-participants/destroy.yml

Lines changed: 14 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -15,19 +15,13 @@
1515
when:
1616
- ipa_host is defined
1717

18-
- hosts: identity-hosts
19-
name: Process Identity removal list
20-
tasks:
21-
22-
- name: Create empty removal list
18+
- name: Create empty user removal list
2319
set_fact:
24-
lodestar_identities_remove:
25-
users: []
20+
users_remove: []
2621

27-
- name: Add users to removal list
22+
- name: Add all users to removal list
2823
set_fact:
29-
lodestar_identities_remove:
30-
users: "{{ lodestar_identities_remove.users + [ user_info ] }}"
24+
users_remove: "{{ users_remove + [ user_info ] }}"
3125
vars:
3226
user_info:
3327
first_name: "{{ identity.first_name | trim }}"
@@ -42,15 +36,20 @@
4236
- lodestar_identities.users is defined
4337
- lodestar_identities.users != []
4438

45-
- name: Remove all participants from IdM
39+
- name: Update user removal list
40+
set_fact:
41+
lodestar_identities_destroy:
42+
users: "{{ users_remove }}"
43+
44+
- name: Remove participants from IdM
4645
import_playbook: "../../requirements_roles/infra-ansible/playbooks/manage-identities/manage-idm-identities.yml"
4746
vars:
48-
identities: "{{ lodestar_identities }}"
47+
identities: "{{ lodestar_identities_destroy }}"
4948
when:
50-
- lodestar_identities.users is defined
51-
- lodestar_identities.users != []
49+
- lodestar_identities_destroy.users is defined
50+
- lodestar_identities_destroy.users != []
5251

53-
- name: Ensure queue is cleared
52+
- name: Remove participants from queue
5453
import_playbook: "process_queue.yml"
5554
when:
5655
- lodestar_identities_remove.users is defined

manage-participants/main.yml

Lines changed: 8 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
---
22

33
- hosts: localhost
4-
name: Verify Identity Provider and setup dependencies
4+
name: Verify Identity Provider
55
tasks:
66

77
- name: Wait for IdM to be responsive
@@ -25,6 +25,8 @@
2525

2626
- name: Remove participants from queue
2727
import_playbook: "process_queue.yml"
28+
vars:
29+
identities: "{{ lodestar_identities_remove }}"
2830
when:
2931
- lodestar_identities_remove.users is defined
3032
- lodestar_identities_remove.users != []
@@ -33,9 +35,14 @@
3335
import_playbook: "../../requirements_roles/infra-ansible/playbooks/manage-identities/manage-idm-identities.yml"
3436
vars:
3537
identities: "{{ lodestar_identities }}"
38+
when:
39+
- lodestar_identities.users is defined
40+
- lodestar_identities.users != []
3641

3742
- name: Mail Users
3843
import_playbook: mail_users.yml
44+
vars:
45+
identities: "{{ lodestar_identities }}"
3946

4047
- name: Update Anarchy with status
4148
import_playbook: completion_callback.yml

manage-participants/process_queue.yml

Lines changed: 1 addition & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -20,7 +20,7 @@
2020
set_fact:
2121
emails_to_match: "{{ (emails_to_match | default([])) + [ user.email ] }}"
2222
loop:
23-
"{{ lodestar_identities_remove.users | flatten(levels=1) }}"
23+
"{{ identities.users | flatten(levels=1) }}"
2424
loop_control:
2525
index_var: index
2626
loop_var: user
@@ -58,7 +58,3 @@
5858
- repository is defined
5959
- files_to_remove is defined
6060
- files_to_remove != []
61-
62-
- name: Pre-populate identities
63-
set_fact:
64-
identities: "{{ lodestar_identities }}"

0 commit comments

Comments
 (0)