File tree Expand file tree Collapse file tree 4 files changed +29
-4
lines changed Expand file tree Collapse file tree 4 files changed +29
-4
lines changed Original file line number Diff line number Diff line change 4545
4646 validate :
4747 runs-on : ubuntu-latest
48+ env :
49+ GOLANGCI_LINT_MULTIPLATFORM : 1
4850 needs :
4951 - prepare
5052 strategy :
Original file line number Diff line number Diff line change 11run :
2- timeout : 10m
2+ timeout : 30m
33 build-tags :
44 - containers_image_openpgp
55 - exclude_graphdriver_btrfs
Original file line number Diff line number Diff line change @@ -12,6 +12,10 @@ variable "GITHUB_REF" {
1212 default = " "
1313}
1414
15+ variable "GOLANGCI_LINT_MULTIPLATFORM" {
16+ default = null
17+ }
18+
1519target "_common" {
1620 args = {
1721 GO_VERSION = GO_VERSION
@@ -131,6 +135,20 @@ target "lint" {
131135 dockerfile = " ./hack/lint.Dockerfile"
132136 target = " lint"
133137 output = [" type=cacheonly" ]
138+ platforms = GOLANGCI_LINT_MULTIPLATFORM != null ? [
139+ " darwin/amd64" ,
140+ " darwin/arm64" ,
141+ " linux/amd64" ,
142+ " linux/arm/v5" ,
143+ " linux/arm/v6" ,
144+ " linux/arm/v7" ,
145+ " linux/arm64" ,
146+ " linux/ppc64le" ,
147+ " linux/riscv64" ,
148+ " linux/s390x" ,
149+ " windows/amd64" ,
150+ " windows/arm64"
151+ ] : []
134152}
135153
136154target "vendor-validate" {
Original file line number Diff line number Diff line change 11# syntax=docker/dockerfile:1
22
33ARG GO_VERSION="1.23"
4+ ARG XX_VERSION="1.6.1"
45ARG ALPINE_VERSION="3.21"
56ARG GOLANGCI_LINT_VERSION="v1.62"
67
7- FROM golang:${GO_VERSION}-alpine${ALPINE_VERSION} AS base
8+ FROM --platform=$BUILDPLATFORM tonistiigi/xx:${XX_VERSION} AS xx
9+ FROM --platform=$BUILDPLATFORM golang:${GO_VERSION}-alpine${ALPINE_VERSION} AS base
810ENV GOFLAGS="-buildvcs=false"
911RUN apk add --no-cache gcc linux-headers musl-dev
12+ COPY --from=xx --link / /
1013WORKDIR /src
1114
12- FROM golangci/golangci-lint:${GOLANGCI_LINT_VERSION}-alpine AS golangci-lint
15+ FROM --platform=$BUILDPLATFORM golangci/golangci-lint:${GOLANGCI_LINT_VERSION}-alpine AS golangci-lint
1316FROM base AS lint
17+ ARG TARGETPLATFORM
1418RUN --mount=type=bind,target=. \
15- --mount=type=cache,target=/root/.cache \
19+ --mount=type=cache,target=/root/.cache,id=lint-cache-$TARGETPLATFORM \
1620 --mount=from=golangci-lint,source=/usr/bin/golangci-lint,target=/usr/bin/golangci-lint \
21+ xx-go --wrap && \
1722 golangci-lint run ./...
You can’t perform that action at this time.
0 commit comments