Ingen beskrivning

init.sls 1.7KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869
  1. {% import 'globals.jinja' as globals %}
  2. include:
  3. - systemd.helpers
  4. consul:
  5. file.managed:
  6. - name: /usr/bin/consul
  7. - source: salt://consul/files/vendor/0.8.3.linux-amd64/consul
  8. - mode: 555
  9. group.present:
  10. - system: True
  11. user.present:
  12. - system: True
  13. - gid: consul
  14. - home: /data/consul
  15. - createhome: False
  16. - groups:
  17. - deployment-keys
  18. - require:
  19. - group: consul
  20. - group: deployment-keys
  21. service.running:
  22. - enable: True
  23. - require:
  24. - user: consul
  25. - group: consul
  26. - file: /data/consul
  27. - module: reload_systemd
  28. - watch:
  29. - file: consul
  30. - file: /etc/consul
  31. - x509: /etc/deployment/ssl/private/deployment.key
  32. - x509: /etc/deployment/ssl/certs/deployment.crt
  33. - file: /etc/deployment/ssl/certs/ca-chain-deployment.crt
  34. - file: /etc/systemd/system/consul.service
  35. # We create this directory manually rather than using 'user.present' with
  36. # 'createhome: True' to ensure that .bashrc, etc., are not copied into it.
  37. /data/consul:
  38. file.directory:
  39. - user: consul
  40. - group: consul
  41. - require:
  42. - user: consul
  43. - group: consul
  44. /etc/consul:
  45. file.recurse:
  46. - source: salt://consul/files/conf.d
  47. - user: root
  48. - group: consul
  49. - dir_mode: 750
  50. - file_mode: 640
  51. - template: jinja
  52. - context:
  53. consul_datacenter: {{ pillar['global']['consul_datacenter'] }}
  54. consul_secret: {{ pillar['global']['consul_secret'] }}
  55. server_ip_addresses: {{ globals.admin_ip_addresses }}
  56. - require:
  57. - group: consul
  58. /etc/systemd/system/consul.service:
  59. file.managed:
  60. - source: salt://consul/files/consul.service
  61. - template: jinja
  62. - onchanges_in:
  63. - module: reload_systemd