diff --git a/ansible.cfg b/ansible.cfg index aff6d05..dceb2d4 100644 --- a/ansible.cfg +++ b/ansible.cfg @@ -1,4 +1,3 @@ [defaults] -inventory = ./inventory -group = testing +inventory = ./staging diff --git a/group_vars/testing.yml b/group_vars/testing.yml new file mode 100644 index 0000000..a75cf06 --- /dev/null +++ b/group_vars/testing.yml @@ -0,0 +1,3 @@ +--- + +docker_swarm_advertise_addr: eth1 diff --git a/roles/docker-swarm/tasks/main.yml b/roles/docker-swarm/tasks/main.yml index 4d78fe0..b15f36f 100644 --- a/roles/docker-swarm/tasks/main.yml +++ b/roles/docker-swarm/tasks/main.yml @@ -3,11 +3,19 @@ # needs community docker module installed: # run $`ansible-galaxy collection install community.docker` -- name: Ensure swarm is initialized +- name: Ensure swarm is initialized with default advertise address community.docker.docker_swarm: state: present - # advertise_addr: eth1 # necessary for testing setup on vagrant become: true + when: docker_swarm_advertise_addr is undefined + +# ensure setups with multiple ip addresses can be initialized +- name: Ensure swarm is initialized with specified advertise address + community.docker.docker_swarm: + state: present + advertise_addr: "{{ docker_swarm_advertise_addr }}" + become: true + when: docker_swarm_advertise_addr is defined - name: Ensure public network exists community.docker.docker_network: