main.yml 2.0 KB

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