summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--ansible/roles/trove-setup/tasks/minions.yml10
1 files changed, 9 insertions, 1 deletions
diff --git a/ansible/roles/trove-setup/tasks/minions.yml b/ansible/roles/trove-setup/tasks/minions.yml
index a5b3d8d..929f893 100644
--- a/ansible/roles/trove-setup/tasks/minions.yml
+++ b/ansible/roles/trove-setup/tasks/minions.yml
@@ -4,6 +4,14 @@
# This is a workaround because the service module and the current
# systemd version doesn't work well enough with template units.
#
+# Ansible runs the following to check the status of a systemd unit:
+#
+# systemctl show <name-of-unit>
+#
+# With template units, this command will say to Ansible that the unit
+# "lorry-controller-minion@2" is running and enabled when only
+# "lorry-controller-minion@1" is. That's why this workaround is needed.
+#
# It ALWAYS runs `systemctl enable` for all the minions to be
# created, but it only reports that the status of the task has changed
# when in the stderr output is the string "ln -s" (which means the
@@ -11,7 +19,7 @@
- name: Enable as many MINIONS as specified in LORRY_CONTROLLER_MINIONS
shell: systemctl enable lorry-controller-minion@{{ item }}.service
with_sequence: count={{ LORRY_CONTROLLER_MINIONS }}
- changed_when: "'ln -s' in minions_creation.stderr"
+ changed_when: "'Created symlink' in minions_creation.stderr"
register: minions_creation
- name: Start the all the MINIONS created (if any)