fix(docker-engine): install python3-debian first #45
Loading…
Add table
Add a link
Reference in a new issue
No description provided.
Delete branch "fix/docker-engine-python-debian"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Why
docker-engine's install mode failed at "Add the upstream Docker aptrepository" on hosts without
python3-debian, in--checkand in a realrun.
deb822_repositoryneeds the Pythondebianlibrary on the target,and nothing installed it. The failure showed up on the
homeswarm nodeswhen they were switched to install mode for #44's log options.
What changed
python3-debianwith apt before it adds therepository.
--check, a host that does not havepython3-debianyet skips therepository task and says so, so the rest of the run still previews.
repository is on the host,
--checkstops at the package task, becauseapt does not refresh its lists in check mode. After the first live run,
--checkpreviews in full.How to verify
python3-debianthat already runs Docker, runansible-playbook fortify.yml -i inventory/<tenant>/ -e target=<node> --tags docker-engine --check --diff. Expected: it says the repositorywaits on python3-debian, and the run continues past it.
./tests/gates/check_docker_engine.shon a controller whose/usr/bin/python3hasaptbut notdebian. The new case passes. Onmain, its play fails with "python3-debian must be installed to usecheck mode".
Checks already run on the tip:
make checkpassed..agents/hooks/shellcheck.sh repopassed.check_docker_engine.shpassed, but its new case reported not run,because the sandbox's system Python has no
apt.make test, because podman was not available.Considerations
--check, the new apt task needspython3-apton the target. Thepackage task after it already needed it.
the library on the system Python, which no stub can replace.
the gate's skip message states.
--checkparagraph ties the stop at thepackage task to the skipped repository, but the stop happens on any
host whose sources lack
docker-ce.