1
0
mirror of https://github.com/distribution/distribution.git synced 2025-05-06 07:06:47 +00:00
distribution/dockerfiles/lint.Dockerfile
Milos Gajdos fd14cf1933
Vrify the linter config first before running it
Signed-off-by: Milos Gajdos <milosthegajdos@gmail.com>
2025-03-30 07:17:22 -07:00

22 lines
665 B
Docker

# syntax=docker/dockerfile:1
ARG GO_VERSION=1.23.7
ARG ALPINE_VERSION=3.21
ARG GOLANGCI_LINT_VERSION=v1.64.8
ARG BUILDTAGS=""
FROM golangci/golangci-lint:${GOLANGCI_LINT_VERSION}-alpine AS golangci-lint
FROM golang:${GO_VERSION}-alpine${ALPINE_VERSION} AS base
RUN apk add --no-cache gcc musl-dev
WORKDIR /src
FROM base
ENV GOFLAGS="-buildvcs=false"
ARG TIMEOUT="5m"
ARG BUILDTAGS
RUN --mount=type=bind,target=. \
--mount=type=cache,target=/root/.cache \
--mount=from=golangci-lint,source=/usr/bin/golangci-lint,target=/usr/bin/golangci-lint \
golangci-lint config verify && \
golangci-lint --timeout "${TIMEOUT}" --build-tags "${BUILDTAGS}" run