main.yml 1.9 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071
  1. ---
  2. # tasks/CentOS/main.yml: CentOS specific set-up
  3. # This takes care of base prerequisites for CentOS
  4. - include_vars: "{{ ansible_distribution }}.yml"
  5. tags: setup
  6. - name: Ensure the Sensu Core Yum repo is present
  7. tags: setup
  8. yum_repository:
  9. name: sensu
  10. description: The Sensu Core yum repository
  11. baseurl: "{{ sensu_yum_repo_url }}"
  12. gpgkey: "{{ sensu_yum_key_url }}"
  13. gpgcheck: "{{ (
  14. (ansible_distribution == 'CentOS' or ansible_distribution == 'Red Hat Enterprise Linux') and
  15. ansible_distribution_major_version == '5'
  16. ) | ternary('no', 'yes') }}"
  17. enabled: yes
  18. - name: Ensure that credential is supplied if installing Sensu Enterprise
  19. tags: setup
  20. assert:
  21. that:
  22. - "se_user != ''"
  23. - "se_pass != ''"
  24. msg: Sensu enterprise credential must not be empty. Did you forget to set se_user and se_pass?
  25. when: se_enterprise
  26. - name: Ensure the Sensu Enterprise repo is present
  27. tags: setup
  28. copy:
  29. dest: /etc/yum.repos.d/sensu-enterprise.repo
  30. content: |
  31. [sensu-enterprise]
  32. name=sensu-enterprise
  33. baseurl=http://{{ se_user }}:{{ se_pass }}@enterprise.sensuapp.com/yum/noarch/
  34. gpgcheck=0
  35. enabled=1
  36. owner: root
  37. group: root
  38. mode: 0644
  39. when: se_enterprise
  40. - name: Ensure the Sensu Enterprise Dashboard repo is present
  41. tags: setup
  42. copy:
  43. dest: /etc/yum.repos.d/sensu-enterprise-dashboard.repo
  44. content: |
  45. [sensu-enterprise-dashboard]
  46. name=sensu-enterprise-dashboard
  47. baseurl=http://{{ se_user }}:{{ se_pass }}@enterprise.sensuapp.com/yum/\$basearch/
  48. gpgcheck=0
  49. enabled=1
  50. owner: root
  51. group: root
  52. mode: 0644
  53. when: se_enterprise
  54. - name: Ensure Sensu is installed
  55. tags: setup
  56. package:
  57. name: "{{ sensu_package }}"
  58. state: "{{ sensu_pkg_state }}"
  59. - name: Ensure Sensu Enterprise is installed
  60. tags: setup
  61. package:
  62. name: "{{ sensu_enterprise_package }}"
  63. state: "{{ sensu_pkg_state }}"
  64. when: se_enterprise