django-ssh-deployer

This package provides Django management commands to publish your site over SSH via Paramiko.

BSD-3-CLAUSE License

Downloads
1.4K
Stars
10
Committers
2
django-ssh-deployer - 1.0.0 Latest Release

Published by FlipperPA 4 months ago

What's Changed

  • Improve error reporting while stopping deployment on git clone and pip install failures by @FlipperPA
  • Add support for pip_command or requirements file pip installation
  • Switch to pyproject.toml from setup.py by @FlipperPA

Full Changelog: https://github.com/FlipperPA/django-ssh-deployer/compare/0.6.2...1.0.0

django-ssh-deployer - Bug fix: incorrect settings being passed to collectstatic

Published by FlipperPA over 4 years ago

A bug has been squashed which could pass the wrong settings value to the collectstatic command.

django-ssh-deployer - Make collectstatic and migrate optional

Published by FlipperPA over 4 years ago

This release adds two new options:

  • collectstatic defaults to True; setting to False will not run the collectstatic command.
  • migrate defaults to True; setting to False will not run the migrate command.
django-ssh-deployer - Install wheel package and default to upgrading pip.

Published by FlipperPA over 4 years ago

This release contains a breaking change, but should make deployments more reliable.

  • Changes the default to upgrade pip after the venv is created.
  • Installs wheel into each venv created.

To maintain current behavior, be sure to include upgrade_pip: False in your configuration.

django-ssh-deployer - Support for custom git clone directories.

Published by FlipperPA over 4 years ago

0.5.0

  • Add option to customize git checkout path.
    • To retain the current behavior, set DEPLOYER_CLONE_DIR_FORMAT = "{name}-{branch}" in your Django settings.
  • Moved release notes to GitHub. Previous release notes are included on the 0.5.0 GitHub release.

Previous Release Notes

Previous release notes are included here, since this is the first release using GitHub release notes.

0.4.5

  • Add a --no-confirm command line option for publishing without confirmation. Be careful!

0.4.4

  • Pipe output from security context switches to /dev/null by default.

0.4.3

  • Add upgrade_pip option to upgrade pip in the destination venv to the latest version.

0.4.2

  • Add support for additional .so file patterns that may be installed with pip for SELinux.

0.4.1

  • Add ability to run commands per-environment after the publish is complete. These will be the last thing run before migrations. This is handy for things like required chmod changes, or curl calls.

0.4.0

  • SELinux is now supported. When a publish occurs, the proper security context is set for the published files and venv.

0.3.1

  • Some documentation touch ups.

0.3.0

  • virtualenv has been deprecated in favor of venv, which ships with Python 3.3+. If you need support for virtualenv, please use the latest release from the 0.2 family.
  • To simplify, virtualenv_path is not longer supported as an option. The venv will be created at the root of the project.
  • The setting virtualenv_python_path, which points to the Python executable to build the venv, has been renamed to venv_python_path for consistency.

0.2.1

  • Fix a bug where a redundant symlink was being overwritten, creating unnecessary time where the database might be out of sync with code on nodes.
  • Update long description with Markdown for the awesome new PyPI interface.

0.2.0

  • Refactored to prepare code and virtualenvs on all nodes, then change the symlinks on a second pass through. This drastically cuts down the amount of potential time the code is out of sync across nodes.
  • Migrations are only run on the first node, run before the symlinks are changed, again minimize the time code and database are out of sync.
  • Ensure the base directories for code_path and virtualenvpath exist or can be created by the deploy_user.

0.1.0

  • Initial release