Support multiple local volume provisioner StorageClasses (#3450)

- Local Volume StorageClass configuration is now manged by `local_volume_provisioner_storage_classes`, a list of maps that specifies local storage classes with `name` `host_dir` and `mount_dir` keys per entry
- Tasks and templates updated to loop through local volume storage classes
- Previous defaults for path/class names were not changed
- Fixed an issue where a `kubernetes/preinstall` was creating directories inconsistently with the `kubernetes-apps/external_provisioner/local_volume_provisioner` task
This commit is contained in:
Chad Swenson
2018-10-05 07:52:25 -05:00
committed by k8s-ci-robot
parent 9232261665
commit 6602760a48
12 changed files with 66 additions and 35 deletions

View File

@@ -2,13 +2,15 @@
- name: Local Volume Provisioner | Ensure base dir is created on all hosts
file:
path: "{{ local_volume_provisioner_base_dir }}"
path: "{{ item[1].host_dir }}"
state: directory
owner: root
group: root
mode: 0700
delegate_to: "{{ item }}"
with_items: "{{ groups['k8s-cluster'] }}"
delegate_to: "{{ item[0] }}"
with_nested:
- "{{ groups['k8s-cluster'] }}"
- "{{ local_volume_provisioner_storage_classes }}"
failed_when: false
- name: Local Volume Provisioner | Create addon dir