# Monitor CLI Monitor CLI is a tool to sync monitor resources and execute operations. ## Install ```sh cargo install monitor_cli ``` ## Usage ### Credentials Configure a file `~/.config/monitor/creds.toml` file with contents: ```toml url = "https://your.monitor.address" key = "YOUR-API-KEY" secret = "YOUR-API-SECRET" ``` Note. You can specify a different creds file by using `--creds ./other/path.toml`. You can also bypass using any file and pass the information using `--url`, `--key`, `--secret`: ```sh monitor --url "https://your.monitor.address" --key "YOUR-API-KEY" --secret "YOUR-API-SECRET" ... ``` ### Run Syncs ```sh ## Sync resources in a single file monitor sync ./resources/deployments.toml ## Sync resources gathered across multiple files in a directory monitor sync ./resources ## Path defaults to './resources', in this case you can just use: monitor sync ``` #### Manual ```md Runs syncs on resource files Usage: monitor sync [OPTIONS] [PATH] Arguments: [PATH] The path of the resource folder / file Folder paths will recursively incorporate all the resources it finds under the folder [default: ./resources] Options: --delete Will delete any resources that aren't included in the resource files -h, --help Print help ``` ### Run Executions ```sh # Triggers an example build monitor execute run-build test_build ``` #### Manual ```md Runs an execution Usage: monitor execute Commands: none The "null" execution. Does nothing run-procedure Runs the target procedure. Response: [Update] run-build Runs the target build. Response: [Update] deploy Deploys the container for the target deployment. Response: [Update] start-container Starts the container for the target deployment. Response: [Update] stop-container Stops the container for the target deployment. Response: [Update] stop-all-containers Stops all deployments on the target server. Response: [Update] remove-container Stops and removes the container for the target deployment. Reponse: [Update] clone-repo Clones the target repo. Response: [Update] pull-repo Pulls the target repo. Response: [Update] prune-networks Prunes the docker networks on the target server. Response: [Update] prune-images Prunes the docker images on the target server. Response: [Update] prune-containers Prunes the docker containers on the target server. Response: [Update] help Print this message or the help of the given subcommand(s) Options: -h, --help Print help ``` ### --yes You can use `--yes` to avoid any human prompt to continue, for use in automated environments.