48 lines
1.7 KiB
YAML
48 lines
1.7 KiB
YAML
---
|
|
- name: GCP PD CSI Driver | Check if cloud-sa.json exists
|
|
fail:
|
|
msg: "Credentials file cloud-sa.json is mandatory"
|
|
when: gcp_pd_csi_sa_cred_file is not defined or not gcp_pd_csi_sa_cred_file
|
|
|
|
- name: GCP PD CSI Driver | Copy GCP credentials file
|
|
copy:
|
|
src: "{{ gcp_pd_csi_sa_cred_file }}"
|
|
dest: "{{ kube_config_dir }}/cloud-sa.json"
|
|
group: "{{ kube_cert_group }}"
|
|
mode: "0640"
|
|
when: inventory_hostname == groups['kube_control_plane'][0]
|
|
|
|
- name: GCP PD CSI Driver | Get base64 cloud-sa.json
|
|
slurp:
|
|
src: "{{ kube_config_dir }}/cloud-sa.json"
|
|
register: gcp_cred_secret
|
|
when: inventory_hostname == groups['kube_control_plane'][0]
|
|
|
|
- name: GCP PD CSI Driver | Generate Manifests
|
|
template:
|
|
src: "{{ item.file }}.j2"
|
|
dest: "{{ kube_config_dir }}/{{ item.file }}"
|
|
mode: "0644"
|
|
with_items:
|
|
- {name: gcp-pd-csi-cred-secret, file: gcp-pd-csi-cred-secret.yml}
|
|
- {name: gcp-pd-csi-setup, file: gcp-pd-csi-setup.yml}
|
|
- {name: gcp-pd-csi-controller, file: gcp-pd-csi-controller.yml}
|
|
- {name: gcp-pd-csi-node, file: gcp-pd-csi-node.yml}
|
|
- {name: gcp-pd-csi-sc-regional, file: gcp-pd-csi-sc-regional.yml}
|
|
- {name: gcp-pd-csi-sc-zonal, file: gcp-pd-csi-sc-zonal.yml}
|
|
register: gcp_pd_csi_manifests
|
|
when: inventory_hostname == groups['kube_control_plane'][0]
|
|
|
|
- name: GCP PD CSI Driver | Apply Manifests
|
|
kube:
|
|
kubectl: "{{ bin_dir }}/kubectl"
|
|
filename: "{{ kube_config_dir }}/{{ item.item.file }}"
|
|
state: "latest"
|
|
with_items:
|
|
- "{{ gcp_pd_csi_manifests.results }}"
|
|
when:
|
|
- inventory_hostname == groups['kube_control_plane'][0]
|
|
- not item is skipped
|
|
loop_control:
|
|
label: "{{ item.item.file }}"
|