Install this tool with
bash <(curl https://raw.githubusercontent.com/wedeploy/cli/master/install.sh -s)
or download from our stable release channel.
To update this tool, just run we update
.
The following external soft dependencies are necessary to correctly run some commands:
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
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.
goreportcard can be used online or locally to detect defects and static analysis results from tools such as go vet, go lint, gocyclo, and more. Run errcheck to fix ignored error returns.
Using go test and go cover are essential to make sure your code is covered with unit tests.
Some aliases you might find useful for development / testing:
- Generating test coverage for the current directory:
alias gotest='go test -coverprofile=coverage.out && go tool cover -html coverage.out -o coverage.html'
- Running code without building:
alias i="go run $HOME/projects/gocode/src/github.com/wedeploy/cli/main.go $1"
(i: development code, we: production binary) - Opening coverage report:
alias goreport="open coverage.html"