SERVLY
A simple process management tool for Linux, similar to PM2, designed to simplify application deployment and management.
Features
- Start, stop, and restart services defined in a
servly.ymlconfiguration file - View real-time logs with service name highlighting
- Automatic process supervision and PID management
- Environment variable support
- Simple YAML configuration
Installation
# Using pip
pip install servly
# From source
git clone https://github.com/yourusername/servly.git
cd servly
pip install -e .
Usage
Quick Start
- Create a
servly.ymlfile in your project:
# Basic format: service-name: command
web-server: node server.js
# Detailed format
api:
cmd: python api.py
cwd: ./api
env:
NODE_ENV: production
- Start your services:
servly start
Core Commands
-
Start Services:
servly start [all | service-name]
Starts all services or a specific service by name.
-
Stop Services:
servly stop [all | service-name]
Stops all running services or a specific service by name.
-
Restart Services:
servly restart [all | service-name]
Restarts all services or a specific service by name.
-
View Service Logs:
servly log [all | service-name]
Shows logs in real-time (similar to
tail -f). -
List Services:
servly listShows status of all configured services.
Configuration
servly.yml
The servly.yml file supports two formats:
-
Simple format:
service-name: command to run
-
Detailed format:
service-name: cmd: command to run cwd: working directory (optional) env: ENV_VAR1: value1 ENV_VAR2: value2
Note: The name "servly" is reserved and cannot be used as a service name.
Directory Structure
Servly creates a .servly directory to store runtime information:
.servly/
├── logs/
│ ├── [service-name]-out.log # Standard output logs
│ └── [service-name]-error.log # Error logs
├── pids/
│ └── [service-name].pid # Process ID files
License
MIT
Metadata
Release files for servly 0.3.1
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| servly-0.3.1.tar.gz | 18.5 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| servly-0.3.1-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 30.4 kB
Release files / servly-0.3.1.tar.gz
| Download URL | servly-0.3.1.tar.gz |
|---|---|
| Size | 18.5 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
695b905b5888517957bcbcacaa13c34dbdadfa1754a4244c190733aeee1299d9
|
|
BLAKE2b-256 checksum How to use checksums |
19805a5b56a88420c27825a580b75083de9f29dea0d27aa6f6e4dde74f74b2e1
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.1.0 CPython/3.12.3
|
Release files / servly-0.3.1-py3-none-any.whl
| Download URL | servly-0.3.1-py3-none-any.whl |
|---|---|
| Size | 12.0 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
fe210f63f5822c6d1a3ea2b1b594160c9d4d4ef5ee671f6863c08b7b9db69943
|
|
BLAKE2b-256 checksum How to use checksums |
ee7e7a2783a1afa8369729c2e1c0d6a1267d8ac998f8eb24df7d95657dc06bf7
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.1.0 CPython/3.12.3
|