diff --git a/install_go_programs.yml b/install_go_programs.yml new file mode 100644 index 00000000..59bde6b9 --- /dev/null +++ b/install_go_programs.yml @@ -0,0 +1,15 @@ +--- +# File: install_go_programs.yml + +# - name: debug +# debug: +# var: "packages" + +- name: "{{ name }}" + shell: + cmd: "go install {{ item }}" + environment: + GOPATH: "{{ go_tools_directory }}" + with_items: "{{ packages }}" + register: "go_get_result" + changed_when: "'downloading' in go_get_result.stderr" diff --git a/roles/development/tasks/main.yml b/roles/development/tasks/main.yml index 4e20808e..52dfa98b 100644 --- a/roles/development/tasks/main.yml +++ b/roles/development/tasks/main.yml @@ -83,26 +83,35 @@ - "go" - "go-tools" +- include: "../../install_go_programs.yml" + vars: + name: "add useful go programs" + packages: + - "github.com/uudashr/gopkgs/v2/cmd/gopkgs@latest" + - "github.com/golangci/golangci-lint/cmd/golangci-lint@latest" + - "github.com/zimmski/go-mutesting/cmd/go-mutesting@latest" + - "github.com/go-delve/delve/cmd/dlv@latest" + - "google.golang.org/grpc/cmd/protoc-gen-go-grpc@latest" + - "github.com/fullstorydev/grpcurl/cmd/grpcurl@latest" + - "github.com/golang-migrate/migrate/v4/cmd/migrate@latest" + - "github.com/swaggo/swag/cmd/swag@latest" + tags: + - "languages" + - "go" + - "go-tools" + - include: "../../install_go_packages.yml" vars: name: "add useful go packages" packages: - - "github.com/uudashr/gopkgs/cmd/gopkgs" - "github.com/kisielk/errcheck" - "github.com/tsliwowicz/go-wrk" - "github.com/uber/go-torch" - "github.com/google/pprof" - # - "github.com/golangci/golangci-lint/cmd/golangci-lint@v1.27.0" - - "github.com/zimmski/go-mutesting/cmd/go-mutesting" - "golang.org/x/tools/gopls" - "golang.org/x/tools/godoc" - - "github.com/go-delve/delve/cmd/dlv" - - "github.com/fullstorydev/grpcurl/cmd/grpcurl" - "github.com/golang/protobuf/protoc-gen-go" - - "google.golang.org/grpc/cmd/protoc-gen-go-grpc" - "github.com/sonatype-nexus-community/nancy" - - "github.com/golang-migrate/migrate/cmd/migrate" - - "github.com/swaggo/swag/cmd/swag" tags: - "languages" - "go" @@ -112,7 +121,7 @@ vars: name: "install ko for Go-Kubernetes development" packages: - - "github.com/google/ko/cmd/ko" + - "github.com/google/ko/cmd/ko@latest" tags: - containerization - kubernetes