Prepare for checking in generated code

This commit is contained in:
Kristoffer Dalby 2021-10-27 06:40:39 +00:00
parent 6e764942a2
commit 8f2ef6a57d
5 changed files with 13 additions and 21 deletions

View File

@ -14,4 +14,3 @@ docker-compose*
README.md
LICENSE
.vscode
gen/

3
.gitignore vendored
View File

@ -25,6 +25,3 @@ config.yaml
.idea
test_output/
# Protobuf generated code
gen/

View File

@ -2,23 +2,13 @@ FROM bufbuild/buf:1.0.0-rc6 as buf
FROM golang:1.17.1-bullseye AS build
ENV GOPATH /go
COPY --from=buf /usr/local/bin/buf /usr/local/bin/buf
WORKDIR /go/src/headscale
COPY go.mod go.sum /go/src/headscale/
WORKDIR /go/src/headscale
RUN go mod download
COPY . .
RUN go install \
github.com/grpc-ecosystem/grpc-gateway/v2/protoc-gen-grpc-gateway \
github.com/grpc-ecosystem/grpc-gateway/v2/protoc-gen-openapiv2 \
google.golang.org/protobuf/cmd/protoc-gen-go \
google.golang.org/grpc/cmd/protoc-gen-go-grpc
RUN buf generate proto
RUN go install -a -ldflags="-extldflags=-static" -tags netgo,sqlite_omit_load_extension ./cmd/headscale
RUN test -e /go/bin/headscale

View File

@ -28,3 +28,10 @@ compress: build
generate:
rm -rf gen
buf generate proto
install-protobuf-plugins:
go install \
github.com/grpc-ecosystem/grpc-gateway/v2/protoc-gen-grpc-gateway \
github.com/grpc-ecosystem/grpc-gateway/v2/protoc-gen-openapiv2 \
google.golang.org/protobuf/cmd/protoc-gen-go \
google.golang.org/grpc/cmd/protoc-gen-go-grpc

View File

@ -71,18 +71,17 @@ To contribute to Headscale you would need the lastest version of [Go](golang.org
- Protobuf tools:
```shell
go install \
github.com/grpc-ecosystem/grpc-gateway/v2/protoc-gen-grpc-gateway \
github.com/grpc-ecosystem/grpc-gateway/v2/protoc-gen-openapiv2 \
google.golang.org/protobuf/cmd/protoc-gen-go \
google.golang.org/grpc/cmd/protoc-gen-go-grpc
make install-protobuf-plugins
```
Building the project requires the generation of Go code from Protobuf (in `proto/`) and it can be (re-)generated with:
### Testing and building
Some parts of the project requires the generation of Go code from Protobuf (if changes is made in `proto/`) and it must be (re-)generated with:
```shell
make generate
```
**Note**: Please check in changes from `gen/` in a separate commit to make it easier to review.
To run the tests: