Commit Graph

99 Commits

Author SHA1 Message Date
Felix Fontein
74290165e9 [stable-2] Make current_container_facts work with newer Docker versions and latest ansible-test container changes (#512)
* Make current_container_facts work with newer Docker versions and latest ansible-test container changes (#510)

* Add more debug output.

* Add basic integration test.

* Split into lines.

* Fix docker detection, add podman detection.

ci_complete

* Improve regular expression.

* Document that this module is trying its best, but might not be perfect.

* Update comment.

(cherry picked from commit c2d84efccb)

* Remove new feature (podman support).

(cherry picked from commit 3da9aa3b9c)
2022-12-01 00:15:01 +01:00
patchback[bot]
7abd55adba
Fix non-matching defaults. (#494) (#495)
(cherry picked from commit 1ac3a99e7c)

Co-authored-by: Felix Fontein <felix@fontein.de>
2022-11-01 19:20:29 +01:00
patchback[bot]
ce8e33153c
added documentation to indicate docker_swarm_service does not currently support operating on stack based services. (#491) (#492)
(cherry picked from commit df864221d6)

Co-authored-by: James A. Robinson <jim.robinson@gmail.com>
2022-10-26 13:13:23 +02:00
patchback[bot]
f50c4ea538
Improve docker_compose example (#470) (#473)
* Improve compose docs.

* Also adjust inline v1 example.

(cherry picked from commit 3b41e7d6a8)

Co-authored-by: Felix Fontein <felix@fontein.de>
2022-09-08 06:43:52 +02:00
patchback[bot]
abba2bf73d
Clarify that BuildKit / buildx cannot be used with docker_image. (#468) (#471)
(cherry picked from commit 9458bc6e62)

Co-authored-by: Felix Fontein <felix@fontein.de>
2022-09-08 06:38:22 +02:00
patchback[bot]
ee48f36269
Fix error formatting bug. (#448) (#449)
(cherry picked from commit f513ba2c59)

Co-authored-by: Felix Fontein <felix@fontein.de>
2022-08-12 14:15:36 +02:00
patchback[bot]
23cefae716
Remove trailing space (#375) (#377)
* Remove trailing space

* Update plugins/modules/docker_compose.py

Co-authored-by: Felix Fontein <felix@fontein.de>
(cherry picked from commit 9c33aa5d12)

Co-authored-by: Garrit Franke <32395585+garritfra@users.noreply.github.com>
2022-05-27 10:44:30 +02:00
patchback[bot]
0466d43d03
docker_container: fail if there are too many parts in a parsed port (#367) (#371)
* Fail if there are too many parts in a parsed port.

* Add tests.

* Prevent bad parsing.

(cherry picked from commit 401a76ff00)

Co-authored-by: Felix Fontein <felix@fontein.de>
2022-05-22 17:42:05 +02:00
patchback[bot]
31966e90a4
Avoid breakage with Python 3.13. (#354) (#355)
(cherry picked from commit fb55b1d780)

Co-authored-by: Felix Fontein <felix@fontein.de>
2022-05-19 07:07:46 +02:00
patchback[bot]
f36b6ee7fd
Update docker module documentation for log_options (#317) (#318)
* Update docker module documentation for log_options

Add that log_driver must be specified for log_options to take effect

* Update plugins/modules/docker_container.py

Co-authored-by: Felix Fontein <felix@fontein.de>
(cherry picked from commit 69399d736d)

Co-authored-by: addisonshelley <102306748+addisonshelley@users.noreply.github.com>
2022-03-27 16:08:29 +02:00
patchback[bot]
d6121fce86
Fix warning/error extraction. (#305) (#306)
(cherry picked from commit ba5e6f89f3)

Co-authored-by: Felix Fontein <felix@fontein.de>
2022-03-14 21:13:28 +01:00
patchback[bot]
fd81f1d008
More small docs fixes. (#281) (#282)
(cherry picked from commit fbbc0898ed)

Co-authored-by: Felix Fontein <felix@fontein.de>
2022-01-10 08:27:12 +01:00
patchback[bot]
f4d3188199
Improve documentation (#278) (#279)
* Improve documentation.

* More fixes.

(cherry picked from commit 3d20ba1bc2)

Co-authored-by: Felix Fontein <felix@fontein.de>
2022-01-09 15:12:51 +01:00
patchback[bot]
8ac6ad52a1
Added cap_add to the documentation for capabilities for easier search (#265) (#268)
* added cap_add to the documentation for capabilities for easier search comming from docker

* added equivalent syntax for docker cli and compose to capabilities docs

* added equivalent syntax for docker cli and compose to capabilities docs

(cherry picked from commit 15ab747d86)

Co-authored-by: Richard James Acton <richardjacton@pm.me>
2022-01-05 13:35:27 +01:00
patchback[bot]
b57a73e2bf
Prepare for distutils.version being removed in Python 3.12 (#258) (#260)
* Prepare for distutils.version being removed in Python 2.12.

* Fix copy'n'paste error.

* Fix import.

* Re-add Loose prefix.

* Fix Python version typo.

* Improve formulation.

* Move message into own line.

* Fix casing, now that the object is no longer called Version.

(cherry picked from commit 4b235a2607)

Co-authored-by: Felix Fontein <felix@fontein.de>
2021-12-24 12:15:43 +01:00
patchback[bot]
6dba5abdbc
Set minimal Docker API version for chdir to 1.35. (#253) (#256)
(cherry picked from commit 5a23c4d336)

Co-authored-by: Felix Fontein <felix@fontein.de>
2021-12-22 17:32:42 +01:00
patchback[bot]
9f36cf139c
docker_container_exec: improve handling of chdir option (#243) (#247)
* Only pass chdir on when it is provided, and prevent this option from being used for Docker SDK for Python < 3.0.0.

* Also fix docker_api connection plugin.

(cherry picked from commit bed775c4ea)

Co-authored-by: Felix Fontein <felix@fontein.de>
2021-11-30 12:20:47 +01:00
patchback[bot]
f8c04cb990
Fix docs issues. (#232) (#233)
(cherry picked from commit 5233936262)

Co-authored-by: Felix Fontein <felix@fontein.de>
2021-11-09 20:34:18 +01:00
Felix Fontein
a9b238ee81
Emphasize that docker_compose requires docker-compose < 2.0.0. (#217) 2021-10-05 07:30:41 +02:00
Ajpantuso
b5263ccbd0
Initial commit (#208) 2021-09-17 17:00:14 -04:00
Felix Fontein
5d861004db
docker_config and docker_secret: add data_src option (#203)
* Add data_src options to docker_config and docker_secret.

* Add examples.

* Fix test.

* Another fix.
2021-09-12 09:42:03 +02:00
Ajpantuso
4dfc3ae5d7
docker_compose - Fix idempotency when services have no enabled profiles (#192)
* Initial Commit

* Adding integration tests

* Fixing integration and adding changelog fragment
2021-08-20 13:33:35 +02:00
Felix Fontein
6f52747693
docker_container: fix handling of command and entrypoint in a backwards-compatible way (#186)
* Fix handling of command and entrypoint in a backwards-compatible way.

* Fix copy'n'paste error.

* Fix some more.

* Improve documentation.

* Keep command and entrypoint as lists and not as strings.

* Simplify code, since we're already emitting the deprecation warning in this case during parameter processing.

* Change default only in community.docker 3.0.0.

* Update tests/integration/targets/docker_container/tasks/tests/options.yml

Co-authored-by: Brian Scholer <1260690+briantist@users.noreply.github.com>

* Apply suggestion to more places.

Co-authored-by: Brian Scholer <1260690+briantist@users.noreply.github.com>
2021-08-02 19:31:46 +02:00
Ajpantuso
03f649f43c
docker_compose - Fix startup errors for docker-compose versions <1.17.0 (#182)
* Initial Commit

* Adding changelog fragment

* Applying review suggestions
2021-07-31 11:37:02 +02:00
Felix Fontein
72fb3a5d1a
Fix check_mode for some _info modules. (#183) 2021-07-28 21:49:15 +02:00
Ajpantuso
b2430f756f
Allowing anonymous volumes via mounts option (#181)
* Initial Commit

* Adding changelog fragment
2021-07-27 17:35:40 +00:00
Felix Fontein
e2785de840
Make sure that 'container' is returned in more circumstances, and improve documentation when it is actually returned (#178)
* Make sure that 'container' is returned in more circumstances, and improve documentation when it is actually returned.

* Fix typos.
2021-07-24 21:01:14 +02:00
Ajpantuso
9b661a6ac2
docker_compose - add env_file option (#174)
* Initial commit

* Adding changelog and fixing docs

* Fixing integration tests

* Restricting minimum docker-compose versions for tests

* Applying initial review suggestions
2021-07-16 19:01:20 +02:00
Lauri Tirkkonen
a0f2091e6a
put example addresses in actual RFC1918 range (#170)
172.1/16, 172.3/16 and 172.4/16 are not in the 172.16/12 range.

https://datatracker.ietf.org/doc/html/rfc1918#section-3
2021-07-01 19:06:18 +02:00
Ajpantuso
072d96ca62
docker_compose - Adding profiles option. (#167)
* Initial commit

* fixing tests

* Adding changelog fragment
2021-06-28 20:54:54 +02:00
Ajpantuso
49cb513244
docker_container - adding publish_all_ports option (#162)
* Initial commit

* Adding changelog fragment

* Updating deprecation notice

* Adding integration test

* Applying second round of review suggestions

* Updating docs and cleaning up integration tests

* Updating test loop logic
2021-06-27 16:51:30 +02:00
Felix Fontein
badcd61a74
Replace ansible.module_utils._text by ansible.module_utils.common.text.converters. (#164) 2021-06-26 13:39:51 +02:00
Ajpantuso
825a4f74d3
docker_plugin - adding alias option and general cleanup (#161)
* Initial Commit

* Adding changelog fragment
2021-06-25 21:45:53 +02:00
Ajpantuso
49c8fd0aa5
docker_host_info - Allow filters which are passed as lists (#160)
* Initial Commit

* Adding integration tests

* Adding example in docs

* Adding changelog fragment

* Applying initial review suggestions
2021-06-22 22:27:38 +02:00
Felix Fontein
af2b3b0493
docker_compose: fix idempotency for stopped services (#159)
* Always use |= instead of = when updating changed status.

* Fix idempotence bug.

* Add changelog fragment.
2021-06-22 12:07:50 +02:00
Felix Fontein
d0d5bdb905
docker_container: improve documentation for env w.r.t. automatic type conversions (#158)
* Improve documentation for docker_container's env w.r.t. automatic type conversions.

* Update plugins/modules/docker_container.py

Co-authored-by: Amin Vakil <info@aminvakil.com>

Co-authored-by: Amin Vakil <info@aminvakil.com>
2021-06-21 12:40:53 +02:00
Felix Fontein
b775bac593
docker_image: allow to tag images by name, improve docs (#149)
* Add test to tag image with ID.

* Document that source=local also works with image IDs.

* Improve 'repository' documentation.

* Fix typo.

* Looks like a fix is needed to make this work.

* ...

* Avoid unnecessary re.search() calls.

* Add changelog fragment.

* Improve main description.

* Remove import.
2021-06-07 07:01:10 +02:00
Shane St Savage
a512e7fb9e
feat: allow unlimited memory_swap in docker_container (#138)
* feat: allow unlimited memory_swap in docker_container

summary: in docker_container, allow `memory_swap: values
`unlimited` and `-1` for unlimited container swap usage.

`--memory-swap=-1` is a valid docker run value allowing
unlimited swap usage. `docker_container` should allow
setting this value via `memory_swap` values `unlimited`
and `-1` as it sometimes must explicitly be set to prevent
docker from attempting to limit swap usage to double the
`--memory` value by default. In rootless docker environments,
attempting to set `memory-swap` usage limits will result in an error
if the user doesn't have the ability to do so. Allowing explicit
unlimited swap usage via docker_container will prevent these errors.

https://docs.docker.com/config/containers/resource_constraints/#--memory-swap-details

* Update tests/integration/targets/docker_container/tasks/tests/options.yml

* Apply suggestions from code review

Co-authored-by: Felix Fontein <felix@fontein.de>
2021-05-10 20:24:04 +02:00
Felix Fontein
3a0d3e15fb
Configure plugin after installing it. (#135) 2021-05-07 07:14:28 +02:00
Felix Fontein
74475d1d9b
docker_swarm_service: fix crash during idempotence check if published_port is not specified (#136)
* Avoid crash during idempotence check if published_port is not specified.

* Add tests.

* Convert lambda to function.
2021-05-05 08:00:22 +02:00
Alexandr N. Zamaraev
859bc29f9e
docker_compose: fix #12 (#119)
* fix #12

* Create 12-correct_pull_wo_starting.yaml

* Update changelogs/fragments/12-correct_pull_wo_starting.yaml

Co-authored-by: Felix Fontein <felix@fontein.de>

* Update changelogs/fragments/12-correct_pull_wo_starting.yaml

Co-authored-by: Amin Vakil <info@aminvakil.com>

* Update docker_compose.py

Co-authored-by: Felix Fontein <felix@fontein.de>
Co-authored-by: Amin Vakil <info@aminvakil.com>
2021-05-04 07:53:38 +02:00
Felix Fontein
a3b9648233
Improve exception handling. (#121) 2021-04-08 08:00:01 +02:00
Felix Fontein
ff503d9bd7
Add docker_container_exec module (#105)
* Move some code from plugin_utils to module_utils.

* First version of docker_container_exec module.

* Linting.

* Avoid using display.

* Move common socket_handler code to module_utils.

* Add module support, use it in docker_container_exec.

* Add tests.

* Fix copyright lines.

* Add this and other 'new' modules to README.

* Apply suggestions from code review

Co-authored-by: Andrew Klychkov <aaklychkov@mail.ru>

* Update plugins/modules/docker_container_exec.py

Co-authored-by: Andrew Klychkov <aaklychkov@mail.ru>
2021-04-06 23:53:17 +02:00
Felix Fontein
e9b10ee0a4
Add use_ssh_client flag (#114)
* Add use_ssh_client option.

* Unrelated cleanup (unneeded imports).

* Add SSH connection tests.
2021-04-02 10:14:09 +02:00
sgpinkus
149a3abbc3
Fix update_failure_action KeyError in docker_swarm_service (#100)
* Fix update_failure_action KeyError in docker_swarm_service.py

* Update plugins/modules/docker_swarm_service.py

Co-authored-by: Felix Fontein <felix@fontein.de>

Co-authored-by: Felix Fontein <felix@fontein.de>
2021-03-14 22:52:27 +01:00
sgpinkus
5b74313023
Make docker_swarm_service option publish.published_port optional (#101)
* Change docker_swarm_service option publish.published_port from required to optional. If not specified random high port is assigned by docker.

* Update changelogs/fragments/101-make-service-published-port-optional.yaml

Co-authored-by: Felix Fontein <felix@fontein.de>

Co-authored-by: Felix Fontein <felix@fontein.de>
2021-03-13 13:37:56 +01:00
Felix Fontein
b42b76fc45
[security] docker_swarm: mark join_token as no_log (#103)
* Mark join_token as no_log.

* Apply suggestions from code review

Co-authored-by: Piotr Wojciechowski <23406016+WojciechowskiPiotr@users.noreply.github.com>

Co-authored-by: Piotr Wojciechowski <23406016+WojciechowskiPiotr@users.noreply.github.com>
2021-03-12 22:31:39 +01:00
Felix Fontein
e42aadf3e9
docker_swarm_service: flag secrets option as not secret (#102)
* Flag secrets option as not secret.

* Add changelog fragment.
2021-03-12 22:01:11 +01:00
Felix Fontein
f142f8c86d
Add docker_image_load module (#90)
* Add docker_image_load module.

* Polish module.

* Fix bug and add tests.

* Apply suggestions from code review

Co-authored-by: Amin Vakil <info@aminvakil.com>

* Make sure that containers that still exist are also cleared.

* Always return stdout.

* Try to work around removal problems.

* Accept that the Docker daemon sometimes only reports the named image.

* More debug output.

* Also prune containers, in the hope that these cause the problems.

* Let's see whether pruning containers (but not images) is enough.

* Apply suggestions from code review

Co-authored-by: Andrew Klychkov <aaklychkov@mail.ru>

* Update plugins/modules/docker_image_load.py

Co-authored-by: Andrew Klychkov <aaklychkov@mail.ru>

Co-authored-by: Amin Vakil <info@aminvakil.com>
Co-authored-by: Andrew Klychkov <aaklychkov@mail.ru>
2021-03-05 09:06:21 +01:00
Sakar
da62cfc24a
New module docker_plugin (#95)
* New module docker-plugin with integration_tests

* Fix sanity test

* Changes made as per the reviewer suggested

* Fix check-mode and test directory

* Fix Sanity

* fix integration

* fix integration

* fix integration

* fix integration
2021-03-01 13:02:53 +01:00