Skip to content

Releases: pyinfra-dev/pyinfra

v1.6

08 Jan 18:12
080bc8e
Compare
Choose a tag to compare

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_update operation (@bauen1)
  • Fix files.Link fact & files.link operation where path pre-exists and is not a link

Connectors:

  • Support setting shell_executable=None to 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

14 Nov 11:27
af4bc73
Compare
Choose a tag to compare

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 = True

This 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.upgrade operations (@lun-4)
  • Add pkgin.PkginPackages fact (@lun-4)
  • Add selinux.FileContext & selinux.SEBoolean facts (@benridley)
  • Add openrc.service operation
  • Add openrc.OpenrcStatus & openrc.OpenrcEnabled facts
  • Add last login time to server.Users fact (@sysadmin75)
  • Fetch held deb package versions in deb.DebPackages fact (@GerardoGR)
  • Add force, force_backup and force_backup_dir arguments to files.files, files.directory & files.link operations
  • Add resource and SSL arguments to mysql.user operation
  • Add with_grant_option argument to mysql.privileges operation
  • Add available argument to apk.packages operation (@lun-4)

Connector updates:

  • Transfer ownership of files uploaded with su/sudo (@benridley)
  • Add ssh_forward_agent group data variable overriding SSH config

Other bits:

  • Add doas & doas_user global arugments
  • Use host data for global arguments (host.data.sudo, etc)
  • Add --data key=value CLI flag
  • Propagate return value from @deploy decorator (@karlicoss)
  • Large expansion of tested idempotent operations
  • Loosen distro requirement

v1.4.19

13 Nov 19:20
3f9e4b4
Compare
Choose a tag to compare
  • Use uname -m in server.Arch fact (@weakish)
  • Fix user check in server.user operation (@glassbeads)
  • Fix setting user primary group in server.user operation (@glassbeads)
  • Always add CWD to sys.path (@glassbeads)
  • Fix issues with regex parsing for deb.DebPackage & deb.DebPackages facts
  • Fix parsing apt repository lines with [] characters

v1.4.18

30 Oct 18:48
caf9a65
Compare
Choose a tag to compare
  • Fix exception collecting Docker.* facts on objects that don't exist
  • Support variable interpolation in files.FindInFile fact
  • Add debug-inventory example to the help doc
  • Show a warning when a --limit option doesn't match any hosts
  • Warn only if SSH keys fail to load
  • Include actual error when we encounter authentication errors

v1.4.17

15 Oct 16:15
2cc084d
Compare
Choose a tag to compare
  • Fix excluding multiple directories in files.sync operation (@gchazot)
  • Cleanup filesystem mocking in operation tests (@gchazot)
  • Fix bug in command generation when config sudo user is set
  • Stop removing sudo/su arguments in the Docker connector

v1.4.16

03 Oct 16:09
9562eff
Compare
Choose a tag to compare
  • Fix loading of system SSH host keys
  • Fix/show warning when no SSH host key present on connect

v1.4.15

03 Oct 16:09
d9891f2
Compare
Choose a tag to compare
  • Don't fail if dest in files.put is a directory (@oz123)
  • Improve internal unix path joining

v1.4.14

02 Sep 07:23
677efc6
Compare
Choose a tag to compare
  • Add quote_path=True argument to files.[FindFiles|FindLinks|FindDirectories] facts
  • Fix enable/disable service in sysvinit.service operation using un-quoted path
  • Fix path join handling in certain cases in files.sync operation
  • Always normalise paths in files.[file|link|directory] operations

v1.4.13

31 Aug 15:06
e556d32
Compare
Choose a tag to compare
  • Fix exclude_dir in files.sync operation (@gchazot)
  • Fix multiple nested imports by properly resetting current exec filename
  • Improve error when there are no Vagrant instances and a name is provided

v1.4.12

15 Aug 16:44
91fdf7b
Compare
Choose a tag to compare
  • Support tag names in git.GitBranch fact (@stevenkaras)
  • Fix cache_time test in files.download operation (@stevenkaras)
  • Fix parsing of server.LinuxDistribution fact for Archlinux (@TypicalFence)
  • Correctly return None when no major version in server.LinuxDistribution fact