From e5c1facb017e27eb0954de8762b9ea010f283111 Mon Sep 17 00:00:00 2001 From: Judd Maltin Date: Sat, 11 Jan 2025 19:11:48 -0500 Subject: [PATCH 1/6] add more fun debugging --- .../tasks/workload.yml | 15 +++++++++++++++ 1 file changed, 15 insertions(+) diff --git a/ansible/roles_ocp_workloads/ocp4_workload_gitops_bootstrap/tasks/workload.yml b/ansible/roles_ocp_workloads/ocp4_workload_gitops_bootstrap/tasks/workload.yml index 99844542dbb..7ab9ed5bb1d 100644 --- a/ansible/roles_ocp_workloads/ocp4_workload_gitops_bootstrap/tasks/workload.yml +++ b/ansible/roles_ocp_workloads/ocp4_workload_gitops_bootstrap/tasks/workload.yml @@ -47,6 +47,17 @@ - argocd_bootstrap.resources[0].status.sync.status == "Synced" ignore_errors: "{{ ocp4_workload_gitops_bootstrap_health_ignore | bool }}" +- name: Pause for a minute while the bootstrap app deploys + ansible.builtin.pause: + seconds: 60 + +- name: Debug all applications with our label in any namespace + when: ocp4_workload_gitops_bootstrap_application_wait | bool + vars: + query: "[*].{App: metadata.name, Health: status.health.status, Sync: status.sync.status}" + ansible.builtin.debug: + msg: "{{ _all_apps.resources | json_query(query)}}" + - name: retrieve configmaps with the demo.redhat.com/userinfo label kubernetes.core.k8s_info: api_version: v1 @@ -54,9 +65,13 @@ label_selectors: - "demo.redhat.com/userinfo" register: cm_userinfo + tags: + - userdata_cm - name: save configmap userinfo in agnosticd_user_info agnosticd_user_info: data: >- {{ item.data | from_yaml }} loop: "{{ cm_userinfo.resources }}" + tags: + - userdata_cm From 285cf868f384857cb77053a24eb4c6abdb2038f9 Mon Sep 17 00:00:00 2001 From: Judd Maltin Date: Sun, 12 Jan 2025 15:21:15 -0500 Subject: [PATCH 2/6] merge configmap agnosticd_user_info data into agnosticd --- .../tasks/workload.yml | 36 +++++++++++++++---- 1 file changed, 29 insertions(+), 7 deletions(-) diff --git a/ansible/roles_ocp_workloads/ocp4_workload_gitops_bootstrap/tasks/workload.yml b/ansible/roles_ocp_workloads/ocp4_workload_gitops_bootstrap/tasks/workload.yml index 7ab9ed5bb1d..39f029a64f6 100644 --- a/ansible/roles_ocp_workloads/ocp4_workload_gitops_bootstrap/tasks/workload.yml +++ b/ansible/roles_ocp_workloads/ocp4_workload_gitops_bootstrap/tasks/workload.yml @@ -58,20 +58,42 @@ ansible.builtin.debug: msg: "{{ _all_apps.resources | json_query(query)}}" -- name: retrieve configmaps with the demo.redhat.com/userinfo label +- name: Retrieve configmaps with the demo.redhat.com/userinfo label kubernetes.core.k8s_info: api_version: v1 kind: ConfigMap label_selectors: - "demo.redhat.com/userinfo" register: cm_userinfo - tags: - - userdata_cm -- name: save configmap userinfo in agnosticd_user_info +- name: Add to agnosticd_user_info all data from configmaps except configmap.data.users_json data agnosticd_user_info: data: >- - {{ item.data | from_yaml }} + {{ item | dict2items | selectattr('key', 'ne', 'users_json') | items2dict }} + loop: "{{ cm_userinfo.resources | map(attribute='data') }}" + +- name: Prepare data_user_json to add to agnosticd_user_info + ansible.builtin.debug: + msg: "Prepare data_user_json to add to agnosticd_user_info" + +- name: Merge list of all users_json data from all configmaps that have data.users_json + set_fact: + data_users_json: "{{ data_users_json | default([]) | combine(item.data.users_json | from_json, recursive=True) }}" loop: "{{ cm_userinfo.resources }}" - tags: - - userdata_cm + when: item.data.users_json is defined + +- name: Debug merged data_users_json data + ansible.builtin.debug: + msg: "{{ data_users_json }}" + +- name: Add to agnosticd_user_info all configmap.data.users_json configmap data + agnosticd_user_info: + user: "{{ item.key }}" + data: + "{{ item.value }}" + loop: "{{ data_users_json | dict2items }}" + when: data_users_json is defined + +- name: Debug user_data + ansible.builtin.debug: + msg: "{{ lookup('agnosticd_user_data', '*') }}" From 53b369166d115f8f3ff496fe880a6b8fd667e3d0 Mon Sep 17 00:00:00 2001 From: Judd Maltin Date: Sun, 12 Jan 2025 19:41:47 -0500 Subject: [PATCH 3/6] forgot to data_users_json | from_json --- .../ocp4_workload_gitops_bootstrap/tasks/workload.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/ansible/roles_ocp_workloads/ocp4_workload_gitops_bootstrap/tasks/workload.yml b/ansible/roles_ocp_workloads/ocp4_workload_gitops_bootstrap/tasks/workload.yml index 39f029a64f6..6ffe3dd0e46 100644 --- a/ansible/roles_ocp_workloads/ocp4_workload_gitops_bootstrap/tasks/workload.yml +++ b/ansible/roles_ocp_workloads/ocp4_workload_gitops_bootstrap/tasks/workload.yml @@ -90,7 +90,7 @@ agnosticd_user_info: user: "{{ item.key }}" data: - "{{ item.value }}" + "{{ item.value | from_json }}" loop: "{{ data_users_json | dict2items }}" when: data_users_json is defined From 5370042c34baae98917924bc5f5802313489efcc Mon Sep 17 00:00:00 2001 From: Judd Maltin Date: Sun, 12 Jan 2025 19:57:53 -0500 Subject: [PATCH 4/6] remove extra 'users' when calling agnosticd_user_info --- .../ocp4_workload_gitops_bootstrap/tasks/workload.yml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/ansible/roles_ocp_workloads/ocp4_workload_gitops_bootstrap/tasks/workload.yml b/ansible/roles_ocp_workloads/ocp4_workload_gitops_bootstrap/tasks/workload.yml index 6ffe3dd0e46..55138c041dc 100644 --- a/ansible/roles_ocp_workloads/ocp4_workload_gitops_bootstrap/tasks/workload.yml +++ b/ansible/roles_ocp_workloads/ocp4_workload_gitops_bootstrap/tasks/workload.yml @@ -90,8 +90,8 @@ agnosticd_user_info: user: "{{ item.key }}" data: - "{{ item.value | from_json }}" - loop: "{{ data_users_json | dict2items }}" + "{{ item.value }}" + loop: "{{ data_users_json.users | dict2items }}" when: data_users_json is defined - name: Debug user_data From a65f6bab1b437c51bb97500bd66cbe68eeccc3ea Mon Sep 17 00:00:00 2001 From: Judd Maltin Date: Sun, 12 Jan 2025 21:27:19 -0500 Subject: [PATCH 5/6] add agnosticd_user_data to deployer_values --- .../ocp4_workload_gitops_bootstrap/defaults/main.yml | 2 ++ .../ocp4_workload_gitops_bootstrap/tasks/workload.yml | 8 ++++++++ 2 files changed, 10 insertions(+) diff --git a/ansible/roles_ocp_workloads/ocp4_workload_gitops_bootstrap/defaults/main.yml b/ansible/roles_ocp_workloads/ocp4_workload_gitops_bootstrap/defaults/main.yml index 0419ef5d3de..b8e7b0b35f5 100644 --- a/ansible/roles_ocp_workloads/ocp4_workload_gitops_bootstrap/defaults/main.yml +++ b/ansible/roles_ocp_workloads/ocp4_workload_gitops_bootstrap/defaults/main.yml @@ -13,3 +13,5 @@ ocp4_workload_gitops_bootstrap_helm_values: [] ocp4_workload_gitops_bootstrap_health_retries: 60 ocp4_workload_gitops_bootstrap_health_ignore: true + +ocp4_workload_gitops_bootstrap_userdata_in_helm_values: true diff --git a/ansible/roles_ocp_workloads/ocp4_workload_gitops_bootstrap/tasks/workload.yml b/ansible/roles_ocp_workloads/ocp4_workload_gitops_bootstrap/tasks/workload.yml index 55138c041dc..8b2fea284fc 100644 --- a/ansible/roles_ocp_workloads/ocp4_workload_gitops_bootstrap/tasks/workload.yml +++ b/ansible/roles_ocp_workloads/ocp4_workload_gitops_bootstrap/tasks/workload.yml @@ -20,6 +20,14 @@ domain: "{{ r_ingress.resources[0].status.domain }}" apiUrl: "{{ r_infra.resources[0].status.apiServerURL }}" +- name: > + Add all existing agnosticd_user_info.data to + _ocp4_workload_gitops_bootstrap_deployer_values + when: ocp4_workload_gitops_bootstrap_userdata_in_helm_values | default(true) | bool + ansible.builtin.set_fact: + _ocp4_workload_gitops_bootstrap_deployer_values: | + {{ _ocp4_workload_gitops_bootstrap_deployer_values | combine( { "agnosticd_user_data": lookup('agnosticd_user_data', '*') }) }} + - name: print _ocp4_workload_gitops_bootstrap_deployer_values ansible.builtin.debug: msg: "{{ _ocp4_workload_gitops_bootstrap_deployer_values | to_yaml }}" From 20727419e3ecc2270097dc045ce72ad24c11790c Mon Sep 17 00:00:00 2001 From: Judd Maltin Date: Sun, 12 Jan 2025 21:29:42 -0500 Subject: [PATCH 6/6] just a comment --- .../ocp4_workload_gitops_bootstrap/tasks/workload.yml | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/ansible/roles_ocp_workloads/ocp4_workload_gitops_bootstrap/tasks/workload.yml b/ansible/roles_ocp_workloads/ocp4_workload_gitops_bootstrap/tasks/workload.yml index 8b2fea284fc..da7e00f70dd 100644 --- a/ansible/roles_ocp_workloads/ocp4_workload_gitops_bootstrap/tasks/workload.yml +++ b/ansible/roles_ocp_workloads/ocp4_workload_gitops_bootstrap/tasks/workload.yml @@ -66,6 +66,10 @@ ansible.builtin.debug: msg: "{{ _all_apps.resources | json_query(query)}}" +####### +####### Begin processing GitOps output +####### + - name: Retrieve configmaps with the demo.redhat.com/userinfo label kubernetes.core.k8s_info: api_version: v1