govvv alternatives and similar packages
Based on the "DevOps Tools" category.
Alternatively, view govvv alternatives based on common mentions on social networks and blogs.
-
Moby
Moby Project - a collaborative project for the container ecosystem to assemble container-based systems -
Gitea
Git with a cup of tea! Painless self-hosted all-in-one software development service, includes Git hosting, code review, team collaboration, package registry and CI/CD -
Packer
Packer is a tool for creating identical machine images for multiple platforms from a single source configuration. -
Flynn
[UNMAINTAINED] A next generation open source platform as a service (PaaS) -
webhook
webhook is a lightweight incoming webhook server to run shell commands -
Ddosify
Comprehensive Performance Testing Platform. Available on CLI, Self-Hosted, and Cloud - https://ddosify.com 🚀 -
Mizu
The API traffic viewer for Kubernetes providing deep visibility into all API traffic and payloads going in, out and across containers and pods inside a Kubernetes cluster. Think TCPDump and Wireshark re-invented for Kubernetes [Moved to: https://github.com/kubeshark/kubeshark] -
dasel
Select, put and delete data from JSON, TOML, YAML, XML and CSV files with a single tool. Supports conversion between formats and can be used as a Go package. -
StatusOK
Monitor your Website and APIs from your Computer. Get Notified through Slack, E-mail when your server is down or response time is more than expected. -
goxc
a build tool for Go, with a focus on cross-compiling, packaging and deployment -
Fleet device management
Open-source platform for IT and security teams with thousands of computers. (Linux, macOS, Windows, ChromeOS, AWS, Google Cloud, Azure, data center, containers, IoT) -
s3gof3r
Fast, concurrent, streaming access to Amazon S3, including gof3r, a CLI. http://godoc.org/github.com/rlmcpherson/s3gof3r -
uTask
µTask is an automation engine that models and executes business processes declared in yaml. ✏️📋 -
kwatch
:eyes: monitor & detect crashes in your Kubernetes(K8s) cluster instantly -
cassowary
:rocket: Modern cross-platform HTTP load-testing tool written in Go -
jcli
Jenkins CLI allows you to manage your Jenkins in an easy way. Jenkins 命令行客户端 -
Pewpew
Flexible HTTP command line stress tester for websites and web services -
easyssh-proxy
easyssh-proxy provides a simple implementation of some SSH protocol features in Go -
metric
Minimal metrics for Go (counter/gauge/histogram). No dependencies. Compatible with expvar. Web UI included.
Clean code begins in your IDE with SonarLint
Do you think we are missing an alternative of govvv or a related project?
Popular Comparisons
README
govvv
The simple Go binary versioning tool that wraps the go build
command.
Stop worrying about -ldflags
and go get github.com/ahmetb/govvv
now.
Build Variables
Variable | Description | Example |
---|---|---|
main.GitCommit |
short commit hash of source tree | 0b5ed7a |
main.GitBranch |
current branch name the code is built off | master |
main.GitState |
whether there are uncommitted changes | clean or dirty |
main.GitSummary |
output of git describe --tags --dirty --always |
v1.0.0 , v1.0.1-5-g585c78f-dirty , fbd157c |
main.BuildDate |
RFC3339 formatted UTC date | 2016-08-04T18:07:54Z |
main.Version |
contents of ./VERSION file, if exists, or the value passed via the -version option |
2.0.0 |
Using govvv is easy
Just add the build variables you want to the main
package and run:
old | :sparkles: new :sparkles: |
---|---|
go build |
govvv build |
go install |
govvv install |
Version your app with govvv
Create a VERSION
file in your build root directory and add a Version
variable to your main
package.
Do you have your own way of specifying Version
? No problem:
govvv lets you specify custom -ldflags
Your existing -ldflags
argument will still be preserved:
govvv build -ldflags "-X main.BuildNumber=$buildnum" myapp
and the -ldflags
constructed by govvv will be appended to your flag.
Don’t want to depend on govvv
? It’s fine!
You can just pass a -print
argument and govvv
will just print the
go build
command with -ldflags
for you and will not execute the go tool:
$ govvv build -print
go build \
-ldflags \
"-X main.GitCommit=57b9870 -X main.GitBranch=dry-run -X main.GitState=dirty -X main.Version=0.1.0 -X main.BuildDate=2016-08-08T20:50:21Z"
Still don’t want to wrap the go
tool? Well, try -flags
to retrieve the LDFLAGS govvv prepares:
$ go build -ldflags="$(govvv -flags)"
Want to use a different package?
You can pass a -pkg
argument with the full package name, and govvv
will
set the build variables in that package instead of main
. For example:
# build with govvv
$ govvv build -pkg github.com/myacct/myproj/mypkg
# build with go
$ go build -ldflags="$(govvv -flags -pkg $(go list ./mypkg))"
Want to use a different version?
You can pass a -version
argument with the desired version, and govvv
will
use the specified version instead of obtaining it from the ./VERSION
file.
For example:
# build with govvv
$ govvv build -version 1.2.3
# build with go
$ go build -ldflags="$(govvv -flags -version 1.2.3)"
Try govvv today
$ go get github.com/ahmetb/govvv
govvv is distributed under [Apache 2.0 License](LICENSE).
Copyright 2016 Ahmet Alp Balkan
*Note that all licence references and agreements mentioned in the govvv README section above
are relevant to that project's source code only.