Matrix Docker Ansible eploy
Nie możesz wybrać więcej, niż 25 tematów Tematy muszą się zaczynać od litery lub cyfry, mogą zawierać myślniki ('-') i mogą mieć do 35 znaków.
 
 

94 wiersze
3.2 KiB

  1. ---
  2. #
  3. # Tasks related to setting up matrix-prometheus
  4. #
  5. - name: Ensure matrix-prometheus image is pulled
  6. docker_image:
  7. name: "{{ matrix_prometheus_docker_image }}"
  8. source: "{{ 'pull' if ansible_version.major > 2 or ansible_version.minor > 7 else omit }}"
  9. force_source: "{{ matrix_prometheus_docker_image_force_pull if ansible_version.major > 2 or ansible_version.minor >= 8 else omit }}"
  10. force: "{{ omit if ansible_version.major > 2 or ansible_version.minor >= 8 else matrix_prometheus_docker_image_force_pull }}"
  11. when: "matrix_prometheus_enabled|bool"
  12. - name: Ensure Prometheus paths exists
  13. file:
  14. path: "{{ item }}"
  15. state: directory
  16. mode: 0750
  17. owner: "{{ matrix_user_username }}"
  18. group: "{{ matrix_user_groupname }}"
  19. with_items:
  20. - "{{ matrix_prometheus_base_path }}"
  21. - "{{ matrix_prometheus_config_path }}"
  22. - "{{ matrix_prometheus_data_path }}"
  23. when: matrix_prometheus_enabled|bool
  24. - name: Ensure prometheus.yml installed
  25. copy:
  26. content: "{{ matrix_prometheus_configuration|to_nice_yaml }}"
  27. dest: "{{ matrix_prometheus_config_path }}/prometheus.yml"
  28. mode: 0644
  29. owner: "{{ matrix_user_username }}"
  30. group: "{{ matrix_user_groupname }}"
  31. when: matrix_prometheus_enabled|bool
  32. - name: Download synapse-v2.rules
  33. get_url:
  34. url: "{{ matrix_synapse_prometheus_rules_download_url }}"
  35. dest: "{{ matrix_prometheus_config_path }}/synapse-v2.rules"
  36. force: true
  37. mode: 0440
  38. owner: "{{ matrix_user_username }}"
  39. group: "{{ matrix_user_groupname }}"
  40. when: matrix_prometheus_enabled|bool
  41. - name: Ensure matrix-prometheus.service installed
  42. template:
  43. src: "{{ role_path }}/templates/systemd/matrix-prometheus.service.j2"
  44. dest: "{{ matrix_systemd_path }}/matrix-prometheus.service"
  45. mode: 0644
  46. register: matrix_prometheus_systemd_service_result
  47. when: matrix_prometheus_enabled|bool
  48. - name: Ensure systemd reloaded after matrix-prometheus.service installation
  49. service:
  50. daemon_reload: yes
  51. when: "matrix_prometheus_enabled|bool and matrix_prometheus_systemd_service_result.changed"
  52. #
  53. # Tasks related to getting rid of matrix-prometheus (if it was previously enabled)
  54. #
  55. - name: Check existence of matrix-prometheus service
  56. stat:
  57. path: "{{ matrix_systemd_path }}/matrix-prometheus.service"
  58. register: matrix_prometheus_service_stat
  59. - name: Ensure matrix-prometheus is stopped
  60. service:
  61. name: matrix-prometheus
  62. state: stopped
  63. daemon_reload: yes
  64. register: stopping_result
  65. when: "not matrix_prometheus_enabled|bool and matrix_prometheus_service_stat.stat.exists"
  66. - name: Ensure matrix-prometheus.service doesn't exist
  67. file:
  68. path: "{{ matrix_systemd_path }}/matrix-prometheus.service"
  69. state: absent
  70. when: "not matrix_prometheus_enabled|bool and matrix_prometheus_service_stat.stat.exists"
  71. - name: Ensure systemd reloaded after matrix-prometheus.service removal
  72. service:
  73. daemon_reload: yes
  74. when: "not matrix_prometheus_enabled|bool and matrix_prometheus_service_stat.stat.exists"
  75. - name: Ensure matrix-prometheus Docker image doesn't exist
  76. docker_image:
  77. name: "{{ matrix_prometheus_docker_image }}"
  78. state: absent
  79. when: "not matrix_prometheus_enabled|bool"