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.

36 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. mode: "0644"
  14. with_items:
  15. - { name: alb-ingress-clusterrole, file: alb-ingress-clusterrole.yml, type: clusterrole }
  16. - { name: alb-ingress-clusterrolebinding, file: alb-ingress-clusterrolebinding.yml, type: clusterrolebinding }
  17. - { name: alb-ingress-ns, file: alb-ingress-ns.yml, type: ns }
  18. - { name: alb-ingress-sa, file: alb-ingress-sa.yml, type: sa }
  19. - { name: alb-ingress-deploy, file: alb-ingress-deploy.yml, type: deploy }
  20. register: alb_ingress_manifests
  21. when:
  22. - inventory_hostname == groups['kube_control_plane'][0]
  23. - name: ALB Ingress Controller | Apply manifests
  24. kube:
  25. name: "{{ item.item.name }}"
  26. namespace: "{{ alb_ingress_controller_namespace }}"
  27. kubectl: "{{ bin_dir }}/kubectl"
  28. resource: "{{ item.item.type }}"
  29. filename: "{{ kube_config_dir }}/addons/alb_ingress/{{ item.item.file }}"
  30. state: "latest"
  31. with_items: "{{ alb_ingress_manifests.results }}"
  32. when:
  33. - inventory_hostname == groups['kube_control_plane'][0]