diff --git a/changelogs/fragments/47608-docker_swarm-advertise_addr.yml b/changelogs/fragments/47608-docker_swarm-advertise_addr.yml new file mode 100644 index 0000000000..4deff2f38e --- /dev/null +++ b/changelogs/fragments/47608-docker_swarm-advertise_addr.yml @@ -0,0 +1,3 @@ +--- +bugfixes: +- "docker_swarm - making ``advertise_addr`` optional, as it was already documented." diff --git a/lib/ansible/modules/cloud/docker/docker_swarm.py b/lib/ansible/modules/cloud/docker/docker_swarm.py index ec2f8ef237..d3de6142c4 100644 --- a/lib/ansible/modules/cloud/docker/docker_swarm.py +++ b/lib/ansible/modules/cloud/docker/docker_swarm.py @@ -151,7 +151,6 @@ EXAMPLES = ''' - name: Init a new swarm with default parameters docker_swarm: state: present - advertise_addr: 192.168.1.1 - name: Update swarm configuration docker_swarm: @@ -330,9 +329,6 @@ class SwarmManager(DockerBaseClass): return try: - if self.parameters.advertise_addr is None: - self.client.fail(msg="advertise_addr is required to initialize a swarm cluster.") - self.client.init_swarm( advertise_addr=self.parameters.advertise_addr, listen_addr=self.parameters.listen_addr, force_new_cluster=self.parameters.force_new_cluster, swarm_spec=self.parameters.spec) diff --git a/test/integration/targets/docker_swarm/tasks/test_swarm.yml b/test/integration/targets/docker_swarm/tasks/test_swarm.yml index 9e6bf80844..14a2eaecd2 100644 --- a/test/integration/targets/docker_swarm/tasks/test_swarm.yml +++ b/test/integration/targets/docker_swarm/tasks/test_swarm.yml @@ -1,14 +1,7 @@ -- name: Test parameters with state=present +- name: Make sure we're not already using Docker swarm docker_swarm: - state: present - ignore_errors: yes - register: output - -- name: assert failure when called with state=init and no advertise_addr - assert: - that: - - 'output.failed' - - 'output.msg == "advertise_addr is required to initialize a swarm cluster."' + state: absent + force: true - name: Test parameters with state=join docker_swarm: @@ -37,7 +30,6 @@ - name: Create a Swarm cluster docker_swarm: state: present - advertise_addr: "{{ansible_default_ipv4.address}}" register: output - name: assert changed when create a new swarm cluster