Ansible从文件创建kubernetes机密

Ansible从文件创建kubernetes机密,kubernetes,ansible,kubernetes-secrets,Kubernetes,Ansible,Kubernetes Secrets,是否可以从ansible中的文件创建和保存k8s机密 目前,我是这样做的,但它只在第一次运行时起作用,因为如果我再次运行playbook,它会说秘密已经存在 - name: generate keypair openssh_keypair: path: /srv/{{item.namespace}}/id_{{item.name}}_rsa when: item.additional_keys == true loop: "{{ containers_rele

是否可以从ansible中的文件创建和保存k8s机密

目前,我是这样做的,但它只在第一次运行时起作用,因为如果我再次运行playbook,它会说秘密已经存在

- name: generate keypair 
  openssh_keypair:
    path: /srv/{{item.namespace}}/id_{{item.name}}_rsa  
  when: item.additional_keys == true
  loop: "{{ containers_release }}"

- name: create private key secret for auth api
  shell: kubectl -n {{ item.namespace }} create secret generic id-{{ item.name }}-rsa-priv --from-file=/srv/{{ item.namespace }}/id_authapi_rsa
  when: item.additional_keys == true
  loop: "{{ containers_release }}"

- name: create public key secret for {{ item.name }}
  shell: kubectl -n {{ item.namespace }} create secret generic id-{{ item.name }}-rsa-pub --from-file=/srv/{{ item.namespace }}/id_{{ item.name }}_rsa.pub
  when: item.additional_keys == true
  loop: "{{ containers_release }}"


正如我在评论部分提到的,是幂等的。如果配置已经就位,ansible在重新部署后不会进行任何更改。这就是为什么在再次运行playbook后,您会再次获得playbook,它会显示秘密已经存在的信息

看一看:

你可以尝试使用


请参见:.

Ansible是幂等的。如果配置已经就位,Ansible不会进行任何更改。这就是为什么在再次运行playbook后,您会再次获得playbook,它会显示秘密已经存在的信息。你有没有看一下@Ydrab是怎么做的?