Files
renovatebot eadc66ab1e
node-go image / build (amd64) (push) Successful in 1m24s
node-go image / build (arm64) (push) Successful in 2m36s
node-go image / amend-manifest (push) Successful in 11s
Update dependency golangci/golangci-lint to v2.13.2
2026-08-29 17:00:12 +00:00

36 lines
1.4 KiB
Docker

FROM node:lts-slim
ARG GO_VERSION=1.26
ARG GOLANGCI_LINT_VERSION=v2.13.2
ENV DEBIAN_FRONTEND=noninteractive \
PATH=/usr/local/go/bin:${PATH}
RUN set -eux; \
apt-get update; \
apt-get install -y --no-install-recommends ca-certificates curl git gcc libc6-dev; \
arch="$(dpkg --print-architecture)"; \
case "${arch}" in \
amd64) go_arch='linux-amd64' ;; \
arm64) go_arch='linux-arm64' ;; \
*) echo "Unsupported architecture: ${arch}" >&2; exit 1 ;; \
esac; \
case "${GO_VERSION}" in \
*.*.*) download_go_version="${GO_VERSION}" ;; \
*.*) download_go_version="${GO_VERSION}.0" ;; \
*) echo "GO_VERSION must be major.minor or major.minor.patch: ${GO_VERSION}" >&2; exit 1 ;; \
esac; \
curl -fsSL "https://go.dev/dl/go${download_go_version}.${go_arch}.tar.gz" -o /tmp/go.tgz; \
rm -rf /usr/local/go; \
tar -C /usr/local -xzf /tmp/go.tgz; \
rm -f /tmp/go.tgz; \
gcl_ver="${GOLANGCI_LINT_VERSION#v}"; \
curl -fsSL -o /tmp/gcl.tgz \
"https://github.com/golangci/golangci-lint/releases/download/${GOLANGCI_LINT_VERSION}/golangci-lint-${gcl_ver}-${go_arch}.tar.gz"; \
tar -C /tmp -xzf /tmp/gcl.tgz; \
install -m 0755 "/tmp/golangci-lint-${gcl_ver}-${go_arch}/golangci-lint" /usr/local/bin/golangci-lint; \
rm -rf /tmp/gcl.tgz "/tmp/golangci-lint-${gcl_ver}-${go_arch}"; \
rm -rf /var/lib/apt/lists/*
WORKDIR /app