Commit Graph

274 Commits

Author SHA1 Message Date
tigattack
4c2e7ebfbc
Fix typo in docker_image_build docs (#793) 2024-02-06 23:34:39 +01:00
Felix Fontein
7b554082ea
Improve parsing. (#786) 2024-02-01 17:52:31 +00:00
Felix Fontein
b5d085bb88
Parse build events from stderr. (#779) 2024-01-25 06:40:32 +01:00
Felix Fontein
32cb76b164
Add scale option. (#776) 2024-01-24 07:16:33 +01:00
Felix Fontein
eebb73a503
docker_compose_v2: add files option (#775)
* Add files option.

* Shorten lines.
2024-01-24 07:15:00 +01:00
Felix Fontein
b2a79d9eb7
Add docker_image_export module (#774)
* Add docker_image_export module.

* Add basic tests.

* Add more seealsos.
2024-01-22 22:03:38 +01:00
Felix Fontein
fcf608b334
Add networks[].mac_address option. (#763) 2024-01-20 14:23:12 +01:00
Felix Fontein
37d0a44c0b
Adjust descriptions. (#766) 2024-01-20 14:13:11 +01:00
Felix Fontein
ac41379119
Fix archive idempotency. (#765) 2024-01-20 14:12:55 +01:00
Felix Fontein
648e0652d5
mac_address no longer works with Docker API v1.44+. (#764) 2024-01-20 14:06:29 +01:00
Felix Fontein
c3322fd55b Fix typo. 2024-01-17 12:58:20 +01:00
Felix Fontein
6082efc855
Improve docs sharing for docker_compose_v2* modules; fix examples and return docs for docker_compose_v2_pull (#761)
* Move more common documentation to docs fragment.

* Fix examples and return values for docker_compose_v2_pull.

* Remove ignore.
2024-01-17 07:53:44 +01:00
Felix Fontein
22d956efa8
Allow to pass --build or --no-build to 'docker compose up'. (#760) 2024-01-17 06:57:35 +01:00
Simon Baerlocher
98a74b1f9c
feat: add docker-compose services support. (#758)
* feat: add docker-compose services support.

fix: typo

* fix: error

* fix: ci Job

* feat: add argument_spec

* fix: whitespace

* feat: refactored docker_compose_v2 in response to feedback
2024-01-16 19:07:12 +01:00
Felix Fontein
ab73061a5f
Also check for compose.yaml and compose.yml, and do not require the Compose file to be an actual file. (#759) 2024-01-16 19:03:29 +01:00
Felix Fontein
1c8272f821
Change Docker Stack modules to use common CLI module framework. (#745) 2024-01-14 08:54:06 +01:00
Felix Fontein
f429017d94
Add inventory filter capability (#698)
* Add inventory filter capability.

* Use community.library_inventory_filtering_v1 collection.

* Bump dependency to 1.0.0.

* Mention the new dependency in the changelog.
2024-01-13 15:51:02 +01:00
Felix Fontein
307dc4045a
Add docker_compose_v2_pull module (#751)
* Add docker_compose_v2_pull module.

* Improve and extend parsing of events.

* Add ignores.

* --policy is only available since Compose 2.22.0.
2024-01-13 14:36:26 +01:00
Felix Fontein
8ca5e2f810
Extract more common code and docs fragment for Docker Compose. (#748) 2024-01-07 18:17:10 +01:00
Felix Fontein
cb4dd2fed1
docker_compose_v2: move some code to module_utils (#747)
* Move some code to module_utils.

* Add unit tests.

Test cases are auto-generated from integration test logs.

* Rename ResourceEvent → Event.
2024-01-07 16:17:31 +01:00
Felix Fontein
eed89f32eb
docker_compose_v2: allow to specify pull policy; parse pull events; improve error handling; always return stderr (#746)
* Add pull option for 'docker compose up'.

* Improve dry-mode event parsing, and also parse pull-related events.

* Improve error handling, and add first tests.

* Fix action status documentation.

* Add more tests.

* Always return stderr.

This makes debugging misbehavior a lot easier since you can see
what 'docker compose' actually returned.

* Reformat existing tests.
2024-01-07 08:45:20 +01:00
Felix Fontein
4a5293503e
Rename ca_cert option to ca_path (#744)
* Rename ca_cert option to ca_path.

* Two more.
2024-01-06 17:03:39 +01:00
Felix Fontein
5f9f78ede6
Update/improve documentation (#743)
* Mention new modules in guide.

* Improve formatting.

* Improve docs for SSL version option.

* Add docs and example for module defaults group.

* Remove not applicable comment.

* Improvements.

* Remove dead link for Ansible Operator.

* Ansible-bender seems to be no longer actively maintained, and its more aimed at podman.

* Add note and preamble for example.
2024-01-06 10:07:53 +01:00
Felix Fontein
b774837183
Add docker_compose_v2 module (#739)
* Add docker_compose_v2 module.

* Add note on compatibility.

* Parse more events.

Emit warnings (or things we assume are warnings), and report unparsable
messages to the user so they can report them to us.
2024-01-03 07:05:08 +00:00
Felix Fontein
762ce3e1cf
Remove 'debug' parameter from new CLI modules. Move log writing to single function. (#740) 2024-01-02 21:10:59 +01:00
Felix Fontein
2caa77c032
Remove superfluous timeout argument. (#737) 2024-01-02 14:05:27 +01:00
Felix Fontein
ce7402dc9f
Add docker_image_build module. (#735) 2024-01-02 09:21:45 +01:00
Felix Fontein
199d9e50d3
Fix Unix socket path. (#736) 2024-01-01 22:53:58 +01:00
Felix Fontein
56bbef2b44 Fix example. 2024-01-01 18:09:08 +01:00
Felix Fontein
02bb4ceaf7 Update docs. 2023-12-31 15:14:01 +01:00
Felix Fontein
c3f8f80a75
Add docker_image_remove module. (#732) 2023-12-31 15:13:04 +01:00
Felix Fontein
66b341aa9e
Add docker_image_tag module (#730)
* Add docker_image_tag module.

* Add check mode tests.

* Improve and test image ID/digest handling.

* Adjust more tests.
2023-12-31 10:41:18 +01:00
Felix Fontein
20e78a92e0
Add docker_image_pull module (#728)
* Add docker_image_pull module.

* Support platform during idempotency check.

* Add diff mode, extend tests.

* Add image ID tests.
2023-12-31 09:51:42 +01:00
Felix Fontein
e22cee2c41
Add docker_image_push module. (#731) 2023-12-31 08:33:32 +00:00
Felix Fontein
0812d0b495
Support labels and shm_size for image build. Allow to specify (swap) memory limits in other units than bytes. (#727) 2023-12-28 21:42:55 +01:00
Felix Fontein
c4c347c626
Add proper platform handling. (#705) 2023-12-10 09:03:32 +01:00
Felix Fontein
b3ef5f5196
Clean up vendored Docker SDK for Python TLS handling code. (#722) 2023-12-09 23:19:36 +01:00
Felix Fontein
26772304f9
Do not accept tls_hostname for Docker SDK for Python 7.0.0+. (#721) 2023-12-09 23:16:03 +01:00
Felix Fontein
3aa1ddcca0
Docker SDK for Python 7+: make sure that ssl_version is not passed, and error out if it was explicitly set (#715)
* Do not accept ssl_version for Docker SDK for Python 7.0.0+.

* Add changelog fragment.

* Generally avoid sending None values to TLSConfig. Potentially prevents similar errors in the future, assuming the users do not pass values in.

* Python 2.6 compatibility.
2023-12-09 17:59:06 +00:00
Felix Fontein
80e39f84d8
Update docker_compose docs to indicate that it is incompatible with Docker SDK for Python 7+. (#717) 2023-12-09 14:40:15 +01:00
Felix Fontein
907dc28f73
Deprecate default 'ignore' of 'image_name_mismatch'. (#703) 2023-12-07 12:32:50 +01:00
Felix Fontein
d8cef6c71e
docker_container: refactoring preparing better comparisons (#713)
* Always get the container's image as well to allow get_value() to use that one too.

* Allow options and engines to overwrite comparison functions.

* Do not fail if image (by ID) cannot be found.

* Allow to control when container image is needed.

* Pass option to compare function.

* Allow to pass the host info for retrieving a value.

* Add changelog fragment.
2023-12-05 07:26:11 +01:00
Alexander Jähnel
4c220c4d74
fix(community.docker.docker_volume): labels can be none (#702)
* fix(community.docker.docker_volume): labels can be none

catch case where volume labels can are done (default) eg:

$ docker volume inspect foo
[    
    {
        "CreatedAt": "2023-11-11T12:55:23+01:00",                                                                                                            
        "Driver": "local",
        "Labels": null,
        "Mountpoint": "/var/lib/docker/volumes/foo/_data",
        "Name": "foo",
        "Options": {},
        "Scope": "local"
    }
]

* Update plugins/modules/docker_volume.py

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

* add(community.docker.docker_volume): changelog fragment

* Update changelogs/fragments/702-docker-volume-label-none.yaml

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

---------

Co-authored-by: Felix Fontein <felix@fontein.de>
2023-11-12 11:19:56 +01:00
Felix Fontein
14683421b5
Fix failing sanity test. (#700) 2023-11-08 13:23:39 +01:00
Felix Fontein
1c66f880ee
Fix typos, improve markup, improve scenario guide (#699)
* Fix typos.

* Improve markup.

* Mention missing 'new' modules in scenario guide.
2023-10-29 08:30:24 +01:00
Felix Fontein
fbc2750b6a
Do not pass data_path_addr for older Docker SDK for Python versions. (#696) 2023-10-14 23:48:46 +02:00
Felix Fontein
4d9b85c975
Update vendored Docker SDK for Python code (#694)
* vendored Docker SDK for Python code: volume: added support for bind propagation

https://docs.docker.com/storage/bind-mounts/#configure-bind-propagation

Cherry-picked from bea63224e0

Co-authored-by: Janne Jakob Fleischer <janne.fleischer@ils-forschung.de>
Co-authored-by: Milas Bowman <milas.bowman@docker.com>

* vendored Docker SDK for Python code: fix: eventlet compatibility

Check if poll attribute exists on select module instead of win32 platform check

The implementation done in #2865 is breaking usage of docker-py library within eventlet.
As per the Python `select.poll` documentation (https://docs.python.org/3/library/select.html#select.poll) and eventlet select removal advice (eventlet/eventlet#608 (comment)), it is preferable to use an implementation based on the availability of the `poll()` method that trying to check if the platform is `win32`.

Fixes https://github.com/docker/docker-py/issues/3131

Cherry-picked from 78439ebbe1

Co-authored-by: Mathieu Virbel <mat@meltingrocks.com>

* vendored Docker SDK for Python code: fix: use response.text to get string rather than bytes

Adjusted from 0618951093

Co-authored-by: Mehmet Nuri Deveci <5735811+mndeveci@users.noreply.github.com>
Co-authored-by: Milas Bowman <milas.bowman@docker.com>

* vendored Docker SDK for Python code: Fix missing asserts or assignments

Cherry-picked from 0566f1260c

Co-authored-by: Aarni Koskela <akx@iki.fi>

---------

Co-authored-by: Janne Jakob Fleischer <janne.fleischer@ils-forschung.de>
Co-authored-by: Milas Bowman <milas.bowman@docker.com>
Co-authored-by: Mathieu Virbel <mat@meltingrocks.com>
Co-authored-by: Mehmet Nuri Deveci <5735811+mndeveci@users.noreply.github.com>
Co-authored-by: Aarni Koskela <akx@iki.fi>
2023-10-08 18:16:27 +02:00
Ethan Paul
78801088ae
Update docker_stack_info module documentation to clarify functionality (#693)
* Update documentation to reflect module functionality

Clarify that this module is used for accessing information on all stacks
Add link to docker_stack_task_info module for users looking for detailed info on a single stack

Fixes #690

* Remove trailing whitespace, add trailing period.

---------

Co-authored-by: Felix Fontein <felix@fontein.de>
2023-10-07 14:04:59 +02:00
Felix Fontein
d266c69ddc
Fix documentation (#684)
* Fix documentation.

* Fix line length.
2023-09-10 21:27:26 +02:00
Felix Fontein
6f6dd14492
Ignore sanity check. (#679) 2023-08-11 09:01:39 +02:00