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.

42 lines
2.1 KiB

  1. ---
  2. - name: Kubernetes Apps | Netchecker Templates list
  3. set_fact:
  4. netchecker_templates:
  5. - {file: netchecker-ns.yml, type: ns, name: netchecker-namespace}
  6. - {file: netchecker-agent-sa.yml, type: sa, name: netchecker-agent}
  7. - {file: netchecker-agent-ds.yml, type: ds, name: netchecker-agent}
  8. - {file: netchecker-agent-hostnet-ds.yml, type: ds, name: netchecker-agent-hostnet}
  9. - {file: netchecker-server-sa.yml, type: sa, name: netchecker-server}
  10. - {file: netchecker-server-clusterrole.yml, type: clusterrole, name: netchecker-server}
  11. - {file: netchecker-server-clusterrolebinding.yml, type: clusterrolebinding, name: netchecker-server}
  12. - {file: netchecker-server-deployment.yml, type: deployment, name: netchecker-server}
  13. - {file: netchecker-server-svc.yml, type: svc, name: netchecker-service}
  14. netchecker_templates_for_psp:
  15. - {file: netchecker-agent-hostnet-psp.yml, type: podsecuritypolicy, name: netchecker-agent-hostnet-policy}
  16. - {file: netchecker-agent-hostnet-clusterrole.yml, type: clusterrole, name: netchecker-agent}
  17. - {file: netchecker-agent-hostnet-clusterrolebinding.yml, type: clusterrolebinding, name: netchecker-agent}
  18. - name: Kubernetes Apps | Append extra templates to Netchecker Templates list for PodSecurityPolicy
  19. set_fact:
  20. netchecker_templates: "{{ netchecker_templates_for_psp + netchecker_templates }}"
  21. when: podsecuritypolicy_enabled
  22. - name: Kubernetes Apps | Lay Down Netchecker Template
  23. template:
  24. src: "{{ item.file }}.j2"
  25. dest: "{{ kube_config_dir }}/{{ item.file }}"
  26. with_items: "{{ netchecker_templates }}"
  27. register: manifests
  28. when:
  29. - inventory_hostname == groups['kube_control_plane'][0]
  30. - name: Kubernetes Apps | Start Netchecker Resources
  31. kube:
  32. name: "{{ item.item.name }}"
  33. namespace: "{{ netcheck_namespace }}"
  34. kubectl: "{{ bin_dir }}/kubectl"
  35. resource: "{{ item.item.type }}"
  36. filename: "{{ kube_config_dir }}/{{ item.item.file }}"
  37. state: "latest"
  38. with_items: "{{ manifests.results }}"
  39. when: inventory_hostname == groups['kube_control_plane'][0] and not item is skipped