From ecb70e22c29ea0abf4201bd6098543c15a8f8e2e Mon Sep 17 00:00:00 2001 From: Simar Date: Sun, 3 Aug 2025 09:33:26 +0300 Subject: [PATCH] Add docker-swarm-cluster/roles/swarm/tasks/main.yml --- .../roles/swarm/tasks/main.yml | 24 +++++++++++++++++++ 1 file changed, 24 insertions(+) create mode 100644 docker-swarm-cluster/roles/swarm/tasks/main.yml diff --git a/docker-swarm-cluster/roles/swarm/tasks/main.yml b/docker-swarm-cluster/roles/swarm/tasks/main.yml new file mode 100644 index 0000000..f5e02d1 --- /dev/null +++ b/docker-swarm-cluster/roles/swarm/tasks/main.yml @@ -0,0 +1,24 @@ +--- +- block: + - name: Initialize the Docker Swarm on Manager node + become: yes + command: > + docker swarm init + --advertise-addr {{ manager_ip }} + register: result + when: inventory_hostname == 'manager1' + + - set_fact: + join_command: "{{ result.stdout_lines[-1].split(':')[1].strip() }}" + when: inventory_hostname == 'manager1' and result is success + + - debug: + msg: "Swarm initialized successfully with token: {{ join_command }}" + when: inventory_hostname == 'manager1' and result is success + +- block: + - name: Join Worker nodes to Swarm cluster + become: yes + shell: | + echo "{{ join_command }}" | docker swarm join --token {{ swarm_token_worker }} {{ manager_ip }}:2377 + when: inventory_hostname != 'manager1' \ No newline at end of file