diff --git a/examples/csi_driver_config_vars.yaml b/examples/csi_driver_install_vars.yaml similarity index 65% rename from examples/csi_driver_config_vars.yaml rename to examples/csi_driver_install_vars.yaml index 1f8a51b0..8b6064aa 100644 --- a/examples/csi_driver_config_vars.yaml +++ b/examples/csi_driver_install_vars.yaml @@ -1,10 +1,14 @@ --- +ibmcloud_api_key: "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" #IBM Cloud API KEY service_instance_id: "bc895dc9-f626-41c0-bfd3-94a0d8942a5f" #IBM Cloud PowerVS service instance id region: "mon" #IBM Cloud PowerVS service instance region zone: "mon01" #IBM Cloud PowerVS service instance zone +resource_type: "" #CSI driver resource type. +resource_version: "" #CSI driver resource version. + masters: - - name: "mon01-master-0.rdr-pd-410.redhat.com" #OCP Nodes Master name + - name: "mon01-master-0.rdr-pd-410.redhat.com" #OCP Nodes Master name id: "03c203dc-814f-4e61-88c1-6af4cb6d2e3d" #OCP Nodes Master instance id - name: "mon01-master-1.rdr-pd-410.redhat.com" id: "0b67d0c2-339f-45ee-95b3-9b6d7c7524ef" @@ -12,7 +16,7 @@ masters: id: "38d98bb1-fb58-4ca8-a1c0-a7fb60625716" workers: - - name: "mon01-worker-0.rdr-pd-410.redhat.com" #OCP Nodes Worker name + - name: "mon01-worker-0.rdr-pd-410.redhat.com" #OCP Nodes Worker name id: "e24feb20-a962-49a9-9a24-1fe19861f81e" #OCP Nodes Worker instance id - name: "mon01-worker-1.rdr-pd-410.redhat.com" id: "e24feb20-a962-49a9-9a24-1fe19861f81e" diff --git a/playbooks/csi_driver_config.yaml b/playbooks/csi_driver_config.yaml deleted file mode 100644 index 8bab6683..00000000 --- a/playbooks/csi_driver_config.yaml +++ /dev/null @@ -1,5 +0,0 @@ ---- -- name: CSI Driver configuration - hosts: bastion[0] - roles: - - csi-driver-config diff --git a/playbooks/csi_driver_install.yaml b/playbooks/csi_driver_install.yaml new file mode 100644 index 00000000..58e571f7 --- /dev/null +++ b/playbooks/csi_driver_install.yaml @@ -0,0 +1,5 @@ +--- +- name: CSI Driver installation + hosts: bastion[0] + roles: + - csi-driver-install diff --git a/playbooks/roles/csi-driver-config/README.md b/playbooks/roles/csi-driver-config/README.md deleted file mode 100644 index 09a190cd..00000000 --- a/playbooks/roles/csi-driver-config/README.md +++ /dev/null @@ -1,45 +0,0 @@ -csi-driver-config: PowerVS Block CSI Driver Configuration -========= - -This module will perform necessary configuration on OCP nodes required for CSI Driver installation. - -Requirements ------------- - - - A working OCP 4.X cluster - -Role Variables --------------- - -| Variable | Required | Default | Comments | -|--------------------------------|----------|---------|---------------------------------------------------------------| -| service_instance_id | yes | | IBM Cloud PowerVS service instance id. | -| region | yes | | IBM Cloud PowerVS service instance region. eg. mon | -| zone | yes | | IBM Cloud PowerVS service instance zone. eg. mon01 | -| masters.name | yes | | OCP Nodes Master name. | -| masters.id | yes | | OCP Nodes Master instance id. | -| workers.name | yes | | OCP Nodes Worker name. | -| workers.id | yes | | OCP Nodes Worker instance id. | - -Dependencies ------------- - - - None - -Example Playbook ----------------- - - - name: CSI Driver configuration - hosts: bastion - roles: - - csi-driver-config - -License -------- - -See LICENCE.txt - -Author Information ------------------- - -Prajyot Parab (prajyot.parab2@ibm.com) diff --git a/playbooks/roles/csi-driver-install/README.md b/playbooks/roles/csi-driver-install/README.md new file mode 100644 index 00000000..5c41b5eb --- /dev/null +++ b/playbooks/roles/csi-driver-install/README.md @@ -0,0 +1,48 @@ +csi-driver-install: PowerVS Block CSI Driver Installation +========= + +This module will perform necessary configuration on OCP nodes required for CSI Driver installation. + +Requirements +------------ + + - A working OCP 4.X cluster + +Role Variables +-------------- + +| Variable | Required | Default | Comments | +|--------------------------------|----------|----------|---------------------------------------------------------------| +| resource_type | no | `stable` | Set to csi-driver resource type. | +| resource_version | no | `v0.1.0` | Set to csi-driver version. | +| ibmcloud_api_key | yes | | IBM Cloud API key. | +| service_instance_id | yes | | IBM Cloud PowerVS service instance id. | +| region | yes | | IBM Cloud PowerVS service instance region. eg. mon | +| zone | yes | | IBM Cloud PowerVS service instance zone. eg. mon01 | +| masters.name | yes | | OCP Nodes Master name. | +| masters.id | yes | | OCP Nodes Master instance id. | +| workers.name | yes | | OCP Nodes Worker name. | +| workers.id | yes | | OCP Nodes Worker instance id. | + +Dependencies +------------ + + - None + +Example Playbook +---------------- + + - name: CSI Driver installation + hosts: bastion + roles: + - csi-driver-install + +License +------- + +See LICENCE.txt + +Author Information +------------------ + +Prajyot Parab (prajyot.parab2@ibm.com) diff --git a/playbooks/roles/csi-driver-install/defaults/main.yaml b/playbooks/roles/csi-driver-install/defaults/main.yaml new file mode 100644 index 00000000..6bb62e9a --- /dev/null +++ b/playbooks/roles/csi-driver-install/defaults/main.yaml @@ -0,0 +1,5 @@ +--- +# defaults file + +resource_type: "stable" +resource_version: "v0.1.0" diff --git a/playbooks/roles/csi-driver-install/files/secret.yaml b/playbooks/roles/csi-driver-install/files/secret.yaml new file mode 100644 index 00000000..6083c2d6 --- /dev/null +++ b/playbooks/roles/csi-driver-install/files/secret.yaml @@ -0,0 +1,7 @@ +apiVersion: v1 +kind: Secret +metadata: + name: ibm-secret + namespace: kube-system +stringData: + IBMCLOUD_API_KEY: "" diff --git a/playbooks/roles/csi-driver-config/tasks/main.yaml b/playbooks/roles/csi-driver-install/tasks/config.yaml similarity index 100% rename from playbooks/roles/csi-driver-config/tasks/main.yaml rename to playbooks/roles/csi-driver-install/tasks/config.yaml diff --git a/playbooks/roles/csi-driver-install/tasks/install.yaml b/playbooks/roles/csi-driver-install/tasks/install.yaml new file mode 100644 index 00000000..4a77325a --- /dev/null +++ b/playbooks/roles/csi-driver-install/tasks/install.yaml @@ -0,0 +1,17 @@ +--- +# tasks file for csi driver installation + +- name: Copy secret template file + template: + src: ../files/secret.yaml + dest: /tmp/secret.yaml + mode: '0755' + +- name: Create secret resource + shell: | + sed 's/""/"{{ ibmcloud_api_key }}"/' /tmp/secret.yaml | kubectl apply -f - + args: + warn: false + +- name: Create csi driver resource + shell: kubectl apply -k "https://github.com/kubernetes-sigs/ibm-powervs-block-csi-driver/deploy/kubernetes/overlays/{{ resource_type }}?ref={{ resource_version }}" diff --git a/playbooks/roles/csi-driver-install/tasks/main.yaml b/playbooks/roles/csi-driver-install/tasks/main.yaml new file mode 100644 index 00000000..d6af851e --- /dev/null +++ b/playbooks/roles/csi-driver-install/tasks/main.yaml @@ -0,0 +1,8 @@ +--- +# tasks file for csi driver config and install + +- name: Run csi driver configuration tasks + import_tasks: config.yaml + +- name: Run csi driver installation tasks + import_tasks: install.yaml