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.

35 lines
1.3 KiB

  1. ---
  2. - name: ALB Ingress Controller | Create addon dir
  3. file:
  4. path: "{{ kube_config_dir }}/addons/alb_ingress"
  5. state: directory
  6. owner: root
  7. group: root
  8. mode: 0755
  9. - name: ALB Ingress Controller | Create manifests
  10. template:
  11. src: "{{ item.file }}.j2"
  12. dest: "{{ kube_config_dir }}/addons/alb_ingress/{{ item.file }}"
  13. with_items:
  14. - { name: alb-ingress-clusterrole, file: alb-ingress-clusterrole.yml, type: clusterrole }
  15. - { name: alb-ingress-clusterrolebinding, file: alb-ingress-clusterrolebinding.yml, type: clusterrolebinding }
  16. - { name: alb-ingress-ns, file: alb-ingress-ns.yml, type: ns }
  17. - { name: alb-ingress-sa, file: alb-ingress-sa.yml, type: sa }
  18. - { name: alb-ingress-deploy, file: alb-ingress-deploy.yml, type: deploy }
  19. register: alb_ingress_manifests
  20. when:
  21. - inventory_hostname == groups['kube_control_plane'][0]
  22. - name: ALB Ingress Controller | Apply manifests
  23. kube:
  24. name: "{{ item.item.name }}"
  25. namespace: "{{ alb_ingress_controller_namespace }}"
  26. kubectl: "{{ bin_dir }}/kubectl"
  27. resource: "{{ item.item.type }}"
  28. filename: "{{ kube_config_dir }}/addons/alb_ingress/{{ item.item.file }}"
  29. state: "latest"
  30. with_items: "{{ alb_ingress_manifests.results }}"
  31. when:
  32. - inventory_hostname == groups['kube_control_plane'][0]