462 Commits

Author SHA1 Message Date
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 9ad7d3490a Prepare 1.6.0 release. 2021-05-10 17:57:22 +02:00
Felix Fontein 316b5fa8e2 Clarify Windows (non-)support. (#137) 2021-05-10 17:14:46 +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 cffba7b15d Deprecate default for tls_hostname (#134)
* Start removing default.

* Add deprecate() function to AnsibleDockerClientBase.

* Deprecate default value for tls_hostname.

* Add changelog.

* Mention deprecation in documentation.
2021-05-04 07:50:33 +02:00
Felix Fontein 887472e60d Replace busybox image with another one to hopefully avoid removal problems. (#133) 2021-05-02 15:38:22 +02:00
Felix Fontein 799dcb9fd6 Add ansible-test config file. (#132) 2021-05-01 22:37:18 +02:00
Felix Fontein cc91e77280 Add Fedora 34 and remove Fedora 32 from devel tests. (#131) 2021-04-30 20:07:44 +00:00
Felix Fontein d63566dbd1 Use Ansible's codecov uploader. (#130) 2021-04-30 04:28:28 +02:00
daeseokyoun 3f8946a369 adds missing changelog fragment file (#126)
* adds missing changelog fragment file

changelog fragment file for #125

* Update changelogs/fragments/125-correct-error-message-for-docker-sdk-version.yaml

Co-authored-by: Felix Fontein <felix@fontein.de>
2021-04-17 13:26:15 +02:00
John R Barker ec94bd0172 Link to docs (#124)
* Link to docs

* Update README.md

Co-authored-by: Felix Fontein <felix@fontein.de>
2021-04-17 09:51:44 +02:00
daeseokyoun 18ccec6b10 common: correct error message for docker sdk version (#125)
Annouced that 5.0.0 in Docker SDK for Python do not support Python 2.7 anymore.
When the system use Python 2.7, and run "pip install docker" command to
install Docker SDK for Python module. Then the 5.0.0 will be installed.

When occurred the error for mismatching version for Python 2.7, the user
could not feature it out why it failed.

Co-authored-by: Daeseok Youn <daeseok.youn@navercorp.com>
2021-04-16 23:53:20 +02:00
Felix Fontein 90dbdbc47b Next expected release is 1.6.0. 2021-04-11 16:45:34 +02:00
Felix Fontein dd03fdbc6a Release 1.5.0. 1.5.0 2021-04-11 16:06:02 +02:00
Felix Fontein 5d7f970bc5 Prepare 1.5.0. 2021-04-11 15:52:19 +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 6722435e65 Fix CI for docker-py 5.0.0 (#120)
* ci_complete

* Let's see whether constraints help to avoid installing 5.0.0 with Python < 3.6.
2021-04-06 23:10:03 +02:00
Felix Fontein 30c00c4c26 ansible/ansible's stable-2.11 branch has been created. (#117) 2021-04-06 05:09:38 +00: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
Felix Fontein bc096a9ec9 Stop using ansible-galaxy collection install to install a collection due to https://github.com/ansible/galaxy/issues/2429. (#113) 2021-03-27 09:58:35 +01:00
Felix Fontein 89f6691753 Make sure we are logged out. (#112) 2021-03-26 21:37:54 +01:00
Andrew Klychkov 3e98245b23 AZP: update default container version (#110) 2021-03-26 12:49:43 +01:00
Felix Fontein 30af41b2b0 Next expected release is 1.5.0. 2021-03-14 22:56:39 +01:00
Felix Fontein 92db288917 Release 1.4.0. 1.4.0 2021-03-14 22:56:10 +01: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
Felix Fontein f338f3a5eb Fix docker_swarm_service tests. (#104) 2021-03-14 22:52:05 +01:00
Felix Fontein bfda6439ba Add 1.4.0 release summary. 2021-03-14 22:35:28 +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 a210a37ed8 Next regular release will be 1.4.0. 2021-03-08 02:51:54 +01:00
Felix Fontein 8f4f69975b Release 1.3.0. 1.3.0 2021-03-08 02:38:38 +01:00
Felix Fontein 0b82f921b8 Add 1.3.0 release summary. 2021-03-08 02:18:23 +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
Felix Fontein 6ccf60000e CI was accidentally not using 2.9/2.10 for remotes. (#97) 2021-03-02 22:36:03 +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
Felix Fontein f2d16da643 docker_image: improve/fix handling of image IDs (#87)
* Improve/fix handling of image IDs in docker_image.

* Fix syntax error.

* Linting.

* Fix name collision.

* Add various tests.

* Fix tests.

* Improve image finding by ID, and fix various related bugs.

* accept_not_there -> accept_missing_image.

* Remove unnecessary dummy variable.
2021-02-28 10:40:11 +01:00
Felix Fontein ed9bf1117f docker_image: allow to specify pull platform (#89)
* Allow to specify pull platform.

* Add basic test and document that the value is not used for idempotency at the moment.

* Fix pulling.

* Simplify code.

* Add API version for pull_platform.

* Move pull_platform into new pull option. Use apply_defaults=True to avoid some special logic.

* Add example.

* Remove apply_defaults=True.
2021-02-24 23:45:34 +01:00
Felix Fontein f107ab281f Add storage_opts option. (#93) 2021-02-24 23:01:34 +01:00
Piotr Wojciechowski 3ddd75ac68 Replicas max per node (#92)
* Adding 'replicas_max_per_node' placement parameter

* Adding 'replicas_max_per_node' placement parameter

* Adding 'replicas_max_per_node' integration tests

* Adding 'replicas_max_per_node' feature

* 'replicas_max_per_node' documentation update

* 'replicas_max_per_node' unit test fix

* Documentation and changelog updates

* Update changelogs/fragments/92-replicas-max-per-node.yml

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

Co-authored-by: WojciechowskiPiotr <devel@it-playground.pl>
Co-authored-by: Felix Fontein <felix@fontein.de>
2021-02-24 10:14:06 +01:00
Felix Fontein f5d68755c4 Fix healthcheck idempotency issue with strict comparison. (#88) 2021-02-17 22:56:52 +01:00
Felix Fontein 5fd13c79b6 Update targets for CI for devel branch; move some targets to stable-2.10. (#84) 2021-02-10 22:54:10 +01:00
Felix Fontein a3f6f1399f Bump AZP test container version. (#83) 2021-02-10 13:44:50 +01:00
Felix Fontein 5456006169 Fix CI (#82)
* Limit cryptography to < 3.4 for Python < 3.6.

* Work around old pip versions.
2021-02-09 06:47:26 +01:00
Felix Fontein 2d8f23822b Next expected release is 1.3.0. 2021-02-05 18:23:49 +01:00
Felix Fontein bbf8373f6c Release 1.2.2. 1.2.2 2021-02-05 17:52:24 +01:00
Felix Fontein 2d48253b6d Prepare 1.2.2 release. 2021-02-05 17:51:48 +01:00