Skip to main content

simple process manager

Project description

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.yml configuration 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

  1. Create a servly.yml file 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
  1. 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 list
    

    Shows status of all configured services.

Configuration

servly.yml

The servly.yml file supports two formats:

  1. Simple format:

    service-name: command to run
    
  2. 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

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

servly-0.2.0.tar.gz (17.2 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

servly-0.2.0-py3-none-any.whl (11.2 kB view details)

Uploaded Python 3

File details

Details for the file servly-0.2.0.tar.gz.

File metadata

  • Download URL: servly-0.2.0.tar.gz
  • Upload date:
  • Size: 17.2 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.12.3

File hashes

Hashes for servly-0.2.0.tar.gz
Algorithm Hash digest
SHA256 242c95171e3b05a21354a94b5123b27519fc9ea2a8ad4645058343096c1035cc
MD5 babf0e4a33adff1639076c2eb765a4b1
BLAKE2b-256 2fafa0300dc5e865e3178e13b2d432a4c27f4a87d0296529af3e0ad50e0ec627

See more details on using hashes here.

File details

Details for the file servly-0.2.0-py3-none-any.whl.

File metadata

  • Download URL: servly-0.2.0-py3-none-any.whl
  • Upload date:
  • Size: 11.2 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.12.3

File hashes

Hashes for servly-0.2.0-py3-none-any.whl
Algorithm Hash digest
SHA256 11e41d2f0d5cccbbb990e32a633a212d1d8263bd53bc1691dd94087d9db41d7c
MD5 bc16dee4345362a0350d61207d5d8fe4
BLAKE2b-256 63181aeb656ca6500808f6a70807e83637c0372705d0a54da68cd34df549ee37

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page