Nessuna descrizione

init.sls 1.7KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667
  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. - require:
  23. - user: consul
  24. - group: consul
  25. - file: /data/consul
  26. - module: reload_systemd
  27. - watch:
  28. - file: consul
  29. - file: /etc/consul
  30. - x509: /etc/deployment/ssl/private/deployment.key
  31. - x509: /etc/deployment/ssl/certs/deployment.crt
  32. - file: /etc/deployment/ssl/certs/ca-chain-deployment.crt
  33. - file: /etc/systemd/system/consul.service
  34. # We create this directory manually rather than using 'user.present' with
  35. # 'createhome: True' to ensure that .bashrc, etc., are not copied into it.
  36. /data/consul:
  37. file.directory:
  38. - user: consul
  39. - group: consul
  40. - require:
  41. - user: consul
  42. - group: consul
  43. /etc/consul:
  44. file.recurse:
  45. - source: salt://consul/files/conf.d
  46. - user: root
  47. - group: consul
  48. - dir_mode: 750
  49. - file_mode: 640
  50. - template: jinja
  51. - context:
  52. consul_datacenter: {{ pillar['global']['consul_datacenter'] }}
  53. consul_secret: {{ pillar['global']['consul_secret'] }}
  54. server_ip_addresses: {{ globals.admin_ip_addresses }}
  55. - require:
  56. - group: consul
  57. /etc/systemd/system/consul.service:
  58. file.managed:
  59. - source: salt://consul/files/consul.service
  60. - onchanges_in:
  61. - module: reload_systemd