You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

45 lines
1.8 KiB

  1. ---
  2. - name: Local Volume Provisioner | Ensure base dir is created on all hosts
  3. file:
  4. path: "{{ local_volume_provisioner_base_dir }}"
  5. state: directory
  6. owner: root
  7. group: root
  8. mode: 0700
  9. delegate_to: "{{ item }}"
  10. with_items: "{{ groups['k8s-cluster'] }}"
  11. failed_when: false
  12. - name: Local Volume Provisioner | Create addon dir
  13. file:
  14. path: "{{ kube_config_dir }}/addons/local_volume_provisioner"
  15. state: directory
  16. owner: root
  17. group: root
  18. mode: 0755
  19. - name: Local Volume Provisioner | Create manifests
  20. template:
  21. src: "{{ item.file }}.j2"
  22. dest: "{{ kube_config_dir }}/addons/local_volume_provisioner/{{ item.file }}"
  23. with_items:
  24. - { name: local-volume-provisioner-ns, file: local-volume-provisioner-ns.yml, type: ns }
  25. - { name: local-volume-provisioner-sa, file: local-volume-provisioner-sa.yml, type: sa }
  26. - { name: local-volume-provisioner-clusterrolebinding, file: local-volume-provisioner-clusterrolebinding.yml, type, clusterrolebinding }
  27. - { name: local-volume-provisioner-cm, file: local-volume-provisioner-cm.yml, type, cm }
  28. - { name: local-volume-provisioner-ds, file: local-volume-provisioner-ds.yml, type, ds }
  29. - { name: local-volume-provisioner-sc, file: local-volume-provisioner-sc.yml, type, sc }
  30. register: local_volume_provisioner_manifests
  31. when: inventory_hostname == groups['kube-master'][0]
  32. - name: Local Volume Provisioner | Apply manifests
  33. kube:
  34. name: "{{ item.item.name }}"
  35. namespace: "{{ local_volume_provisioner_namespace }}"
  36. kubectl: "{{ bin_dir }}/kubectl"
  37. resource: "{{ item.item.type }}"
  38. filename: "{{ kube_config_dir }}/addons/local_volume_provisioner/{{ item.item.file }}"
  39. state: "latest"
  40. with_items: "{{ local_volume_provisioner_manifests.results }}"
  41. when: inventory_hostname == groups['kube-master'][0]