procure_server_certs.yaml 2.6 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152
  1. ---
  2. - name: Checking for {{ cert_info.procure_component }}.crt
  3. stat: path="{{generated_certs_dir}}/{{ cert_info.procure_component }}.crt"
  4. register: component_cert_file
  5. check_mode: no
  6. - name: Checking for {{ cert_info.procure_component }}.key
  7. stat: path="{{generated_certs_dir}}/{{ cert_info.procure_component }}.key"
  8. register: component_key_file
  9. check_mode: no
  10. - name: Trying to discover server cert variable name for {{ cert_info.procure_component }}
  11. set_fact: procure_component_crt={{ lookup('env', '{{cert_info.procure_component}}' + '_crt') }}
  12. when: cert_info.hostnames is undefined and {{ cert_info.procure_component }}_crt is defined and {{ cert_info.procure_component }}_key is defined
  13. check_mode: no
  14. - name: Trying to discover the server key variable name for {{ cert_info.procure_component }}
  15. set_fact: procure_component_key={{ lookup('env', '{{cert_info.procure_component}}' + '_key') }}
  16. when: cert_info.hostnames is undefined and {{ cert_info.procure_component }}_crt is defined and {{ cert_info.procure_component }}_key is defined
  17. check_mode: no
  18. - name: Creating signed server cert and key for {{ cert_info.procure_component }}
  19. command: >
  20. {{ openshift.common.admin_binary }} --config={{ mktemp.stdout }}/admin.kubeconfig ca create-server-cert
  21. --key={{generated_certs_dir}}/{{cert_info.procure_component}}.key --cert={{generated_certs_dir}}/{{cert_info.procure_component}}.crt
  22. --hostnames={{cert_info.hostnames|quote}} --signer-cert={{generated_certs_dir}}/ca.crt --signer-key={{generated_certs_dir}}/ca.key
  23. --signer-serial={{generated_certs_dir}}/ca.serial.txt
  24. check_mode: no
  25. when:
  26. - cert_info.hostnames is defined
  27. - not component_key_file.stat.exists
  28. - not component_cert_file.stat.exists
  29. - name: Copying server key for {{ cert_info.procure_component }} to generated certs directory
  30. copy: content="{{procure_component_key}}" dest={{generated_certs_dir}}/{{cert_info.procure_component}}.key
  31. check_mode: no
  32. when:
  33. - cert_info.hostnames is undefined
  34. - "{{ cert_info.procure_component }}_crt is defined"
  35. - "{{ cert_info.procure_component }}_key is defined"
  36. - not component_key_file.stat.exists
  37. - not component_cert_file.stat.exists
  38. - name: Copying Server cert for {{ cert_info.procure_component }} to generated certs directory
  39. copy: content="{{procure_component_crt}}" dest={{generated_certs_dir}}/{{cert_info.procure_component}}.crt
  40. check_mode: no
  41. when:
  42. - cert_info.hostnames is undefined
  43. - "{{ cert_info.procure_component }}_crt is defined"
  44. - "{{ cert_info.procure_component }}_key is defined"
  45. - not component_key_file.stat.exists
  46. - not component_cert_file.stat.exists