⬆️ (dependencies): Update dependency pyinfra to v3 (major) #174
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
This PR contains the following updates:
==2.9.2
->==3.0
Release Notes
Fizzadar/pyinfra (pyinfra)
v3.0
Compare Source
Welcome to pyinfra v3! This version is the biggest overhaul of pyinfra since it was created back in 2015. Most v2 deployment code should be automatically compatible, but as always be aware. Major changes:
Runtime operation execution
pyinfra now executes operations at runtime, rather than pre-generating commands. Although the change isn't noticeable this fixes an entire class of bugs and confusion. See the limitations section in the v2 docs. All of those issues are now a thing of the past.
This represents a huge overhaul of pyinfra's internals and should be a huge improvement for users.
Care has been taken to reduce the overhead of this change which still supports the same diffs and change proposal mechanism.
CLI flow & prompts
The pyinfra CLI will now prompt (instead of ignore, or immediately exit) when problems are encountered, allowing the user to choose to continue. Additionally an approval step is added before executing changes (this can be skipped with
-y
or setting thePYINFRA_YES
environment variable).Extendable connectors API, typing overhaul
v3 of pyinfra includes for the first time a (mostly) typed internal API with proper support for IDE linting. There's a whole new connectors API that provides a framework for building new connectors.
Breaking changes
_use_sudo_password
argument to_sudo_password
winrm
connector andwindows*
operations/facts, moving topyinfra-windows
@deploy()
, and is now typedOperations & Facts
docker.container
,docker.image
,docker.volume
,docker.network
&docker.prune
operations (@apecnascimento)runit.service
operation andRunitStatus
fact (@lemmi)TmpDir
factservices
argument to systemd facts for filteringpostgresql
->postgres
operations & facts (old ones still work)NetworkDevices
fact (@sudoBash418)Home
fact for other users (@matthijskooijman)server.user_authorized_keys
operation (@matthijskooijman)destination
/not_destination
arguments iniptables.rule
operationfiles.sync
operation (@Renerick)Other Changes
_if
global argument to control operation execution at runtime--debug-all
flag to set debug logging for all packageswill_change
attribute anddid_change
context manager toOperationMeta
pkg_resources
withimportlib.metadata
(@diazona)Configuration
📅 Schedule: Branch creation - At any time (no schedule defined), Automerge - At any time (no schedule defined).
🚦 Automerge: Enabled.
♻ Rebasing: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.
🔕 Ignore: Close this PR and you won't be reminded about this update again.
This PR has been generated by Mend Renovate. View repository job log here.