From 95ed84cbf769a9c267ca9f1bdc2a0bc145178fee Mon Sep 17 00:00:00 2001 From: iizitounene Date: Wed, 28 Jan 2026 13:31:57 +0000 Subject: [PATCH 1/3] chore: optimize build and apply Alpine security upgrades --- Dockerfile | 19 +++++++++---------- 1 file changed, 9 insertions(+), 10 deletions(-) diff --git a/Dockerfile b/Dockerfile index 97aad21..72ccf34 100644 --- a/Dockerfile +++ b/Dockerfile @@ -18,9 +18,7 @@ ARG GO_VERSION=1.24 FROM golang:${GO_VERSION} AS go-build -ARG GIT_COMMIT="_unset_" -ARG LDFLAGS="-X localbuild=true" -ARG TARGETOS="linux" +ARG TARGETOS ARG TARGETARCH WORKDIR /workspace/spark-web-proxy @@ -30,17 +28,18 @@ COPY go.* ./ COPY *.go ./ COPY internal/ internal/ COPY cmd/ cmd/ +COPY LICENSE ./ -RUN go mod tidy \ - && go mod download -RUN --mount=type=cache,target=/root/.cache/go-build \ - --mount=type=cache,target=/go/pkg \ - LDFLAGS=${LDFLAGS##-X localbuild=true} GIT_COMMIT=$GIT_COMMIT \ - CGO_ENABLED=0 GOOS=$TARGETOS GOARCH=$TARGETARCH go build -a -o spark-web-proxy main.go +RUN go mod download + +RUN CGO_ENABLED=0 GOOS=$TARGETOS GOARCH=$TARGETARCH \ + go build -a -o spark-web-proxy main.go FROM alpine:3.23.2 -RUN apk --no-cache add ca-certificates && update-ca-certificates +RUN apk --no-cache upgrade && \ + apk --no-cache add ca-certificates && \ + update-ca-certificates COPY --from=go-build /workspace/spark-web-proxy /usr/local/bin/ From da03da42cd97daf57f5cf24faa00041a2e4f3597 Mon Sep 17 00:00:00 2001 From: iizitounene Date: Wed, 28 Jan 2026 13:55:57 +0000 Subject: [PATCH 2/3] chore(docker): add project License and third-party licenses in the image under /LICENSES directory --- Dockerfile | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/Dockerfile b/Dockerfile index 72ccf34..e655c1b 100644 --- a/Dockerfile +++ b/Dockerfile @@ -20,6 +20,7 @@ FROM golang:${GO_VERSION} AS go-build ARG TARGETOS ARG TARGETARCH +ARG GO_LICENSES_VERSION=v2.0.1 WORKDIR /workspace/spark-web-proxy @@ -32,9 +33,14 @@ COPY LICENSE ./ RUN go mod download +RUN go install github.com/google/go-licenses/v2@${GO_LICENSES_VERSION} + RUN CGO_ENABLED=0 GOOS=$TARGETOS GOARCH=$TARGETARCH \ go build -a -o spark-web-proxy main.go +RUN CGO_ENABLED=0 GOOS=$TARGETOS GOARCH=$TARGETARCH \ + go-licenses save ./... --save_path=/LICENSES + FROM alpine:3.23.2 RUN apk --no-cache upgrade && \ @@ -42,6 +48,7 @@ RUN apk --no-cache upgrade && \ update-ca-certificates COPY --from=go-build /workspace/spark-web-proxy /usr/local/bin/ +COPY --from=go-build /LICENSES/* /LICENSES/ USER 65534:65534 From b85d62a8ed60a37d920397999c170909561a38c5 Mon Sep 17 00:00:00 2001 From: iizitounene Date: Wed, 28 Jan 2026 14:18:49 +0000 Subject: [PATCH 3/3] ci: update go version to 1.24 --- .github/workflows/ci.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index d609f8d..04269f2 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -71,7 +71,7 @@ jobs: name: run tests uses: okdp/gh-workflows/.github/workflows/makefile-run-template.yml@v1 with: - go_version: "1.23" + go_version: "1.24" command: "make test" docker_test: