47 lines
1.5 KiB
Docker
47 lines
1.5 KiB
Docker
FROM golang:alpine
|
|
|
|
ARG TF_VERSION=1.5.7
|
|
ENV TERRAFORM_VERSION=$TF_VERSION
|
|
|
|
RUN apk update && \
|
|
apk upgrade --update-cache --available && \
|
|
apk add --no-cache curl git jq bash openssh unzip gcc g++ make ca-certificates aws-cli && \
|
|
rm -rf /var/cache/apk/* && \
|
|
if [ "$(uname -m)" = "aarch64" ]; then \
|
|
KUBE_ARCH="linux/arm64" && \
|
|
TF_ARCH="linux_arm64"; \
|
|
else \
|
|
KUBE_ARCH="linux/amd64" && \
|
|
TF_ARCH="linux_amd64"; \
|
|
fi && \
|
|
curl -LO "https://dl.k8s.io/release/$(curl -L -s https://dl.k8s.io/release/stable.txt)/bin/${KUBE_ARCH}/kubectl" && \
|
|
chmod +x ./kubectl && \
|
|
mv ./kubectl /usr/local/bin && \
|
|
mkdir tmp && \
|
|
curl "https://releases.hashicorp.com/terraform/${TERRAFORM_VERSION}/terraform_${TERRAFORM_VERSION}_${TF_ARCH}.zip" -o tmp/terraform.zip && \
|
|
unzip tmp/terraform.zip -d /usr/local/bin && \
|
|
chmod +x /usr/local/bin/terraform && \
|
|
export VERIFY_CHECKSUM=false && \
|
|
rm -rf tmp && \
|
|
mkdir -p /root/.ssh && \
|
|
mkdir -p /root/.aws
|
|
|
|
# Just to make sure its installed alright
|
|
RUN aws --version
|
|
|
|
RUN curl -sSfL https://raw.githubusercontent.com/golangci/golangci-lint/master/install.sh | sh -s -- -b /usr/local/bin v1.55.2
|
|
|
|
WORKDIR $GOPATH/src/github.com/rancher/distros-test-framework
|
|
|
|
COPY . .
|
|
|
|
RUN CGO_ENABLED=0
|
|
|
|
RUN go mod download
|
|
|
|
RUN go mod tidy
|
|
|
|
RUN chmod +x $GOPATH/src/github.com/rancher/distros-test-framework/scripts/entrypoint.sh
|
|
|
|
ENTRYPOINT ["/go/src/github.com/rancher/distros-test-framework/scripts/entrypoint.sh"]
|