A CLI deployment and process monitoring tool, part of the taco modular deployment system for unix.
Uses the mon process monitor, written in C. Lets you manage and deploy processes from tarball streams.
npm install taco-mon -g
Usage: taco-mon <command>
Commands:
start start a process by name
stop stop a process by name
restart stop and start a process by name
deploy deploy a new process from a tarball
status get the status of all processes
link symlink an external program into the taco deploys folder
clean remove all extracted tarballs not currently deployed
Run 'taco-mon <command> -h' to view usage for a specific command
The usage/
folder has full use for each command
Pipe a tarball into this and supply a path as the first argument. The tarball will be unpacked into a versions/<name>-<timestamp>
folder in the path you specified, symlinked to deploys/<name>
, and then taco-mon restart
will be run for you
You may pass any options for taco-mon start
to this command
Starts a process by name. Skips if the process is already started.
Options
--start-with prefix the start command with a string
--start-prefix alias for --start-with
--on-error execute <cmd> on error
--on-restart execute <cmd> on restarts
--sleep sleep seconds before re-executing [1]
--attempts retry attempts within 60 seconds [10]
--prefix add a log prefix
--logfile specify logfile [<name>.log]
--pidfile write program pid to file [<name>.pid]
--mon-pidfile write mon pid to file [<name>.mon.pid]
--mon specify a custom mon executable to use
Pack up your app and move the tarball to your server somehow:
$ taco-pack . > myapp.tar.gz
on server:
$ cat myapp.tar.gz | taco-build "npm install --production" | taco-mon deploy .
taco-mon
will deploy and start your process. You can then run taco-mon status
to view your process status.