You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
|
|
|
# gosuv
|
|
|
|
golang port of python-supervisor
|
|
|
|
|
|
|
|
# Design
|
|
|
|
|
|
|
|
Has a folder `.gosuv` under `$HOME` path.
|
|
|
|
|
|
|
|
Here is the folder structure
|
|
|
|
|
|
|
|
$HOME/.gosuv
|
|
|
|
|-- gosuv.json
|
|
|
|
|-- logs/
|
|
|
|
|-- program1.log
|
|
|
|
|-- program2.log
|
|
|
|
|
|
|
|
For first run `gosuv` command, will run a golang server.
|
|
|
|
|
|
|
|
Server port default 17422 or from env defined `GOSUV_SERVER_PORT`.
|
|
|
|
|
|
|
|
When server get `TERM` signal, all processes spwaned by srever will be killed.
|
|
|
|
|
|
|
|
## How to add program to gosuv
|
|
|
|
Eg, current folder is in `/tmp/hello`
|
|
|
|
|
|
|
|
gosuv add --name "program1" -- ./program1 1888
|
|
|
|
|
|
|
|
Will add a record to `$HOME/.gosuv/gosuv.json`
|
|
|
|
|
|
|
|
{
|
|
|
|
"name": "program1",
|
|
|
|
"command": ["./program1", "1888"],
|
|
|
|
"dir": "/tmp/hello",
|
|
|
|
"env": [],
|
|
|
|
}
|
|
|
|
|
|
|
|
Show status
|
|
|
|
|
|
|
|
$ gosuv status
|
|
|
|
program1 RUNNING
|
|
|
|
|
|
|
|
Stop program, ex: "program1"
|
|
|
|
|
|
|
|
$ gosuv stop program1
|
|
|
|
program1 stopped
|
|
|
|
|
|
|
|
## Program not implement
|
|
|
|
|
|
|
|
## LICENSE
|
|
|
|
[MIT](LICENSE)
|