summaryrefslogtreecommitdiff
path: root/playbooks/roles/swarm-init/tasks
diff options
context:
space:
mode:
authorElizabeth Hunt <me@liz.coffee>2025-03-16 21:23:16 -0700
committerElizabeth Hunt <me@liz.coffee>2025-03-16 21:23:16 -0700
commit654694f9276cd9c30a7f2690f9336cf63a0172ef (patch)
tree12e4e8ec000478c982152e56d327afdef26a3b6a /playbooks/roles/swarm-init/tasks
parentfb7e6890d8516618fa3baec0edf84048e2b6601d (diff)
downloadinfra-654694f9276cd9c30a7f2690f9336cf63a0172ef.tar.gz
infra-654694f9276cd9c30a7f2690f9336cf63a0172ef.zip
a good starting point for traefik
Diffstat (limited to 'playbooks/roles/swarm-init/tasks')
-rw-r--r--playbooks/roles/swarm-init/tasks/main.yml19
1 files changed, 19 insertions, 0 deletions
diff --git a/playbooks/roles/swarm-init/tasks/main.yml b/playbooks/roles/swarm-init/tasks/main.yml
new file mode 100644
index 0000000..19967e9
--- /dev/null
+++ b/playbooks/roles/swarm-init/tasks/main.yml
@@ -0,0 +1,19 @@
+---
+
+- name: Check Docker Swarm Status
+ ansible.builtin.command: docker info --format '{{ "{{.Swarm.LocalNodeState}}" }}'
+ register: docker_swarm_status
+ changed_when: false
+
+- name: Initialize Docker Swarm if Inactive
+ ansible.builtin.command:
+ cmd: docker swarm init --advertise-addr "{{ ansible_default_ipv4.address }}"
+ when: docker_swarm_status.stdout == "inactive"
+ register: swarm_init
+ changed_when: '"Swarm initialized" in swarm_init.stdout'
+
+- name: Retrieve Docker Swarm Manager Token
+ ansible.builtin.command: docker swarm join-token manager -q
+ register: manager_token
+ changed_when: false
+