ssl_generate.yml 1.5 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849
  1. ---
  2. # tasks/ssl_generate.yml: Generate SSL data and stash to dynamic
  3. # data store for deployment to clients
  4. - include_vars: "{{ ansible_distribution }}.yml"
  5. - name: Ensure SSL generation directory exists
  6. file:
  7. dest: "{{ sensu_config_path }}/ssl_generation"
  8. state: directory
  9. owner: "{{ sensu_user_name }}"
  10. group: "{{ sensu_group_name }}"
  11. when: sensu_master
  12. - name: Install urllib3 to ensure we can validate the SAN cert
  13. package:
  14. name: python-urllib3
  15. - block:
  16. - name: Untar the ssl_certs tarball from sensuapp.org
  17. unarchive:
  18. args:
  19. src: http://sensuapp.org/docs/{{ sensu_ssl_tool_version }}/files/sensu_ssl_tool.tar
  20. dest: "{{ sensu_config_path }}/ssl_generation/"
  21. creates: "{{ sensu_config_path }}/ssl_generation/sensu_ssl_tool"
  22. copy: no
  23. - name: Generate SSL certs
  24. command: "{{ __bash_path }} {{ sensu_config_path }}/ssl_generation/sensu_ssl_tool/ssl_certs.sh generate"
  25. args:
  26. chdir: "{{ sensu_config_path }}/ssl_generation/sensu_ssl_tool"
  27. creates: "{{ sensu_config_path }}/ssl_generation/sensu_ssl_tool/server"
  28. when: sensu_master|bool
  29. become: true
  30. become_user: "{{ sensu_user_name }}"
  31. - name: Stash the Sensu SSL certs/keys
  32. fetch:
  33. src: "{{ sensu_config_path }}/ssl_generation/sensu_ssl_tool/{{ item }}"
  34. dest: "{{ dynamic_data_store }}"
  35. when: sensu_master
  36. with_items:
  37. - sensu_ca/cacert.pem
  38. - server/cert.pem
  39. - server/key.pem
  40. - client/cert.pem
  41. - client/key.pem