mirror of
https://github.com/kubernetes-sigs/kubespray.git
synced 2026-03-08 11:07:43 +03:00
refactor vault role (#2733)
* Move front-proxy-client certs back to kube mount We want the same CA for all k8s certs * Refactor vault to use a third party module The module adds idempotency and reduces some of the repetitive logic in the vault role Requires ansible-modules-hashivault on ansible node and hvac on the vault hosts themselves Add upgrade test scenario Remove bootstrap-os tags from tasks * fix upgrade issues * improve unseal logic * specify ca and fix etcd check * Fix initialization check bump machine size
This commit is contained in:
@@ -1,27 +1,12 @@
|
||||
---
|
||||
- name: "shared/mount | Test if {{ pki_mount_path }} PKI mount exists"
|
||||
uri:
|
||||
url: "{{ vault_leader_url }}/v1/sys/mounts/{{ pki_mount_path }}/tune"
|
||||
headers: "{{ vault_headers }}"
|
||||
ignore_errors: true
|
||||
register: vault_pki_mount_check
|
||||
|
||||
- name: shared/mount | Set pki mount type
|
||||
set_fact:
|
||||
mount_options: "{{ pki_mount_options | combine({'type': 'pki'}) }}"
|
||||
when: vault_pki_mount_check|failed
|
||||
|
||||
- name: shared/mount | Mount {{ pki_mount_path }} PKI mount if needed
|
||||
uri:
|
||||
url: "{{ vault_leader_url }}/v1/sys/mounts/{{ pki_mount_path }}"
|
||||
headers: "{{ vault_headers }}"
|
||||
method: POST
|
||||
body_format: json
|
||||
body: "{{ mount_options|d() }}"
|
||||
status_code: 204
|
||||
when: vault_pki_mount_check|failed
|
||||
|
||||
- name: shared/mount | Unset mount options
|
||||
set_fact:
|
||||
mount_options: {}
|
||||
when: vault_pki_mount_check|failed
|
||||
- name: shared/mount | Enable {{ pki_mount_path }} PKI mount
|
||||
hashivault_secret_enable:
|
||||
url: "{{ vault_leader_url }}"
|
||||
token: "{{ vault_root_token }}"
|
||||
ca_cert: "{{ vault_cert_dir }}/ca.pem"
|
||||
name: "{{ pki_mount_path }}"
|
||||
backend: "pki"
|
||||
config: "{{ pki_mount_options }}"
|
||||
register: secret_enable_result
|
||||
failed_when: 'secret_enable_result.rc !=0 and "existing mount" not in secret_enable_result.msg'
|
||||
|
||||
Reference in New Issue
Block a user