# Tinqs CI Runner Base Image
# Pre-installed: Go, Node.js, AWS CLI, Docker CLI, git, ssh, curl
# Used by act_runner with runs-on: host (no per-job install overhead)

FROM docker:29-dind

ARG GO_VERSION=1.26.2
ARG NODE_VERSION=22

# System packages
RUN apk add --no-cache \
    bash git curl wget unzip tar \
    ca-certificates openssh-client \
    build-base python3 \
    s6 tzdata

# Go
RUN curl -fsSL "https://go.dev/dl/go${GO_VERSION}.linux-amd64.tar.gz" | tar -C /usr/local -xz
ENV PATH="/usr/local/go/bin:${PATH}"
ENV GOPATH="/go"
ENV PATH="${GOPATH}/bin:${PATH}"

# Node.js + pnpm
RUN apk add --no-cache nodejs npm && \
    npm install -g pnpm

# AWS CLI
RUN curl -fsSL https://awscli.amazonaws.com/awscli-exe-linux-x86_64.zip -o /tmp/awscli.zip && \
    unzip -q /tmp/awscli.zip -d /tmp && \
    /tmp/aws/install && \
    rm -rf /tmp/awscli.zip /tmp/aws

# Verify
RUN go version && node --version && pnpm --version && aws --version && docker --version && git --version

WORKDIR /workspace
