Releases: pyinfra-dev/pyinfra
v1.6.1
v1.6
A small release with a few features and fixes. Future development will utilise smaller, more regular releases to avoid long gaps waiting on feature X to be complete.
This release also changes the git branching model to use current for anything non-breaking, and the next branch now targets the next major version. This should avoid unncessary confusion for the wonderful contributors to pyinfra.
Operations:
- Make it possible to load relative (to CWD) templates (includes/bases/etc) (@themanifold)
- Add
apt.dist_updateoperation (@bauen1) - Fix
files.Linkfact &files.linkoperation where path pre-exists and is not a link
Connectors:
- Support setting
shell_executable=Noneto pass raw commands to the target (@KuxaBeast) - Fix handling of SSH proxy jump config
- Only load SSH host keys once
- Make it possible to specify a SSH config file via
host.data.ssh_config_file
v1.5
This release includes a huge number of improvements, major highlights:
Automatic sudo password prompting - at last! pyinfra can now detect when a sudo password is required and will prompt the user.
Global config object - there is now a pyinfra.config object that should be used to set config variables:
from pyinfra import config
config.SUDO = TrueThis replaces the old style of setting SUDO = True at the top of files which was extracted via the AST. This new object means config variables can be set to anything (including the results of functions) and work across multiple deploy files.
Operation & fact updates:
- Add
pkgin.packages&pkgin.upgradeoperations (@lun-4) - Add
pkgin.PkginPackagesfact (@lun-4) - Add
selinux.FileContext&selinux.SEBooleanfacts (@benridley) - Add
openrc.serviceoperation - Add
openrc.OpenrcStatus&openrc.OpenrcEnabledfacts - Add last login time to
server.Usersfact (@sysadmin75) - Fetch held deb package versions in
deb.DebPackagesfact (@GerardoGR) - Add
force,force_backupandforce_backup_dirarguments tofiles.files,files.directory&files.linkoperations - Add resource and SSL arguments to
mysql.useroperation - Add
with_grant_optionargument tomysql.privilegesoperation - Add
availableargument toapk.packagesoperation (@lun-4)
Connector updates:
- Transfer ownership of files uploaded with su/sudo (@benridley)
- Add
ssh_forward_agentgroup data variable overriding SSH config
Other bits:
- Add
doas&doas_userglobal arugments - Use host data for global arguments (
host.data.sudo, etc) - Add
--data key=valueCLI flag - Propagate return value from
@deploydecorator (@karlicoss) - Large expansion of tested idempotent operations
- Loosen distro requirement
v1.4.19
- Use
uname -minserver.Archfact (@weakish) - Fix user check in
server.useroperation (@glassbeads) - Fix setting user primary group in
server.useroperation (@glassbeads) - Always add CWD to
sys.path(@glassbeads) - Fix issues with regex parsing for
deb.DebPackage&deb.DebPackagesfacts - Fix parsing apt repository lines with
[]characters
v1.4.18
- Fix exception collecting
Docker.*facts on objects that don't exist - Support variable interpolation in
files.FindInFilefact - Add
debug-inventoryexample to the help doc - Show a warning when a
--limitoption doesn't match any hosts - Warn only if SSH keys fail to load
- Include actual error when we encounter authentication errors
v1.4.17
v1.4.16
v1.4.15
v1.4.14
- Add
quote_path=Trueargument tofiles.[FindFiles|FindLinks|FindDirectories]facts - Fix enable/disable service in
sysvinit.serviceoperation using un-quoted path - Fix path join handling in certain cases in
files.syncoperation - Always normalise paths in
files.[file|link|directory]operations