build: install buf during bootstrap

Previously installing buf was left out of `make bootstrap` because it
had conflicts with the `tools/go.mod` file and dependencies used by
other tools. With Go 1.16 we eliminated that `go.mod` file, and can
now just install `buf` with `go install` like everything else.
This commit is contained in:
Seth Hoenig
2021-04-06 09:42:44 -06:00
parent b206efefaf
commit c85bbbee70
2 changed files with 6 additions and 2 deletions

View File

@@ -102,6 +102,7 @@ deps: ## Install build and development dependencies
go install github.com/hashicorp/hcl/v2/cmd/hclfmt@v2.5.1
go install github.com/golang/protobuf/protoc-gen-go@v1.3.4
go install github.com/hashicorp/go-msgpack/codec/codecgen@v1.1.5
go install github.com/bufbuild/buf/cmd/buf@v0.36.0
.PHONY: lint-deps
lint-deps: ## Install linter dependencies

View File

@@ -4,11 +4,14 @@
## Installation
See installation instructions [here](https://docs.buf.build/installation/).
Use `make bootstrap` in the root of this repo to install the version of `buf` used by Nomad.
## Usage
`make proto` in the root of this repo will invoke `buf` using the configuration in this directory.
## Why use `buf` instead of `protoc`?
Buf is a user-friendly tool to work with Protobuf that outperforms `protoc` in every conceivable way. It was written by the author(s) of [`prototool`](https://github.com/uber/prototool), another tool that made generating Protobuf easier, but which is now deprecated in favor of `buf`. Buf also does linting and breaking-change detection.
Buf is a user-friendly tool to work with Protobuf that outperforms `protoc` in every conceivable way.
It was written by the author(s) of [`prototool`](https://github.com/uber/prototool), another tool
that made generating Protobuf easier, but which is now deprecated in favor of `buf`. Buf also does
linting and breaking-change detection.