mirror of
https://github.com/etcd-io/etcd.git
synced 2024-09-27 06:25:44 +00:00

Refactoring script/genproto.sh around state-of-the-art techniques of managing tooling in go: - https://github.com/golang/go/wiki/Modules#how-can-i-track-tool-dependencies-for-a-module - uses https://github.com/myitcv/gobin instead of customly created gopath.proto dir - caches tools between executions - guaratees hermetics runs (it was not guaranteed for protoc_grpc_gateway that used latest) The change is no-op for the generated code. The commit reveals a few 'worring things': 1 We depend on : github.com/grpc-ecosystem/grpc-gateway/@v/v1.4.1/protoc-gen-grpc-gateway 2. And also : github.com/grpc-ecosystem/grpc-gateway/@v/v1.15.0/protoc-gen-swagger/protoc-gen-swagger 3. And on extremely old: github.com/gogo/protobuf@v1.0.0 protoc-gen-gofast that is out of sync with the library linked to binaries: github.com/gogo/protobuf@v1.2.1
31 lines
1.1 KiB
Go
31 lines
1.1 KiB
Go
// Copyright 2016 The etcd Authors
|
|
//
|
|
// Licensed under the Apache License, Version 2.0 (the "License");
|
|
// you may not use this file except in compliance with the License.
|
|
// You may obtain a copy of the License at
|
|
//
|
|
// http://www.apache.org/licenses/LICENSE-2.0
|
|
//
|
|
// Unless required by applicable law or agreed to in writing, software
|
|
// distributed under the License is distributed on an "AS IS" BASIS,
|
|
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
// See the License for the specific language governing permissions and
|
|
// limitations under the License.
|
|
|
|
// +build tools
|
|
|
|
// This file implements that pattern:
|
|
// https://github.com/golang/go/wiki/Modules#how-can-i-track-tool-dependencies-for-a-module
|
|
// for etcd. Thanks to this file 'go mod tidy' does not removes dependencies.
|
|
|
|
package tools
|
|
|
|
import (
|
|
_ "github.com/gogo/protobuf/proto"
|
|
// Uncomment when upgrading to >1.9.0 version
|
|
// _ "github.com/grpc-ecosystem/grpc-gateway/protoc-gen-grpc-gateway"
|
|
_ "github.com/grpc-ecosystem/grpc-gateway/protoc-gen-swagger"
|
|
_ "github.com/hexfusion/schwag"
|
|
_ "go.etcd.io/protodoc"
|
|
)
|