Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/piotrkowalczuk/zordon
Defends development environment from Rita, and her endless waves of containers!
https://github.com/piotrkowalczuk/zordon
development golang local microservices services
Last synced: 20 days ago
JSON representation
Defends development environment from Rita, and her endless waves of containers!
- Host: GitHub
- URL: https://github.com/piotrkowalczuk/zordon
- Owner: piotrkowalczuk
- License: gpl-3.0
- Created: 2016-03-19T01:28:09.000Z (almost 9 years ago)
- Default Branch: master
- Last Pushed: 2019-04-19T13:32:08.000Z (over 5 years ago)
- Last Synced: 2024-10-30T10:13:04.344Z (2 months ago)
- Topics: development, golang, local, microservices, services
- Language: Go
- Homepage:
- Size: 29.3 KB
- Stars: 1
- Watchers: 2
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE.md
Awesome Lists containing this project
README
# Zordon
Zordon is a tool for defining and running multi-services Go applications.
With Zordon, you use a Alphasfile to configure your application’s services.
Then, using a single command, you create and start all the services from your configuration.
Any application that is go gettable can be used as one.## Installation
To build Zordon from the source code yourself you need to have a working Go environment.
You can directly use the go tool to download and install the Zordon.```bash
$ go get github.com/piotrkowalczuk/zordon
```## Commands
* **morphintime** - starts all services in specified order. It performs restart on exit code 1. Optional `--install` flag call `go install` for each service.
* **powerup** - is trying to update each service. If any change is found by git, service will be skipped
* **recruit** - install all services## Alphasfile
Zordon can run services automatically by reading the instructions from a Alphasfile.
A Alphasfile is a [hlc](https://github.com/hashicorp/hcl) document that contains all the definitions.### Example
```hlc
service "gnatsd" {
import = "github.com/nats-io/gnatsd"arguments {
D = false
V = false
T = false
p = 9010
m = 9011
}
}service "prometheus" {
import = "github.com/prometheus/prometheus/cmd/prometheus"
log = "json"arguments {
log.format = "logger:stdout?json=true"
web.listen-address = ":9020"
}
}```
## License
[GNU General Public License v3.0](https://www.gnu.org/licenses/gpl.txt), see [LICENSE](LICENSE).