Felix Fontein
174c0c8058
Docker Compose 5+: improve image layer event parsing ( #1219 )
...
* Remove long deprecated version fields.
* Add first JSON event parsing tests.
* Improve image layer event parsing for Compose 5+.
* Add 'Working' to image working actions.
* Add changelog fragment.
* Shorten lines.
* Adjust docker_compose_v2_run tests.
2025-12-06 17:48:17 +01:00
Felix Fontein
846fc8564b
docker_container: do not send wrong host IP for duplicate ports ( #1214 )
...
* DRY.
* Port spec can be a list of port specs.
* Add changelog fragment.
* Add test.
2025-11-26 07:29:30 +01:00
Felix Fontein
5d2b4085ec
Remove code that's not used. ( #1209 )
2025-11-23 09:48:34 +01:00
Felix Fontein
c61c0e24b8
Improve error/warning messages w.r.t. YAML quoting ( #1205 )
...
* Remove superfluous conversions/assignments.
* Improve messages.
2025-11-16 12:32:51 +01:00
Felix Fontein
3da2799e03
Fix IP subnet and address idempotency. ( #1201 )
2025-11-16 10:47:35 +01:00
Felix Fontein
90c4b4c543
docker_image(_pull), docker_container: fix compatibility with Docker 29.0.0 ( #1192 )
...
* Add debug flag to failing task.
* Add more debug output.
* Fix pull idempotency.
* Revert "Add more debug output."
This reverts commit 64020149bf .
* Fix casing.
* Remove unreliable test.
* Add 'debug: true' to all tasks.
* Reformat.
* Fix idempotency problem for IPv6 addresses.
* Fix expose ranges handling.
* Update changelog fragment to also mention other affected modules.
2025-11-15 17:13:46 +01:00
Felix Fontein
ec14568b22
Work around Docker 29.0.0 bug. ( #1187 )
2025-11-12 19:21:55 +01:00
Felix Fontein
dee138bc4b
Fix typing info. ( #1183 )
2025-11-06 07:15:05 +01:00
Felix Fontein
dbc7b0ec18
Cleanup with ruff check ( #1182 )
...
* Implement improvements suggested by ruff check.
* Add ruff check to CI.
2025-10-28 06:58:15 +01:00
Felix Fontein
be000755fc
Python code modernization, 8/n ( #1179 )
...
* Use to_text instead of to_native.
* Remove no longer needed pylint ignores.
* Remove another pylint ignore.
* Remove no longer needed ignore.
* Address redefined-outer-name.
* Address consider-using-with.
2025-10-25 00:36:04 +00:00
Felix Fontein
6ad4bfcd40
Add typing information, 2/n ( #1178 )
...
* Add typing to Docker Stack modules. Clean modules up.
* Add typing to Docker Swarm modules.
* Add typing to unit tests.
* Add more typing.
* Add ignore.txt entries.
2025-10-25 01:16:04 +02:00
Felix Fontein
3350283bcc
Add typing information, 1/2 ( #1176 )
...
* Re-enable typing and improve config.
* Make mypy pass.
* Improve settings.
* First batch of types.
* Add more type hints.
* Fixes.
* Format.
* Fix split_port() without returning to previous type chaos.
* Continue with type hints (and ignores).
2025-10-23 07:05:42 +02:00
Felix Fontein
6b5d76bdee
Adjust 'report this' messages to only report if the latest version still has this problem. ( #1173 )
2025-10-16 17:41:11 +02:00
Felix Fontein
3ff2cfe615
Drop support for docker-py. ( #1171 )
2025-10-15 21:55:07 +02:00
Felix Fontein
0646e52bae
Python code modernization, 7/n ( #1170 )
...
* Address abstract-method.
* Fix broken signature.
2025-10-15 21:27:20 +02:00
Felix Fontein
6f9ebc3f14
Fix issues with pylint 4.0.
2025-10-13 22:09:31 +02:00
Felix Fontein
17e30adb93
selectors is now part of stdlib. ( #1166 )
2025-10-12 22:00:51 +02:00
Felix Fontein
c75aa5dd64
Python code modernization, 5/n ( #1165 )
...
* Address raise-missing-from.
* Address simplifiable-if-expression.
* Address unnecessary-dunder-call.
* Address unnecessary-pass.
* Address use-list-literal.
* Address unused-variable.
* Address use-dict-literal.
2025-10-12 16:02:27 +02:00
Felix Fontein
cad22de628
Python code modernization, 4/n ( #1162 )
...
* Address attribute-defined-outside-init.
* Address broad-exception-raised.
* Address broad-exception-caught.
* Address consider-iterating-dictionary.
* Address consider-using-dict-comprehension.
* Address consider-using-f-string.
* Address consider-using-in.
* Address consider-using-max-builtin.
* Address some consider-using-with.
* Address invalid-name.
* Address keyword-arg-before-vararg.
* Address line-too-long.
* Address no-else-continue.
* Address no-else-raise.
* Address no-else-return.
* Remove broken dead code.
* Make consider-using-f-string changes compatible with older Python versions.
* Python 3.11 and earlier apparently do not like multi-line f-strings.
2025-10-11 23:06:50 +02:00
Felix Fontein
892e9d9cbd
Reorganize imports due to https://github.com/ansible-community/antsibull-nox/pull/136 .
2025-10-10 21:19:28 +02:00
Felix Fontein
e8ec22d3b1
Python code modernization, 3/n ( #1157 )
...
* Remove __metaclass__ = type.
for i in $(grep -REl '__metaclass__ = type' plugins/ tests/); do
sed -e '/^__metaclass__ = type/d' -i $i;
done
* Remove super arguments, and stop inheriting from object.
2025-10-10 08:11:58 +02:00
Felix Fontein
741c318b1d
Python code modernization, 2/n ( #1156 )
...
* Adjust all __future__ imports:
for i in $(grep -REl "__future__.*absolute_import" plugins/ tests/); do
sed -e 's/from __future__ import .*/from __future__ import annotations/g' -i $i;
done
* Remove all UTF-8 encoding specifications for Python source files:
for i in $(grep -REl '[-][*]- coding: utf-8 -[*]-' plugins/ tests/); do
sed -e '/^# -\*- coding: utf-8 -\*-/d' -i $i;
done
* Reformat.
2025-10-09 20:46:48 +02:00
Felix Fontein
a3efa26e2e
Address some pylint issues ( #1155 )
...
* Address cyclic-import.
* Address redefined-builtin.
* Address redefined-argument-from-local.
* Address many redefined-outer-name.
* Address pointless-string-statement.
* No longer needed due to separate bugfix.
* Address useless-return.
* Address possibly-used-before-assignment.
* Add TODOs.
* Address super-init-not-called.
* Address function-redefined.
* Address unspecified-encoding.
* Clean up more imports.
2025-10-09 20:11:36 +02:00
Felix Fontein
db09affaea
Fix isort config.
2025-10-07 23:00:42 +02:00
Felix Fontein
ec5f7682a1
Prevent loss of data. ( #1152 )
2025-10-07 22:05:05 +02:00
Felix Fontein
acf18f0ade
Add more CI checks ( #1150 )
...
* Enable mypy.
* Add flake8.
* Add pylint with a long list of ignores to be removed.
2025-10-07 19:37:16 +02:00
Felix Fontein
449b37e1c9
Fix docker_container_exec's detach=true. ( #1145 )
2025-10-07 18:49:20 +02:00
salty
ebb8569b5f
docker_container: add driver_opts and gw_priority ( #1143 )
...
closes #1142
2025-10-07 18:26:25 +02:00
Felix Fontein
117271579e
Make all doc fragments, module utils, and plugin utils private ( #1144 )
...
* Make all doc fragments, module utils, and plugin utils private.
* Remove some unused and no longer needed imports.
This hopefully also fixes the CI issues, which do not happen locally for me...
* Fix formatting.
* Try to make CI happy, again.
* Fix imports.
* Lint.
2025-10-07 07:32:33 +02:00
Felix Fontein
bb39e67c8f
Make CI pass; add black and isort to CI; add reformat commit to .git-blame-ignore-revs.
2025-10-06 18:57:33 +02:00
Felix Fontein
d65d37e9e9
Reformat code with black and isort.
2025-10-06 18:34:59 +02:00
Felix Fontein
f45232635c
Python code modernization, 1/n ( #1141 )
...
* Remove unicode text prefixes.
* Replace str.format() uses with f-strings.
* Replace % with f-strings, and do some cleanup.
* Fix wrong variable.
* Avoid unnecessary string conversion.
2025-10-06 18:30:54 +02:00
Felix Fontein
1f2817fa20
Prepare 5.0.0 ( #1123 )
...
* Bump version to 5.0.0-a1.
* Drop support for ansible-core 2.15 and 2.16.
* Remove Python 2 and early Python 3 compatibility.
2025-10-05 20:22:50 +02:00
Felix Fontein
251e4eca49
Remove remaining usages of ansible.module_utils.six. ( #1140 )
2025-10-05 16:17:50 +02:00
Felix Fontein
ebe42308cc
Replace ansible.module_utils.six with own module utils in some cases ( #1138 )
...
* Replace ansible.module_utils.six with own module utils in some cases.
* Add ignore.txt entires.
2025-10-04 23:45:27 +02:00
Felix Fontein
fd011d3871
Support missing fields and missing types in mounts. ( #1134 )
2025-09-29 22:35:07 +02:00
Felix Fontein
68ac6fecb1
Avoid deprecated functionality. ( #1117 )
2025-08-17 20:15:40 +02:00
Felix Fontein
ac301beebd
Adjust to Compose 2.39.0+. ( #1101 )
2025-07-25 21:59:41 +02:00
Felix Fontein
e9f4553b01
docker_container idempotency: work around Docker not returning true configured command when command is [] ( #1085 )
...
* Work around Docker not returning true configured command when command is [].
* Lint.
* Add test.
* Add changelog fragment.
2025-06-08 19:05:09 +02:00
Felix Fontein
8ecbd9a5cc
docker_compose_v2: work around bug in docker compose images --format json ( #1083 )
...
* Work around ubg in docker compose images --format json.
* ContainerName is no longer in image record.
2025-06-07 23:28:51 +02:00
Felix Fontein
22ab85fe2b
docker_context_info: fix some aspects ( #1043 )
...
* Extend docker_context_info tests.
* Fix a bug in the context code.
* Fix TLS handling for contexts.
* Adjust code to fix tests.
2025-02-10 23:54:36 +01:00
Felix Fontein
3b6068e44b
Add docker_context_info module ( #1039 )
...
* Vendor parts of the Docker SDK for Python
This is a combination of the latest git version
(db7f8b8bb6 )
with some fixes to make it compatible with Python 2.7
and adjusting some imports.
* Polishing.
* Fix bug that prevents contexts to be found when no Docker config file is present.
Ref: https://github.com/docker/docker-py/issues/3190
* Linting.
* Fix typos.
* Adjust more to behavior of Docker CLI.
* Add first iteration of docker_context_info module.
* Improvements.
* Add basic CI.
* Add caveat on contexts[].config result.
2025-02-10 21:59:05 +01:00
Felix Fontein
bcd6e57450
Vendored Docker SDK for Python code: remove unused constants ( #1037 )
...
* Remove constants that are never used.
* Adjust unit tests.
2025-02-01 23:14:19 +01:00
Felix Fontein
511cfe52ca
Improve error handling. ( #1035 )
2025-01-31 19:39:08 +01:00
Felix Fontein
9cc70f5202
Fix label sanitization error handling. ( #1029 )
2025-01-22 20:45:08 +00:00
Florian Apolloner
6172a9291c
Determine the compose version via a CLI call and not the docker API. ( #1021 )
...
* Determine the compose version via a CLI call and not the docker API.
* Update plugins/module_utils/compose_v2.py
Co-authored-by: Felix Fontein <felix@fontein.de>
---------
Co-authored-by: Felix Fontein <felix@fontein.de>
2024-12-29 14:13:39 +01:00
Felix Fontein
f69536ef3b
Improve language.
2024-12-28 14:30:49 +01:00
Felix Fontein
2e7b4e4605
docker_compose_v2: add ignore_build_events option; ignore build events by default ( #1011 )
...
* Add ignore_build_events option.
* Adjust docs and tests.
* Switch default to true.
* Remove unnecessary parts from tests.
2024-12-14 19:54:40 +01:00
Felix Fontein
1e10834905
Sanitize labels. ( #985 )
2024-11-09 23:53:22 +01:00
Felix Fontein
f7823ea626
Prepare 4.0.0 release. ( #971 )
2024-10-18 21:01:49 +02:00