From df159d5f7429e0bf988038e65718b795ef599c35 Mon Sep 17 00:00:00 2001 From: aleidk Date: Wed, 4 Dec 2024 16:55:52 -0300 Subject: [PATCH] wip: enable docker task --- hosts/inventory.ini | 5 ++++- playbooks/setup/alpine.yaml | 32 +++++++++++++++++++++++++++----- 2 files changed, 31 insertions(+), 6 deletions(-) diff --git a/hosts/inventory.ini b/hosts/inventory.ini index 43b2f86..5f3bcf1 100644 --- a/hosts/inventory.ini +++ b/hosts/inventory.ini @@ -1,2 +1,5 @@ [homelab] -10.0.10.50 +10.0.10.50 docker_swarm_manager=true + +[docker] +10.0.10.50 docker_swarm_manager=true diff --git a/playbooks/setup/alpine.yaml b/playbooks/setup/alpine.yaml index d6f3d27..6ee0539 100644 --- a/playbooks/setup/alpine.yaml +++ b/playbooks/setup/alpine.yaml @@ -1,3 +1,6 @@ + +# > /COPILOT_GENERATE I'm writing an ansible playbook to setup a new alpine server, I want you to help me to generate some tasks + - name: Setup an alpine machine hosts: homelab user: root @@ -82,6 +85,18 @@ key: "{{ robo.authorized_key }}" key_options: "command=\"{{ robo.allowed_commands | join('; ') }}\"" + handlers: + - name: Restart sshd + ansible.builtin.service: + name: sshd + state: restarted + +- name: Setup Docker + hosts: docker + user: root + vars_files: + ../../variables/secrets.yaml + tasks: - name: Install packages ansible.builtin.package: state: present @@ -94,8 +109,15 @@ state: started enabled: true - handlers: - - name: Restart sshd - ansible.builtin.service: - name: sshd - state: restarted + - name: Enable Docker Swarm mode + community.docker.docker_swarm: + state: present + advertise_addr: "{{ ansible_default_ipv4.address }}" + when: docker_swarm_manager | bool + + - name: Join Docker Swarm as a worker + community.docker.docker_swarm: + state: join + join_token: "{{ hostvars['manager']['docker_swarm_worker_token'] }}" + remote_addrs: ["{{ hostvars['manager']['ansible_default_ipv4']['address'] }}"] + when: not docker_swarm_manager | bool