From c6586829defc8467eb4e267d6b991482bd5825b6 Mon Sep 17 00:00:00 2001
From: Victor Morales <chipahuac@hotmail.com>
Date: Thu, 18 Apr 2019 02:24:10 -0700
Subject: [PATCH] Ensure /etc/bash_completion.d/ folder exists (#4543)

The Stateless ClearLinux feature[1] requires the creation of folders
in /etc folder. This change ensure the existence of the
/etc/bash_completion.d/ folder for ClearLinux Distribution.

[1] https://clearlinux.org/features/stateless
---
 roles/kubernetes-apps/helm/tasks/main.yml | 8 ++++++++
 roles/kubernetes/master/tasks/main.yml    | 8 ++++++++
 2 files changed, 16 insertions(+)

diff --git a/roles/kubernetes-apps/helm/tasks/main.yml b/roles/kubernetes-apps/helm/tasks/main.yml
index 6023bf90a..c8dfd81ba 100644
--- a/roles/kubernetes-apps/helm/tasks/main.yml
+++ b/roles/kubernetes-apps/helm/tasks/main.yml
@@ -80,6 +80,14 @@
     - inventory_hostname == groups['kube-master'][0]
   environment: "{{proxy_env}}"
 
+- name: Make sure bash_completion.d folder exists
+  file:
+    name: "/etc/bash_completion.d/"
+    state: directory
+  when:
+    - ((helm_container is defined and helm_container.changed) or (helm_task_result is defined and helm_task_result.changed))
+    - ansible_os_family in ["ClearLinux"]
+
 - name: Helm | Set up bash completion
   shell: "umask 022 && {{ bin_dir }}/helm completion bash >/etc/bash_completion.d/helm.sh"
   when:
diff --git a/roles/kubernetes/master/tasks/main.yml b/roles/kubernetes/master/tasks/main.yml
index 43d9f9fa9..31627fb33 100644
--- a/roles/kubernetes/master/tasks/main.yml
+++ b/roles/kubernetes/master/tasks/main.yml
@@ -42,6 +42,14 @@
     - kubectl
     - upgrade
 
+- name: Make sure bash_completion.d folder exists
+  file:
+    name: "/etc/bash_completion.d/"
+    state: directory
+  when: ansible_os_family in ["ClearLinux"]
+  tags:
+    - kubectl
+
 - name: Install kubectl bash completion
   shell: "{{ bin_dir }}/kubectl completion bash >/etc/bash_completion.d/kubectl.sh"
   when: ansible_os_family in ["Debian","RedHat"]
-- 
GitLab