github.com/tilt-dev/tilt@v0.33.15-0.20240515162809-0a22ed45d8a0/.circleci/Dockerfile.integration (about)

     1  FROM cimg/go:1.22-node
     2  
     3  USER root
     4  
     5  # Install dependencies from OS package manager sources
     6  RUN apt update && apt install -y --no-install-recommends \
     7      ca-certificates \
     8      jq \
     9      liblz4-tool \
    10      rsync \
    11      socat \
    12      && rm -rf /var/lib/apt/lists/*
    13  
    14  # Install kubectl
    15  RUN curl -sSL -o /usr/local/bin/kubectl "https://dl.k8s.io/release/$(curl -L -s https://dl.k8s.io/release/stable.txt)/bin/linux/amd64/kubectl" \
    16      && chmod +x /usr/local/bin/kubectl \
    17      && kubectl version --client
    18  
    19  # Install docker
    20  # Adapted from https://github.com/circleci/circleci-images/blob/staging/shared/images/Dockerfile-basic.template
    21  # Check https://download.docker.com/linux/static/stable/x86_64/ for latest versions
    22  ENV DOCKER_VERSION=25.0.3
    23  RUN set -exu \
    24    && DOCKER_URL="https://download.docker.com/linux/static/stable/x86_64/docker-${DOCKER_VERSION}.tgz" \
    25    && echo Docker URL: $DOCKER_URL \
    26    && curl --silent --show-error --location --fail --retry 3 --output /tmp/docker.tgz "${DOCKER_URL}" \
    27    && ls -lha /tmp/docker.tgz \
    28    && tar -xz -C /tmp -f /tmp/docker.tgz \
    29    && mv /tmp/docker/* /usr/bin \
    30    && rm -rf /tmp/docker /tmp/docker.tgz \
    31    && which docker \
    32    && (docker version || true)
    33  
    34  # docker-compose v2
    35  ARG DOCKER_COMPOSE_V2_VERSION=v2.25.0
    36  RUN curl -fL "https://github.com/docker/compose/releases/download/${DOCKER_COMPOSE_V2_VERSION}/docker-compose-$(uname -s | tr '[A-Z]' '[a-z]')-$(uname -m)" -o /usr/local/bin/docker-compose \
    37    && chmod a+x /usr/local/bin/docker-compose \
    38    && docker-compose version
    39  
    40  # install Kind (Kubernetes in Docker)
    41  ENV KIND_VERSION=v0.21.0
    42  RUN curl -fLo ./kind-linux-amd64 https://github.com/kubernetes-sigs/kind/releases/download/${KIND_VERSION}/kind-linux-amd64 \
    43    && chmod +x ./kind-linux-amd64 \
    44    && mv ./kind-linux-amd64 /usr/local/bin/kind \
    45    && kind version
    46  
    47  # --- GO UTILITIES / LINTERS ---
    48  USER circleci
    49  
    50  # install gotestsum
    51  RUN go install gotest.tools/gotestsum@latest \
    52      && gotestsum --version
    53  
    54  # install ctlptl from the ctlptl release image
    55  COPY --from=docker/tilt-ctlptl /usr/local/bin/ctlptl /usr/local/bin/