Skip to main content

simple process manager

Project description

PMO - Process Manager Omni

A lightweight process manager inspired by PM2, but designed primarily for development environments.

Features

  • start, stop, and restart services, similar to PM2
  • Simple YAML configuration
  • Real-time logs with highlight
  • Environment variable support

Installation

pip install pmo

Usage

Quick Start

  1. Create a pmo.yml file in your project:
# Simple format, just like procfile
web-server: node server.js

# Detailed format
api-server:
  cmd: python api.py
  cwd: ./api
  env:
    NODE_ENV: development
  1. Start your services:
pmo start
  1. List your services:
pmo ls

Output:

+---------------------------------------------------------------------------------------------------------------------+
|  id  | name      |        pid |   uptime |   status    |        cpu |        mem |    gpu mem | gpu id | user       |
|------+-----------+------------+----------+-------------+------------+------------+------------+--------+------------|
|  0   | vllm-1    |     482950 |  25m 15s |   running   |       0.0% |        1mb |  20632 MiB |   0    | simpx      |
|  1   | sglang-1  |     482952 |  25m 15s |   running   |       0.0% |        1mb |  20632 MiB |   1    | simpx      |
|  2   | vllm-2    |     482954 |  25m 15s |   running   |       0.0% |        1mb |  20632 MiB |   2    | simpx      |
+---------------------------------------------------------------------------------------------------------------------+

Commands

  • Start: pmo start [all | service-name]
  • Stop: pmo stop [all | service-name]
  • Restart: pmo restart [all | service-name]
  • Logs: pmo log [all | service-name]
  • List: pmo ls

Configuration

The pmo.yml file supports two formats:

  1. Simple: service-name: command
  2. Detailed:
    service-name:
      cmd: command
      cwd: working directory (optional)
      env:
        KEY: value
    

PMO manages runtime data in the .pmo directory with logs and PID 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

pmo-0.3.9.tar.gz (22.6 kB view details)

Uploaded Source

Built Distribution

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

pmo-0.3.9-py3-none-any.whl (16.4 kB view details)

Uploaded Python 3

File details

Details for the file pmo-0.3.9.tar.gz.

File metadata

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

File hashes

Hashes for pmo-0.3.9.tar.gz
Algorithm Hash digest
SHA256 9b2f0acf4037071e193638009c6dd97c08d58d6fac9af64e6edd9b479dbc1e9e
MD5 d037b5b5afa8fcc613ae7962076e87a9
BLAKE2b-256 ffe338a28202696848e920a77e25d87bfcae748b3722f5d06385c4dd56bc0db3

See more details on using hashes here.

File details

Details for the file pmo-0.3.9-py3-none-any.whl.

File metadata

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

File hashes

Hashes for pmo-0.3.9-py3-none-any.whl
Algorithm Hash digest
SHA256 1bdb54832fd205148519d55c711311eb030cf713c8fb724f5bfa5f3687474ea5
MD5 9fd98ee97bf46f406590df3ba2c7a7d8
BLAKE2b-256 3171411981ef04f9dc55af6189be4823e57f5f6382c3d17739bb06d52062b32c

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