Releases: pyinfra-dev/pyinfra
Releases · pyinfra-dev/pyinfra
pyinfra v0.2
pyinfra automates service deployment. It does this by diff-ing the state of the server with the state defined in the deploy script. Deploys are asyncronous and highly performant. The inventory & deploy are managed with pure Python, allowing for near-infinite extendability.
New stuff:
- Add LXD facts/module
- Add iptables facts/module
- Support usernames with non-standard characters (_, capitals, etc)
- Add global
get_pty
kwarg for all operations to work with certain dodgy programs - Add
--fail-percent
CLI arg - Add
exclude
kwarg tofiles.sync
- Enable
--limit
CLI arg to be multiple, comma separated, hostnames - Add
no_recommends
kwarg toapt.packages
operation - Make local imports work like calling
python
by adding.
tosys.path
in CLI - Add key/value release meta to
linux_distribution
fact - Improve how the init module handles "unknown" services
- Add
force
kwarg toapt.packages
andapt.deb
and don't--force-yes
by default
To-be-breaking changes (deprecated & will be removed in 0.3):
- Switch to lowercase inventory names (accessing
inventory.bsd
where the group is defined asBSD = []
is deprecated) - Rename
yum.upgrade
->yum.update
(yum.upgrade
deprecated) - Deprecate
pip_virtualenv_packages
fact aspip_packages
will now accept an argument for the virtualenv - Deprecate
npm_local_packages
fact asnpm_packages
will accept an argument for the directory
Internal changes:
- Operations now
yield
, rather than returning lists of commands
pyinfra v0.1.5
v0.1.5
pyinfra v0.1.4
v0.1.4
pyinfra v0.1.3
v0.1.3
pyinfra v0.1.2
v0.1.2
pyinfra v0.1.1
v0.1.1
pyinfra v0.1
I've finally cut 0.1 at last - I am confident pyinfra can be reliably used to deploy stuff.
Install with pip: pip install pyinfra
- First versioned release, start of changelog
- Full docs @ pyinfra.readthedocs.io
- Core API with CLI built on top
- Two-step deploy (diff state, exec commands)
- Compatability tested w/Ubuntu/CentOS/Debian/OpenBSD/Fedora
- Modules/facts implemented:
- Apt
- Files
- Gem
- Git
- Init
- Npm
- Pip
- Pkg
- Python
- Server
- Yum