A reusable deployment framework for Python.
Project description
PyDaffodil
pydaffodil is a reusable deployment framework for Python, designed to simplify the process of deploying applications to remote vps servers.
Features
- Check for admin privileges
- Run shell commands
- Transfer files using SCP
- Execute SSH commands
- Modular and reusable deployment steps
Installation
pip install daffodil-cli
Usage
from pydaffodil import Daffodil
cli = Daffodil(remote_user="root", remote_host="123.221.11.243", remote_path="/root/prod/bccs")
steps = [
{"step": "Build the project", "command": lambda: cli.run_command("npm run build")},
{"step": "Stop backend process on remote server", "command": lambda: cli.ssh_command("sudo forever stop 1")},
{"step": "Transfer files to remote server", "command": lambda: cli.transfer_files("build")},
{"step": "Restart backend process on remote server", "command": lambda: cli.ssh_command("sudo forever restartall")}
]
cli.deploy(steps)
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
pydaffodil-1.0.2.tar.gz
(3.4 kB
view details)
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file pydaffodil-1.0.2.tar.gz.
File metadata
- Download URL: pydaffodil-1.0.2.tar.gz
- Upload date:
- Size: 3.4 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/5.1.1 CPython/3.12.3
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
4d4b97739cbe40b70864a4739c46ea90547a6036bda369eb64acd2b436c9f026
|
|
| MD5 |
a603bfc73de34710c73b1519c253bad8
|
|
| BLAKE2b-256 |
e93c0f8393357007947b310d4154e37037c7413386219e3dec11402a5d6c96d3
|
File details
Details for the file pydaffodil-1.0.2-py3-none-any.whl.
File metadata
- Download URL: pydaffodil-1.0.2-py3-none-any.whl
- Upload date:
- Size: 3.6 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/5.1.1 CPython/3.12.3
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
d7ed7a6e12da4233df1d468fc99757b5b0bda41bf5448dea3a25c547ea4434dc
|
|
| MD5 |
940dce99c364d9ac55370d750f2637b1
|
|
| BLAKE2b-256 |
8afd79ad61d73bfdb7682e4499829d4ba20e3b1f3399c54ea6a72b746d8d91c9
|