[ANSIBLE] Setup cmctl autocompletion 40/125840/1
authorBartek Grzybowski <b.grzybowski@partner.samsung.com>
Tue, 16 Nov 2021 10:21:41 +0000 (11:21 +0100)
committerBartek Grzybowski <b.grzybowski@partner.samsung.com>
Tue, 23 Nov 2021 09:37:13 +0000 (10:37 +0100)
Bash autocompletion code is generated to facilitate autocompletion
for cmctl command.

Change-Id: I03494293bf91aada54af70f6e0fd2c49e2feea64
Issue-ID: OOM-2871
Signed-off-by: Bartek Grzybowski <b.grzybowski@partner.samsung.com>
ansible/roles/cert-manager/defaults/main.yml
ansible/roles/cert-manager/tasks/main.yml

index aa59c24..81a66f4 100644 (file)
@@ -7,3 +7,5 @@ cert_manager:
   helm_values:
     installCRDs: true
 cmctl_bin_dir: /usr/local/bin
+completion_dir: /etc/bash_completion.d
+completion_package: bash-completion
index 9bf7fde..7706365 100644 (file)
       - 'cmctl'
     remote_src: true
     mode: 0755
+
+- name: Install completion for the bash shell
+  package:
+    name: "{{ completion_package }}"
+    state: present
+
+- name: Generate shell autocompletion code for cmctl
+  command: cmctl completion bash
+  register: cmctl_completion
+  changed_when: false
+
+- name: Ensure bash completion dir exists
+  file:
+    path: "{{ completion_dir }}"
+    state: directory
+    mode: 0755
+
+- name: Install bash autocompletion code for cmctl
+  copy:
+    content: "{{ cmctl_completion.stdout }}"
+    dest: "{{ completion_dir }}/cmctl"
+    mode: 0644