monit
monit
is the simple task runner.
Run tasks and watch file changes with custom paths.
Usage
monit
run commands when files have changed.
monit
needs a .monit.yml
task definition file on current directory.
Please you run below at first.
monit init
A template of .monit.yml
will be generated.
You edit the yaml file and you run below.
monit run
Task definitions
A example of .monit.yml
of this repository.
See below.
%YAML 1.2
%TAG !n! tag:nimyaml.org,2016:
--- !n!custom:MonitorConfig
sleep: 1
targets:
-
name: Task name
paths: [src, tests]
commands:
- nimble build --hints:off
- nimble test
extensions: [.nim]
files: []
exclude_extensions: []
exclude_files: []
once: y
A descriptions of these keys and values.
-
sleep
- A interval to monitor files (secconds)
Targets
key | value |
---|---|
name | Task name ( for human ) |
paths | Target directory to monitor |
commands | Commands to run when files have changed |
extensions | Extensions of target files |
files | File path of target files |
exclude_extensions | Extensions of exclude files |
exclude_files | File path of exclude files |
once | Run command once at first when you executed monit
|
Installation
nimble install monit
Development
% nim -v
Nim Compiler Version 0.20.2 [Linux: amd64]
Compiled at 2019-07-17
Copyright (c) 2006-2019 by Andreas Rumpf
git hash: 88a0edba4b1a3d535b54336fd589746add54e937
active boot switches: -d:release
% nimble -v
nimble v0.10.2 compiled at 2019-08-11 10:07:38
git hash: couldn't determine git hash
Help
% monit help
This is a multiple-dispatch command. Top-level --help/--help-syntax
is also available. Usage is like:
monit {SUBCMD} [subcommand-opts & args]
where subcommand syntaxes are as follows:
init [optional-params]
Generate monit config file to current directory. If config file has existed then no generating.
Options(opt-arg sep :|=|spc):
-h, --help print this cligen-erated help
--help-syntax advanced: prepend,plurals,..
--version bool false print version
run [optional-params]
Run commands on the commands of `file` when file modified.
Options(opt-arg sep :|=|spc):
-h, --help print this cligen-erated help
--help-syntax advanced: prepend,plurals,..
--version bool false print version
-l=, --loopCount= int -1 set loopCount
-f=, --file= string ".monit.yml" A task definition file path
-v, --verbose bool false Turn ON the debug logging
-d, --dryRun bool false Not execute commands
LICENSE
MIT