pyinfra v1.0 Release Notes
Release Date: 2020-07-11 // almost 4 years ago-
๐ The first
1.x
release!๐ This release deprecates a lot of old/legacy
pyinfra
code and brings fourth a new, stable API. So long as you see no warnings when executingpyinfra
, upgrading should require no chanages.What's new:
- โ Add new global
name
argument to name operations (deprecateset
as the first argument) - ๐ Improve unexpected fact error handling, bad exit codes will be treated as errors unless the fact explicitly expects this could happen (system package managers for example)
- ๐ [CLI] write progress/user info/logs to
stderr
only - [API] Consistent ordering when
add_op
andadd_deploy
functions - [API] Return a dictionary of
host
->OperationMeta
when usingadd_op
- Enable passing a list of modules to
server.modprobe
(@FooBarQuaxx) - ๐ Support
Path
objects infiles.[file|directory|link]
operations - ๐ Support
shasum
(MacOS) insha1_file
fact
๐ฅ Breaking changes:
- ๐ Deprecate using
set
as the first/name argument for operations - ๐ Rename
files.*
arguments (name
->path
,destination
->dest
) - Rename
server.*
arguments (name
->user|group|cron_name|key|path
,filename
->src
) - Rename
mysql.*
+postgresql.*
arguments (name
->user|database|role
) - ๐ Rename
init.*
arguments (name
->service
) - ๐ Rename
lxd.container
argumentname
->id
- ๐ Rename
git.repo
argumenetssource
->src
&target
->dest
- ๐ Rename
iptables.chain
argumentname
->chain
- ๐ Rename
python.call
argumentfunc
->function
- Rename
size
->mask_bits
insidenetwork_devices
fact - ๐ Change default of
interpolate_variables
fromTrue
->False
- โ Remove deprecated
hosts
/when
/op
global operation arguments - โฑ Rename reprecated
Config.TIMEOUT
->Config.CONNECT_TIMEOUT
- Remove deprecated
use_ssh_user
argument fromgit.repo
operation - โ Remove deprecated
python.execute
operation - Remove deprecated
Inventory.< __getitem__ >
&Inventory.< __getattr__ >
methods - Remove deprecated
add_limited_op
function - โ Remove deprecated legacy CLI support
- โ Add new global