vault_delete_local_admin_user

---
- name: Read secret
  ansible.builtin.uri:
    url: "{{ vault_url }}/v1/kv/data/base_users"
    method: GET
    headers:
      X-Vault-Token: "{{ vault_token }}"
      X-Vault-Namespace: "{{ main_ns_name }}/base"
      Content-type: "application/json"
    timeout: 10
    validate_certs: false
  register: rsecret

- name: Set the content var
  ansible.builtin.set_fact:
    org_content: "{{ rsecret['json']['data']['data'] }}"
    new_content: {}

- name: Remove user from set
  ansible.builtin.set_fact:
    new_content: "{{ org_content | dict2items | rejectattr('key', 'search', remove_user) | items2dict }}"

- name: Set secret content
  ansible.builtin.set_fact:
    json_secret_content: |
      {
      "data":
        {{ new_content }}
      }

- name: Update secret
  ansible.builtin.uri:
    url: "{{ vault_url }}/v1/kv/data/base_users"
    method: POST
    headers:
      X-Vault-Token: "{{ vault_token }}"
      X-Vault-Namespace: "{{ main_ns_name }}/base"
      Content-type: "application/json"
    body_format: json
    body:
      "{{ json_secret_content }}"
    timeout: 10
    validate_certs: false
  no_log: true