configure.yml 1.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869
  1. ---
  2. - name: alerting rules file
  3. template:
  4. src: "alert.rules.j2"
  5. dest: "{{ prometheus_config_dir }}/rules/ansible_managed.rules"
  6. owner: root
  7. group: prometheus
  8. mode: 0640
  9. validate: "{{ prometheus_binary_install_dir }}/promtool check rules %s"
  10. when:
  11. - prometheus_alert_rules != []
  12. notify:
  13. - reload prometheus
  14. - name: copy custom alerting rule files
  15. copy:
  16. src: "{{ item }}"
  17. dest: "{{ prometheus_config_dir }}/rules/"
  18. owner: root
  19. group: prometheus
  20. mode: 0640
  21. validate: "{{ prometheus_binary_install_dir }}/promtool check rules %s"
  22. with_fileglob: "{{ prometheus_alert_rules_files }}"
  23. notify:
  24. - reload prometheus
  25. - name: configure prometheus
  26. template:
  27. src: "{{ prometheus_config_file }}"
  28. dest: "{{ prometheus_config_dir }}/prometheus.yml"
  29. force: true
  30. owner: root
  31. group: prometheus
  32. mode: 0640
  33. validate: "{{ prometheus_binary_install_dir }}/promtool check config %s"
  34. notify:
  35. - reload prometheus
  36. - name: configure Prometheus web
  37. copy:
  38. content: "{{ prometheus_web_config | to_nice_yaml(indent=2,sort_keys=False) }}"
  39. dest: "{{ prometheus_config_dir }}/web.yml"
  40. force: true
  41. owner: root
  42. group: prometheus
  43. mode: 0640
  44. - name: configure prometheus static targets
  45. copy:
  46. content: |
  47. #jinja2: lstrip_blocks: True
  48. {{ item.value | to_nice_yaml(indent=2,sort_keys=False) }}
  49. dest: "{{ prometheus_config_dir }}/file_sd/{{ item.key }}.yml"
  50. force: true
  51. owner: root
  52. group: prometheus
  53. mode: 0640
  54. with_dict: "{{ prometheus_targets }}"
  55. when: prometheus_targets != {}
  56. - name: copy prometheus custom static targets
  57. copy:
  58. src: "{{ item }}"
  59. dest: "{{ prometheus_config_dir }}/file_sd/"
  60. force: true
  61. owner: root
  62. group: prometheus
  63. mode: 0640
  64. with_fileglob: "{{ prometheus_static_targets_files }}"