https://github.com/simplifi/goverseer
https://github.com/simplifi/goverseer
Last synced: 12 months ago
JSON representation
- Host: GitHub
- URL: https://github.com/simplifi/goverseer
- Owner: simplifi
- Created: 2024-07-08T19:53:48.000Z (almost 2 years ago)
- Default Branch: main
- Last Pushed: 2025-06-16T21:15:53.000Z (about 1 year ago)
- Last Synced: 2025-06-16T22:31:34.603Z (about 1 year ago)
- Language: Go
- Size: 449 KB
- Stars: 1
- Watchers: 33
- Forks: 0
- Open Issues: 1
-
Metadata Files:
- Readme: README.md
- Codeowners: .github/CODEOWNERS
Awesome Lists containing this project
README
# Goverseer

Goverseer is a tool for monitoring some kind of upstream, and taking actions
when a change is detected. In some ways it is similar to consul-template, except
Goverseer does not handle templating. Instead it is focused on watching for
changes and taking some kind of action based on those changes.
## Usage
Goverseer is configured using a yaml config file. The `goverseer start` command
takes a path to the config file. If a config path is not provided,
`/etc/goverseer.yaml` will be used.
```yaml
# Example goverseer config
---
name: example
watcher:
type: time
config:
poll_seconds: 1
executioner:
type: log
config:
tag: example
```
The available values for `watcher.type` are:
- `file`: [File Watcher](docs/watchers/file_watcher.md)
- `gce_metadata`: [GCE Metadata Watcher](docs/watchers/gce_metadata_watcher.md)
- `gcp_secrets`: [GCP Secrets Watcher](docs/watchers/gcp_secrets_watcher.md)
- `time`: [Time Watcher](docs/watchers/time_watcher.md)
The available values for `executioner.type` are:
- `log`: [Log Executioner](docs/executioners/log_executioner.md)
- `shell`: [Shell Executioner](docs/executioners/shell_executioner.md)
The configuration options for `watcher.config` and `executioner.config` are
determined by the selected type. See the documentation for the specific watcher
and executioner type for more details on available configuration options.
## Building
To build Goverseer, simply run `make build`. Once complete, you should see a
binary in the root of your checkout.
## Development
To run locally during development, run `go run ./cmd/goverseer --help`.
To run all tests, run `make test`.