Skip to content

Commit d3b06c0

Browse files
committed
more cacheing
1 parent 761601f commit d3b06c0

File tree

2 files changed

+20
-9
lines changed

2 files changed

+20
-9
lines changed

.github/workflows/docker-publish.yml

Lines changed: 11 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -35,11 +35,6 @@ jobs:
3535
- name: Checkout repository
3636
uses: actions/checkout@v4
3737

38-
- uses: actions/setup-go@v5
39-
with:
40-
go-version-file: ./go.mod
41-
check-latest: true
42-
4338
# Install the cosign tool except on PR
4439
# https://github.com/sigstore/cosign-installer
4540
- name: Install cosign
@@ -72,6 +67,17 @@ jobs:
7267
with:
7368
images: ${{ env.REGISTRY }}/${{ env.IMAGE_NAME }}
7469

70+
- name: Go Build Cache for Docker
71+
uses: actions/cache@v4
72+
with:
73+
path: go-build-cache
74+
key: ${{ runner.os }}-go-build-cache-${{ hashFiles('**/go.sum') }}
75+
76+
- name: Inject go-build-cache
77+
uses: reproducible-containers/buildkit-cache-dance@4b2444fec0c0fb9dbf175a96c094720a692ef810 # v2.1.4
78+
with:
79+
cache-source: go-build-cache
80+
7581
# Build and push Docker image with Buildx (don't push on PR)
7682
# https://github.com/docker/build-push-action
7783
- name: Build and push Docker image

Dockerfile

Lines changed: 9 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -5,13 +5,18 @@ FROM golang:1.23.7 AS build
55
ARG VERSION
66
# Set the working directory
77
WORKDIR /build
8-
# Copy the current directory contents into the working directory
9-
COPY . .
8+
9+
RUN go env -w GOMODCACHE=/root/.cache/go-build
10+
1011
# Install dependencies
11-
RUN go mod download
12+
COPY go.mod go.sum ./
13+
RUN --mount=type=cache,target=/root/.cache/go-build go mod download
14+
15+
COPY . ./
1216
# Build the server
13-
RUN CGO_ENABLED=0 go build -ldflags="-s -w -X main.version=${VERSION} -X main.commit=$(git rev-parse HEAD) -X main.date=$(date -u +%Y-%m-%dT%H:%M:%SZ)" \
17+
RUN --mount=type=cache,target=/root/.cache/go-build CGO_ENABLED=0 go build -ldflags="-s -w -X main.version=${VERSION} -X main.commit=$(git rev-parse HEAD) -X main.date=$(date -u +%Y-%m-%dT%H:%M:%SZ)" \
1418
-o github-mcp-server cmd/github-mcp-server/main.go
19+
1520
# Make a stage to run the app
1621
FROM gcr.io/distroless/base-debian12
1722
# Set the working directory

0 commit comments

Comments
 (0)
pFad - Phonifier reborn

Pfad - The Proxy pFad of © 2024 Garber Painting. All rights reserved.

Note: This service is not intended for secure transactions such as banking, social media, email, or purchasing. Use at your own risk. We assume no liability whatsoever for broken pages.


Alternative Proxies:

Alternative Proxy

pFad Proxy

pFad v3 Proxy

pFad v4 Proxy