fp/ansible/roles/swarm/tasks/manager.yml
CJ_Clippy a05bf6de74
Some checks failed
ci / test (push) Failing after 7m11s
fp/our CI/CD / build (push) Successful in 1m2s
use worker placement constraints
2025-10-12 14:41:45 -08:00

41 lines
1.3 KiB
YAML

---
- name: Init a new swarm with default parameters
community.docker.docker_swarm:
state: present
listen_addr: "{{ internal_ip }}:2377"
advertise_addr: "{{ internal_ip }}:4567"
register: swarm_create
- name: Set join tokens as host facts (manager only)
ansible.builtin.set_fact:
swarm_worker_join_token: "{{ swarm_create.swarm_facts.JoinTokens.Worker }}"
swarm_manager_join_token: "{{ swarm_create.swarm_facts.JoinTokens.Manager }}"
- name: Debug
ansible.builtin.debug:
var: swarm_create
- name: Get worker join token
ansible.builtin.set_fact:
swarm_worker_join_token: "{{ swarm_create.swarm_facts.JoinTokens.Worker }}"
- name: Get manager join token
ansible.builtin.set_fact:
swarm_manager_join_token: "{{ swarm_create.swarm_facts.JoinTokens.Manager }}"
- name: Get info on all swarm nodes
community.docker.docker_node_info:
register: swarm_node_infos
- name: Debug swarm node info
debug:
var: swarm_node_infos
- name: Set node labels based on hostvars
community.docker.docker_node:
hostname: "{{ item }}"
labels:
capabilities_gpu: "{{ hostvars[item].capabilities_gpu | default('false') }}"
capabilities_dedicated_cpu: "{{ hostvars[item].capabilities_dedicated_cpu | default('false') }}"
loop: "{{ groups['swarm'] }}"