From d003e1380f0e7dc2b648aea30bcc4241c58cfc39 Mon Sep 17 00:00:00 2001 From: Josh Patterson Date: Wed, 2 Jul 2025 16:14:43 -0400 Subject: [PATCH] ensure hypervisor is remove from salt cloud profiles when key is deleted --- salt/orch/delete_hypervisor.sls | 17 +++++++++++++++++ salt/reactor/check_hypervisor.sls | 16 +++++++++++++++- 2 files changed, 32 insertions(+), 1 deletion(-) create mode 100644 salt/orch/delete_hypervisor.sls diff --git a/salt/orch/delete_hypervisor.sls b/salt/orch/delete_hypervisor.sls new file mode 100644 index 000000000..3249d11b5 --- /dev/null +++ b/salt/orch/delete_hypervisor.sls @@ -0,0 +1,17 @@ +{% set hypervisor = pillar.minion_id %} + +ensure_hypervisor_mine_deleted: + salt.function: + - name: file.remove + - tgt: 'G@role:so-manager or G@role:so-managerhype or G@role:so-managersearch or G@role:so-standalone or G@role:so-eval' + - tgt_type: compound + - arg: + - /var/cache/salt/master/minions/{{hypervisor}} + +update_salt_cloud_profile: + salt.state: + - tgt: 'G@role:so-manager or G@role:so-managerhype or G@role:so-managersearch or G@role:so-standalone or G@role:so-eval' + - tgt_type: compound + - sls: + - salt.cloud.config + - concurrent: True diff --git a/salt/reactor/check_hypervisor.sls b/salt/reactor/check_hypervisor.sls index 889656b36..2f3831471 100644 --- a/salt/reactor/check_hypervisor.sls +++ b/salt/reactor/check_hypervisor.sls @@ -1,5 +1,19 @@ -{% if data['act'] == 'accept' and data['id'].endswith(('_hypervisor', '_managerhyper')) and data['result'] == True %} +{% if data['id'].endswith('_hypervisor') and data['result'] == True %} + +{% if data['act'] == 'accept' %} check_and_trigger: runner.setup_hypervisor.setup_environment: - minion_id: {{ data['id'] }} +{% endif %} + +{% if data['act'] == 'delete' %} +delete_hypervisor: + runner.state.orchestrate: + - args: + - mods: orch.delete_hypervisor + - pillar: + minion_id: {{ data['id'] }} +{% endif %} + {% endif %} +