FROM focs.ji.sjtu.edu.cn:5000/gitea/runner-images:ubuntu-latest

ARG GO_VERSION=1.24.1
ARG GOLANGCI_LINT_VERSION=1.64.8
ENV PATH=$PATH:/usr/local/go/bin:/root/go/bin

RUN sed -i s@/archive.ubuntu.com/@/mirrors.tuna.tsinghua.edu.cn/@g /etc/apt/sources.list && \
    apt-get update && \
    apt-get install -y --no-install-recommends upx && \
    apt-get clean && \
    rm -rf /var/lib/apt/lists/*

RUN wget -q https://studygolang.com/dl/golang/go${GO_VERSION}.linux-amd64.tar.gz && \
    rm -rf /usr/local/go && \
    tar -C /usr/local -xzf go${GO_VERSION}.linux-amd64.tar.gz && \
    rm go${GO_VERSION}.linux-amd64.tar.gz

RUN wget -q https://ghfast.top/https://github.com/golangci/golangci-lint/releases/download/v${GOLANGCI_LINT_VERSION}/golangci-lint-${GOLANGCI_LINT_VERSION}-linux-amd64.tar.gz && \
    tar -C /tmp -xzf golangci-lint-${GOLANGCI_LINT_VERSION}-linux-amd64.tar.gz && \
    rm -rf golangci-lint-${GOLANGCI_LINT_VERSION}-linux-amd64.tar.gz && \
    mkdir -p /root/go/bin && \
    mv /tmp/golangci-lint-${GOLANGCI_LINT_VERSION}-linux-amd64/golangci-lint /root/go/bin