FROM --platform=$BUILDPLATFORM docker.io/golang:1.24-alpine3.21 AS build WORKDIR /src COPY . . ARG TARGETOS TARGETARCH CI_COMMIT_SHA CI_COMMIT_TAG CI_COMMIT_BRANCH ENV GOOS=$TARGETOS ENV GOARCH=$TARGETARCH RUN apk add --no-cache -q just git RUN --mount=type=cache,target=/root/.cache/go-build \ --mount=type=cache,target=/go/pkg \ just build-cli FROM docker.io/alpine:3.21 WORKDIR /woodpecker RUN apk add -U --no-cache ca-certificates && \ adduser -u 1000 -g 1000 -D woodpecker ENV GODEBUG=netdns=go ENV WOODPECKER_DISABLE_UPDATE_CHECK=true COPY --from=build /src/dist/crow-cli /bin/ USER woodpecker HEALTHCHECK CMD ["/bin/crow-cli", "ping"] ENTRYPOINT ["/bin/crow-cli"]