Last built 2 years ago using go version go1.7 linux/amd64 and 90 seconds of time
Install this tool with
curl https://raw.githubusercontent.com/wedeploy/cli/master/install.sh -s | bash
or download from our stable release channel.
To update this tool, just run
The availability of dependencies are tested just before its immediate use. If a required dependency is not found, an useful error message is printed and the calling process is terminated with an error code.
You can get the latest CLI source code with
go get -u github.com/wedeploy/cli
Important: To use the locked dependencies you should install glide and then run
glide install first.
go list ./... lists vendor/ dependencies, so you can use
go list ./... | grep -v /vendor/ (or
glide nv) to list the subpackages without the vendors. This is necessary for a few cases, such as testing all code:
go test ./... becomes
go test $(go list ./... | grep -v /vendor/).
In lieu of a formal style guide, take care to maintain the existing coding style. Add unit tests for any new or changed functionality. Integration tests should be written as well.
The master branch of this repository on GitHub is protected: * force-push is disabled * tests MUST pass on Travis before merging changes to master * branches MUST be up to date with master before merging
Keep your commits neat. Try to always rebase your changes before publishing them.
Using go test and go cover are essential to make sure your code is covered with unit tests.
Some commands and aliases you might find useful for development / testing:
alias gotest='go test -coverprofile=coverage.out && go tool cover -html coverage.out -o coverage.html'
alias i="go run $HOME/projects/gocode/src/github.com/wedeploy/cli/main.go $1"(i: development code, we: production binary)
alias goreport="open coverage.html"
alias golintt='test -z "$(golint ./... | grep -v "^vendor" | tee /dev/stderr)"'
alias govet='go vet $(go list ./... | grep -v /vendor/)'