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 README.md
LICENSE LICENSE
.vscode .vscode
gen/

3
.gitignore vendored
View file

@ -25,6 +25,3 @@ config.yaml
.idea .idea
test_output/ 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 FROM golang:1.17.1-bullseye AS build
ENV GOPATH /go ENV GOPATH /go
WORKDIR /go/src/headscale
COPY --from=buf /usr/local/bin/buf /usr/local/bin/buf
COPY go.mod go.sum /go/src/headscale/ COPY go.mod go.sum /go/src/headscale/
WORKDIR /go/src/headscale
RUN go mod download RUN go mod download
COPY . . 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 go install -a -ldflags="-extldflags=-static" -tags netgo,sqlite_omit_load_extension ./cmd/headscale
RUN test -e /go/bin/headscale RUN test -e /go/bin/headscale

View file

@ -28,3 +28,10 @@ compress: build
generate: generate:
rm -rf gen rm -rf gen
buf generate proto 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: - Protobuf tools:
```shell ```shell
go install \ make install-protobuf-plugins
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
``` ```
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 ```shell
make generate make generate
``` ```
**Note**: Please check in changes from `gen/` in a separate commit to make it easier to review.
To run the tests: To run the tests: