rpm.yml 2.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384
  1. ---
  2. - name: Set hostname and ip facts
  3. set_fact:
  4. # Store etcd_hostname and etcd_ip such that they will be available
  5. # in hostvars. Defaults for these variables are set in etcd_common.
  6. etcd_hostname: "{{ etcd_hostname }}"
  7. etcd_ip: "{{ etcd_ip }}"
  8. - name: setup firewall
  9. import_tasks: firewall.yml
  10. - name: Install etcd
  11. package: name=etcd{{ '-' + etcd_version if etcd_version is defined else '' }} state=present
  12. register: result
  13. until: result is succeeded
  14. - include_tasks: drop_etcdctl.yml
  15. when:
  16. - openshift_etcd_etcdctl_profile | default(true) | bool
  17. # Start secondary etcd instance for third party integrations
  18. # TODO: Determine an alternative to using thirdparty variable
  19. - block:
  20. - name: Create configuration directory
  21. file:
  22. path: "{{ etcd_conf_dir }}"
  23. state: directory
  24. mode: 0700
  25. # TODO: retest with symlink to confirm it does or does not function
  26. - name: Copy service file for etcd instance
  27. copy:
  28. src: /usr/lib/systemd/system/etcd.service
  29. dest: "/etc/systemd/system/{{ etcd_service }}.service"
  30. remote_src: True
  31. - name: Create third party etcd service.d directory exists
  32. file:
  33. path: "{{ etcd_systemd_dir }}"
  34. state: directory
  35. - name: Configure third part etcd service unit file
  36. template:
  37. dest: "{{ etcd_systemd_dir }}/custom.conf"
  38. src: custom.conf.j2
  39. when: etcd_is_thirdparty
  40. - name: Ensure etcd datadir ownership for thirdparty datadir
  41. file:
  42. path: "{{ etcd_data_dir }}"
  43. state: directory
  44. mode: 0700
  45. owner: etcd
  46. group: etcd
  47. recurse: True
  48. when: etcd_is_thirdparty | bool
  49. - name: Validate permissions on the config dir
  50. file:
  51. path: "{{ etcd_conf_dir }}"
  52. state: directory
  53. owner: "etcd"
  54. group: "etcd"
  55. mode: 0700
  56. - name: Write etcd global config file
  57. template:
  58. src: etcd.conf.j2
  59. dest: "{{ etcd_conf_file }}"
  60. backup: true
  61. notify:
  62. - restart etcd
  63. - name: Enable etcd
  64. systemd:
  65. name: "{{ etcd_service }}"
  66. state: started
  67. enabled: yes
  68. daemon_reload: yes
  69. register: start_result
  70. - name: Set fact etcd_service_status_changed
  71. set_fact:
  72. etcd_service_status_changed: "{{ start_result is changed }}"