summaryrefslogtreecommitdiff
path: root/roles/kubernetes/addons/openebs-zfs/tasks/main.yml
diff options
context:
space:
mode:
authorChristian Pointner <equinox@spreadspace.org>2022-08-21 17:25:05 +0200
committerChristian Pointner <equinox@spreadspace.org>2022-08-21 17:25:05 +0200
commitf154c11d49abc2a2696d8d55e7130f0ff55d0017 (patch)
tree94db66319d8ca11ebd78e2e4a05922ef1e56bfcc /roles/kubernetes/addons/openebs-zfs/tasks/main.yml
parentkubernetes/addon: add zfs-localpv provisioner (diff)
kubernetes/addons: rename zfs-localpv to openebs-zfs
Diffstat (limited to 'roles/kubernetes/addons/openebs-zfs/tasks/main.yml')
-rw-r--r--roles/kubernetes/addons/openebs-zfs/tasks/main.yml42
1 files changed, 42 insertions, 0 deletions
diff --git a/roles/kubernetes/addons/openebs-zfs/tasks/main.yml b/roles/kubernetes/addons/openebs-zfs/tasks/main.yml
new file mode 100644
index 00000000..577eef6d
--- /dev/null
+++ b/roles/kubernetes/addons/openebs-zfs/tasks/main.yml
@@ -0,0 +1,42 @@
+---
+- name: create base directory for openebs-zfs addon
+ file:
+ path: /etc/kubernetes/addons/openebs-zfs
+ state: directory
+
+- name: copy config for openebs-zfs
+ template:
+ src: "zfs-operator.{{ kubernetes_openebs_zfs_version }}.yml.j2"
+ dest: /etc/kubernetes/addons/openebs-zfs/config.yml
+
+- name: check if openebs-zfs is already installed
+ check_mode: no
+ command: kubectl --kubeconfig /etc/kubernetes/admin.conf diff -f /etc/kubernetes/addons/openebs-zfs/config.yml
+ failed_when: false
+ changed_when: false
+ register: kube_openebs_zfs_config_diff_result
+
+- name: install openebs-zfs onto the cluster
+ when: kube_openebs_zfs_config_diff_result.rc != 0
+ command: kubectl --kubeconfig /etc/kubernetes/admin.conf apply -f /etc/kubernetes/addons/openebs-zfs/config.yml
+
+
+- name: copy storageclasses config for openebs-zfs
+ loop: "{{ kubernetes_openebs_zfs_storage_classes | dict2items }}"
+ loop_control:
+ label: "{{ item.key }}"
+ template:
+ src: "storageclass.yml.j2"
+ dest: "/etc/kubernetes/addons/openebs-zfs/sc-{{ item.key }}.yml"
+
+- name: check if openebs-zfs storageclass already exists
+ loop: "{{ kubernetes_openebs_zfs_storage_classes | list }}"
+ check_mode: no
+ command: "kubectl --kubeconfig /etc/kubernetes/admin.conf diff -f /etc/kubernetes/addons/openebs-zfs/sc-{{ item }}.yml"
+ failed_when: false
+ changed_when: false
+ register: kube_openebs_zfs_sc_diff
+
+- name: install/update storageclasses for openebs-zfs
+ loop: "{{ kube_openebs_zfs_sc_diff.results | selectattr('rc', 'ne', 0) | map(attribute='item') }}"
+ command: "kubectl --kubeconfig /etc/kubernetes/admin.conf apply -f /etc/kubernetes/addons/openebs-zfs/sc-{{ item }}.yml"