This repository was archived by the owner on May 11, 2022. It is now read-only.
- Notifications
You must be signed in to change notification settings - Fork0
🐣 egg - extended go get - alternative for the standard `go get` with a few little but useful features.
License
NotificationsYou must be signed in to change notification settings
kamilsk/egg
Folders and files
Name | Name | Last commit message | Last commit date | |
---|---|---|---|---|
Repository files navigation
Extended go get - alternative for the standard
go get
with a few little but useful features.
$ egg tools add golang.org/x/tools/cmd/goimports@latest$ egg binary get github.com/goreleaser/goreleaser@latest
A full description of the idea is availablehere.
AtAvito, we develop many services written onGo,and many of them use different tools such aseasyjson,goimports,mockgen, and others. It isn't effortless to manage all of themthrough all teams in the company.
I need a tool that helps me to track tool dependencies for services and interact with them.
$ egg deps list> github.com/izumin5210/gex> github.com/spf13/cobra> github.com/stretchr/testify> go.octolab.org/toolkit/cli$ egg deps check ...
$ mkdir tools&&cd tools# init a new toolset$ go mod init your.module/tools$ egg tools init# add golangci-lint to tools.go$ egg tools add github.com/golangci/golangci-lint/cmd/golangci-lint# add mockgen to tools.go and build it to bin/mockgen$ egg tools add --build github.com/golang/mock/mockgen# install tools to ${GOPATH}/bin$export GOBIN="${GOPATH}/bin"$ go generate tools.go# do the same thing$ egg tools install# list the toolset$ egg tools list> mockgen> golangci-lint
$ brew install kamilsk/tap/egg
$ curl -sSfL https://raw.githubusercontent.com/kamilsk/egg/master/bin/install| sh# or$ wget -qO- https://raw.githubusercontent.com/kamilsk/egg/master/bin/install| sh
Don't forget aboutsecurity.
# use standard go tools$ go get github.com/kamilsk/egg@latest# or use egg tool$ egg tools add github.com/kamilsk/egg@latest$ go mod edit -replace=github.com/izumin5210/gex=github.com/kamilsk/gex@latest
$ egg completion bash> /path/to/bash_completion.d/egg.sh$ egg completion zsh> /path/to/zsh-completions/_egg.zsh# or autodetect$source<(egg completion)
See
kubectl
documentation.
made with ❤️ for everyone
About
🐣 egg - extended go get - alternative for the standard `go get` with a few little but useful features.