ansible/node: Conditionally use tarball install in "ctdb" role
authorMartin Schwenke <martin@meltin.net>
Thu, 18 Jun 2020 04:30:23 +0000 (14:30 +1000)
committerMartin Schwenke <martin@meltin.net>
Thu, 13 Aug 2020 00:55:08 +0000 (10:55 +1000)
This also sets up a ctdb_config_dir fact that can also be used in the
"nas" role.

Signed-off-by: Martin Schwenke <martin@meltin.net>
ansible/node/roles/ctdb/tasks/generic/ctdb_nodes.yml
ansible/node/roles/ctdb/tasks/main.yml

index 350aeeb9cee74816eae66cc7ff574117e1ae9072..2859ac926adfa171b46edbb8938af2dcc3467ba8 100644 (file)
@@ -1,5 +1,12 @@
 ---
+- name: determine CTDB nodes file location
+  vars:
+    tdir: "{{ tarball_install_prefix }}/etc/ctdb"
+    pdir: /etc/ctdb
+  set_fact:
+    ctdb_config_dir: "{{ tdir if tarball is not none else pdir }}"
+
 - name: generate CTDB nodes file
   template:
     src: ctdb_nodes.j2
-    dest: /etc/ctdb/nodes
+    dest: "{{ ctdb_config_dir }}/nodes"
index 2af86384ffd70ed2174ae97770d0593e189376c9..a7a6d7d232a8b6a4e27b0c0dd4ac8d47d2744863 100644 (file)
@@ -2,6 +2,19 @@
 - include_tasks: "{{ ansible_os_family | lower }}/{{ task }}.yml"
   with_list:
   - install_ctdb
+  loop_control:
+    loop_var: task
+  when: tarball is none
+
+- include_role:
+    name: tarball_common
+    tasks_from: install_ctdb.yml
+  vars:
+    source_tarball: "{{ tarball }}"
+  when: tarball is not none
+
+- include_tasks: "{{ ansible_os_family | lower }}/{{ task }}.yml"
+  with_list:
   - install_support
   loop_control:
     loop_var: task