main.yml 1.5 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364
  1. ---
  2. - name: Install nfs-utils
  3. action: "{{ ansible_pkg_mgr }} name=nfs-utils state=present"
  4. - name: Configure NFS
  5. lineinfile:
  6. dest: /etc/sysconfig/nfs
  7. regexp: '^RPCNFSDARGS=.*$'
  8. line: 'RPCNFSDARGS="-N 2 -N 3"'
  9. register: nfs_config
  10. - name: Restart nfs-config
  11. service: name=nfs-config state=restarted
  12. when: nfs_config | changed
  13. - name: Ensure exports directory exists
  14. file:
  15. path: "{{ openshift.hosted.registry.storage.nfs.directory }}"
  16. state: directory
  17. - name: Ensure export directories exist
  18. file:
  19. path: "{{ item.storage.nfs.directory }}/{{ item.storage.volume.name }}"
  20. state: directory
  21. mode: 0777
  22. owner: nfsnobody
  23. group: nfsnobody
  24. with_items:
  25. - "{{ openshift.hosted.registry }}"
  26. - "{{ openshift.hosted.metrics }}"
  27. - name: Configure exports
  28. template:
  29. dest: /etc/exports.d/openshift-ansible.exports
  30. src: exports.j2
  31. notify:
  32. - restart nfs-server
  33. # Now that we're putting our exports in our own file clean up the old ones
  34. - name: register exports
  35. command: cat /etc/exports.d/openshift-ansible.exports
  36. register: exports_out
  37. - name: remove exports from /etc/exports
  38. lineinfile:
  39. dest: /etc/exports
  40. line: "{{ item }}"
  41. state: absent
  42. with_items: "{{ exports_out.stdout_lines | default([]) }}"
  43. when: exports_out.rc == 0
  44. notify:
  45. - restart nfs-server
  46. - name: Enable and start services
  47. service:
  48. name: "{{ item }}"
  49. state: started
  50. enabled: yes
  51. register: start_result
  52. with_items:
  53. - nfs-server
  54. - set_fact:
  55. nfs_service_status_changed: "{{ start_result | changed }}"