|
|
||
|---|---|---|
| cmd | ||
| lib/warren | ||
| .gitignore | ||
| LICENSE.md | ||
| Makefile | ||
| README.md | ||
README.md
warren
Build, Deploy and Multiversion Run tool
Install
go get github.com/dballard/warren/
cd $GOPATH/src/github.com/dballard/warren/
make
sudo make install
Usage
Build
warren build
Build the current go package. Pretty much go build but with additional defines:
- BuildGitBranch - from git
- BuildGitHash - from git
- BuildDate - from system time
Deploy
waren deploy
Deploy the current package to ./deploy, which is registered with warrend. By default, assumed $DIRNAME is the name of the go pacakge and just deploys that binary to a subdirctory named after the date and githash
An optional warren.yaml manifest can be supplied to indicate additional files to be included in the deploy
Running
warrend is the main tool that runs registered go services, but is managed via the warren command.
warrend stores registered deployment information in /etc/warrend.json. Don't edit it directly, use the command line interface.
warrend stores deployment specific config in the deployment's directory in warrend.json
warren listlists registered deployments (directory, name)warren reg [name] [directory]registers a warren deployment directory with warrend for runningwarren unreg [name]unregisters a warren deploymentwarren pool [name] [low high]with no argument, displays the port range for a deployment, With arguments, sets the low and high and range of the pool. The first 2 ports of the pool are reserved for stable and tailwarren peg [name] [stable] [hash]Sets a certain hash as the new "stable"warren start [name]starts a deployment runningwarren stop [name]stops a deployment