From c5c7cc7cb4678362f34fe9c76307a194057e3b9f Mon Sep 17 00:00:00 2001 From: Zufar Dhiyaulhaq Date: Wed, 26 May 2021 19:40:28 +0700 Subject: [PATCH] fix serving samples application cannot build docker image (#3532) * fix serving samples cannot build docker image Signed-off-by: zufardhiyaulhaq * fix secrets-go documentation Signed-off-by: zufardhiyaulhaq * fix build fail Signed-off-by: zufardhiyaulhaq * fix build fail Signed-off-by: zufardhiyaulhaq * fix secrets-go documentation Signed-off-by: zufardhiyaulhaq * fix secrets-go docs Signed-off-by: zufardhiyaulhaq * fix secrets-go docs Signed-off-by: zufardhiyaulhaq * gix secrets-go docs Signed-off-by: zufardhiyaulhaq * fix secrets-go docs Signed-off-by: zufardhiyaulhaq --- docs/serving/samples/gitwebhook-go/Dockerfile | 12 ++++-------- docs/serving/samples/gitwebhook-go/go.mod | 10 ++++++++++ docs/serving/samples/grpc-ping-go/Dockerfile | 5 +---- docs/serving/samples/grpc-ping-go/client/client.go | 2 -- docs/serving/samples/grpc-ping-go/go.mod | 9 +++++++++ docs/serving/samples/grpc-ping-go/grpc-ping.go | 2 -- docs/serving/samples/grpc-ping-go/proto/ping.pb.go | 2 -- docs/serving/samples/secrets-go/Dockerfile | 2 +- docs/serving/samples/secrets-go/go.mod | 5 +++++ docs/serving/samples/secrets-go/index.md | 12 +++++++++++- 10 files changed, 41 insertions(+), 20 deletions(-) create mode 100644 docs/serving/samples/gitwebhook-go/go.mod create mode 100644 docs/serving/samples/grpc-ping-go/go.mod create mode 100644 docs/serving/samples/secrets-go/go.mod diff --git a/docs/serving/samples/gitwebhook-go/Dockerfile b/docs/serving/samples/gitwebhook-go/Dockerfile index ce300ec2a..293554606 100644 --- a/docs/serving/samples/gitwebhook-go/Dockerfile +++ b/docs/serving/samples/gitwebhook-go/Dockerfile @@ -12,21 +12,17 @@ # See the License for the specific language governing permissions and # limitations under the License. -FROM golang AS builder +FROM golang:1.15 as builder # copy the source ADD . /go/src/github.com/knative/docs/docs/serving/samples/gitwebhook-go WORKDIR /go/src/github.com/knative/docs/docs/serving/samples/gitwebhook-go -# install dependencies -RUN go get github.com/google/go-github/github -RUN go get golang.org/x/oauth2 -RUN go get gopkg.in/go-playground/webhooks.v3 -RUN go get gopkg.in/go-playground/webhooks.v3/github - -# build the sample +# Ensure Go modules are on and create the go.mod and go.sum files. +# Also builds the binary RUN CGO_ENABLED=0 go build -o /go/bin/webhook-sample . +# Use a Docker multi-stage build to create a lean production image. FROM golang:alpine EXPOSE 8080 diff --git a/docs/serving/samples/gitwebhook-go/go.mod b/docs/serving/samples/gitwebhook-go/go.mod new file mode 100644 index 000000000..c5daac105 --- /dev/null +++ b/docs/serving/samples/gitwebhook-go/go.mod @@ -0,0 +1,10 @@ +module github.com/knative/docs/docs/serving/samples/gitwebhook-go + +go 1.15 + +require ( + github.com/google/go-github v17.0.0+incompatible + github.com/google/go-querystring v1.1.0 // indirect + golang.org/x/oauth2 v0.0.0-20210427180440-81ed05c6b58c + gopkg.in/go-playground/webhooks.v3 v3.13.0 +) diff --git a/docs/serving/samples/grpc-ping-go/Dockerfile b/docs/serving/samples/grpc-ping-go/Dockerfile index 3c81a785c..65b584d3d 100644 --- a/docs/serving/samples/grpc-ping-go/Dockerfile +++ b/docs/serving/samples/grpc-ping-go/Dockerfile @@ -15,10 +15,7 @@ # Use the official Golang image to create a build artifact. # This is based on Debian and sets the GOPATH to /go. # https://hub.docker.com/_/golang -FROM golang:1.12 as builder - -# Retrieve the dependencies. -RUN go get google.golang.org/grpc +FROM golang:1.15 as builder # Copy local code to the container image. WORKDIR /go/src/github.com/knative/docs/docs/serving/samples/grpc-ping-go diff --git a/docs/serving/samples/grpc-ping-go/client/client.go b/docs/serving/samples/grpc-ping-go/client/client.go index ac5227bf9..107ab56ea 100644 --- a/docs/serving/samples/grpc-ping-go/client/client.go +++ b/docs/serving/samples/grpc-ping-go/client/client.go @@ -1,5 +1,3 @@ -// +build grpcping - package main import ( diff --git a/docs/serving/samples/grpc-ping-go/go.mod b/docs/serving/samples/grpc-ping-go/go.mod new file mode 100644 index 000000000..bbae69dd0 --- /dev/null +++ b/docs/serving/samples/grpc-ping-go/go.mod @@ -0,0 +1,9 @@ +module github.com/knative/docs/docs/serving/samples/grpc-ping-go + +go 1.15 + +require ( + github.com/golang/protobuf v1.5.2 + golang.org/x/net v0.0.0-20210505024714-0287a6fb4125 + google.golang.org/grpc v1.37.0 +) diff --git a/docs/serving/samples/grpc-ping-go/grpc-ping.go b/docs/serving/samples/grpc-ping-go/grpc-ping.go index ff969ba33..14e16ba85 100644 --- a/docs/serving/samples/grpc-ping-go/grpc-ping.go +++ b/docs/serving/samples/grpc-ping-go/grpc-ping.go @@ -1,5 +1,3 @@ -// +build grpcping - package main import ( diff --git a/docs/serving/samples/grpc-ping-go/proto/ping.pb.go b/docs/serving/samples/grpc-ping-go/proto/ping.pb.go index 0543a6279..49615ae72 100644 --- a/docs/serving/samples/grpc-ping-go/proto/ping.pb.go +++ b/docs/serving/samples/grpc-ping-go/proto/ping.pb.go @@ -1,8 +1,6 @@ // Code generated by protoc-gen-go. DO NOT EDIT. // source: ping.proto -// +build grpcping - package ping import ( diff --git a/docs/serving/samples/secrets-go/Dockerfile b/docs/serving/samples/secrets-go/Dockerfile index 42776038e..4edb68d1a 100644 --- a/docs/serving/samples/secrets-go/Dockerfile +++ b/docs/serving/samples/secrets-go/Dockerfile @@ -1,7 +1,7 @@ # Use the official Golang image to create a build artifact. # This is based on Debian and sets the GOPATH to /go. # https://hub.docker.com/_/golang -FROM golang as builder +FROM golang:1.15 as builder # Copy local code to the container image. WORKDIR /go/src/github.com/knative/docs/hellosecrets diff --git a/docs/serving/samples/secrets-go/go.mod b/docs/serving/samples/secrets-go/go.mod new file mode 100644 index 000000000..74a4ddd91 --- /dev/null +++ b/docs/serving/samples/secrets-go/go.mod @@ -0,0 +1,5 @@ +module github.com/knative/docs/docs/serving/samples/secrets-go + +go 1.15 + +require cloud.google.com/go/storage v1.15.0 diff --git a/docs/serving/samples/secrets-go/index.md b/docs/serving/samples/secrets-go/index.md index ab891ea43..04634183f 100644 --- a/docs/serving/samples/secrets-go/index.md +++ b/docs/serving/samples/secrets-go/index.md @@ -91,6 +91,16 @@ cd knative-docs/docs/serving/samples/secrets-go } ``` +1. Create a new file named `go.mod` and paste the following code. This code is Golang module that + specifies a module name, dependencies, and the minimal versions. + ```go + module github.com/knative/docs/docs/serving/samples/secrets-go + + go 1.15 + + require cloud.google.com/go/storage v1.15.0 + ``` + 1. In your project directory, create a file named `Dockerfile` and copy the code block below into it. For detailed instructions on dockerizing a Go app, see [Deploying Go servers with Docker](https://blog.golang.org/docker). @@ -99,7 +109,7 @@ cd knative-docs/docs/serving/samples/secrets-go # Use the official Golang image to create a build artifact. # This is based on Debian and sets the GOPATH to /go. # https://hub.docker.com/_/golang - FROM golang as builder + FROM golang:1.15 as builder # Copy local code to the container image. WORKDIR /go/src/github.com/knative/docs/hellosecrets