ssl_generate.yml 1.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657
  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 Sensu SSL directory exists
  6. file:
  7. dest: "{{ sensu_config_path }}/ssl"
  8. state: directory
  9. owner: "{{ sensu_user_name }}"
  10. group: "{{ sensu_group_name }}"
  11. - name: Ensure SSL generation directory exists
  12. file:
  13. dest: "{{ sensu_config_path }}/ssl_generation"
  14. state: directory
  15. owner: "{{ sensu_user_name }}"
  16. group: "{{ sensu_group_name }}"
  17. when: sensu_master
  18. - block:
  19. - name: Fetch the ssl_certs tarball from sensuapp.org
  20. get_url:
  21. url: http://sensuapp.org/docs/{{ sensu_ssl_tool_version }}/files/sensu_ssl_tool.tar
  22. dest: "{{ sensu_config_path }}/ssl_generation/sensu_ssl_tool.tar"
  23. - name: Untar the ssl_certs tarball from sensuapp.org
  24. unarchive:
  25. args:
  26. src: "{{ sensu_config_path }}/ssl_generation/sensu_ssl_tool.tar"
  27. dest: "{{ sensu_config_path }}/ssl_generation/"
  28. creates: "{{ sensu_config_path }}/ssl_generation/sensu_ssl_tool"
  29. - name: Generate SSL certs
  30. command: "_ {{ sensu_config_path }}/ssl_generation/sensu_ssl_tool/ssl_certs.sh generate"
  31. args:
  32. chdir: "{{ sensu_config_path }}/ssl_generation/sensu_ssl_tool"
  33. creates: "{{ sensu_config_path }}/ssl_generation/sensu_ssl_tool/server"
  34. executable: "{{ __bash_path }}"
  35. when: sensu_master|bool
  36. become: true
  37. become_user: "{{ sensu_user_name }}"
  38. - name: Stash the Sensu SSL certs/keys
  39. fetch:
  40. src: "{{ sensu_config_path }}/ssl_generation/sensu_ssl_tool/{{ item }}"
  41. dest: "{{ dynamic_data_store }}"
  42. when: sensu_master
  43. with_items:
  44. - sensu_ca/cacert.pem
  45. - server/cert.pem
  46. - server/key.pem
  47. - client/cert.pem
  48. - client/key.pem