mirror of
https://github.com/kubernetes-sigs/kubespray.git
synced 2026-02-19 12:10:11 -03:30
* Fix: vSphere Error: `Apply a CSI secret manifest` This PR will fix an issue that you will see on 2nd deploy when deploying External vSphere How to re-produce: 1. Set custom `vsphere_csi_namespace: "vmware-system-csi"` 2. Deploy as usual 3. Observe no errors 4. Deploy 2nd time without `reset` 5. Playbook fails with: ``` TASK [kubernetes-apps/csi_driver/vsphere : vSphere CSI Driver | Apply a CSI secret manifest] fatal: [node-00]: FAILED! => changed=true censored: 'the output has been hidden due to the fact that ''no_log: true'' was specified for this result' ``` * create namespace if does not exist * lint fix * try to fix lint errors * fix `too few spaces before comment` * change the order of applied manifests * typo
55 lines
1.9 KiB
YAML
55 lines
1.9 KiB
YAML
---
|
|
- include_tasks: vsphere-credentials-check.yml
|
|
|
|
- name: vSphere CSI Driver | Generate CSI cloud-config
|
|
template:
|
|
src: "{{ item }}.j2"
|
|
dest: "{{ kube_config_dir }}/{{ item }}"
|
|
mode: 0640
|
|
with_items:
|
|
- vsphere-csi-cloud-config
|
|
when: inventory_hostname == groups['kube_control_plane'][0]
|
|
|
|
- name: vSphere CSI Driver | Generate Manifests
|
|
template:
|
|
src: "{{ item }}.j2"
|
|
dest: "{{ kube_config_dir }}/{{ item }}"
|
|
mode: 0644
|
|
with_items:
|
|
- vsphere-csi-namespace.yml
|
|
- vsphere-csi-driver.yml
|
|
- vsphere-csi-controller-rbac.yml
|
|
- vsphere-csi-node-rbac.yml
|
|
- vsphere-csi-controller-config.yml
|
|
- vsphere-csi-controller-deployment.yml
|
|
- vsphere-csi-controller-service.yml
|
|
- vsphere-csi-node.yml
|
|
register: vsphere_csi_manifests
|
|
when: inventory_hostname == groups['kube_control_plane'][0]
|
|
|
|
- name: vSphere CSI Driver | Apply Manifests
|
|
kube:
|
|
kubectl: "{{ bin_dir }}/kubectl"
|
|
filename: "{{ kube_config_dir }}/{{ item.item }}"
|
|
state: "latest"
|
|
with_items:
|
|
- "{{ vsphere_csi_manifests.results }}"
|
|
when:
|
|
- inventory_hostname == groups['kube_control_plane'][0]
|
|
- not item is skipped
|
|
loop_control:
|
|
label: "{{ item.item }}"
|
|
|
|
- name: vSphere CSI Driver | Generate a CSI secret manifest
|
|
command: "{{ kubectl }} create secret generic vsphere-config-secret --from-file=csi-vsphere.conf={{ kube_config_dir }}/vsphere-csi-cloud-config -n {{ vsphere_csi_namespace }} --dry-run --save-config -o yaml"
|
|
register: vsphere_csi_secret_manifest
|
|
when: inventory_hostname == groups['kube_control_plane'][0]
|
|
no_log: "{{ not (unsafe_show_logs|bool) }}"
|
|
|
|
- name: vSphere CSI Driver | Apply a CSI secret manifest
|
|
command:
|
|
cmd: "{{ kubectl }} apply -f -"
|
|
stdin: "{{ vsphere_csi_secret_manifest.stdout }}"
|
|
when: inventory_hostname == groups['kube_control_plane'][0]
|
|
no_log: "{{ not (unsafe_show_logs|bool) }}"
|