Helper library for Fabric to simplify creating and managing GitHub deploy keys when deploying GitHub-hosted repositories
Project description
Plush
A helper library for Fabric to simplify creating and managing GitHub deploy keys when deploying your GitHub-hosted repository. Currently, Plush is only tested on Ubuntu 22.04 LTS.
Plush aims to make deployments easier by:
- Using OAuth flows to securely connect to the GitHub API on your behalf (while supporting 2 factor auth and never handling your username/password)
- Generating SSH deploy keys on your target server/computer
- Registering these deploy keys with your GitHub repo programmatically
- Configuring your new clone to use the appropriate deploy key while not conflicting with other SSH keys used elsewhere on your server
- ACL'ing these keys so they can be reused by people to fetch/deploy on your behalf (and not readable by anyone else on the server)
- Example PowerShell scripts are provided that give tab completion around fab.exe
To see this project in action, follow the directions in Setup-Dev-Environment.md. You will need access to an Ubuntu 22.04 machine (ideally a VM).
Usage
This project is intended to be used by projects that use or are considering Fabric for their deployments. Plush versions 0.5.0 and greater expect Fabric 2.0 and greater. Versions before 0.5.0 expect Fabric 1.x. In a project that uses Fabric, install Plush by running:
pip install plush-fabric
To get started, see the fabfile.py in this repo for a minimal usage of Plush. For a more complete example, see my BaseDjangoAngular template.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Hashes for plush_fabric-0.5.20-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | a8aed332d6e0443b094bfea3cdd4f0ab217283f9e39bc0eec02f271f9c83e221 |
|
MD5 | 84f9dc5bd6b0985dc66f058a0d280555 |
|
BLAKE2b-256 | 242ec9942c6b3a9286d5b2fb12dd270c27e1d5498de84d5bb994e4e0ff31a63c |