Skip to content

Commit c5e6877

Browse files
committed
tests: Revert update to install process
1 parent e0a862f commit c5e6877

File tree

2 files changed

+100
-136
lines changed

2 files changed

+100
-136
lines changed

tests/Dockerfile

Lines changed: 100 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -2,24 +2,116 @@
22
FROM ubuntu:24.04 AS unit
33
LABEL org.opencontainers.image.source=https://github.com/elastisys/compliantkubernetes-apps
44

5+
ARG DEBIAN_FRONTEND="noninteractive"
56
ENV LANGUAGE="en"
67
ENV LANG="en_US.utf8"
8+
ARG TZ="Etc/UTC"
9+
10+
RUN apt-get update && \
11+
apt-get upgrade -y && \
12+
apt-get install -y apache2-utils bats curl dnsutils gettext-base git gpg iputils-ping jq locales make net-tools npm pwgen s3cmd ssh unzip && \
13+
apt-get clean && \
14+
rm -rf /var/lib/apt/lists/* && \
15+
localedef -i en_US -c -f UTF-8 -A /usr/share/locale/locale.alias en_US.UTF-8
716

8-
ENV HELM_DATA_HOME="/usr/local/share/helm"
9-
ENV DOCS_PATH="/usr/local/share/docs"
1017
ENV NODE_PATH="/usr/local/lib/node_modules"
1118

12-
COPY tests/common/init.sh init.sh
19+
ARG GOMPLATE_VERSION="3.11.7"
20+
RUN curl -LOs "https://github.com/hairyhenderson/gomplate/releases/download/v${GOMPLATE_VERSION}/gomplate_linux-amd64" && \
21+
install -Tm 755 gomplate_linux-amd64 /usr/local/bin/gomplate && \
22+
rm gomplate_linux-amd64
23+
24+
ARG HELM_VERSION="3.13.3"
25+
ENV HELM_DATA_HOME="/usr/local/share/helm"
26+
RUN curl -LOs "https://get.helm.sh/helm-v${HELM_VERSION}-linux-amd64.tar.gz" && \
27+
tar -zxvf "helm-v${HELM_VERSION}-linux-amd64.tar.gz" linux-amd64/helm && \
28+
install -Tm 755 linux-amd64/helm /usr/local/bin/helm && \
29+
rm -rf linux-amd64 "helm-v${HELM_VERSION}-linux-amd64.tar.gz"
30+
31+
ARG HELM_DIFF_VERSION="3.9.4"
32+
RUN helm plugin install https://github.com/databus23/helm-diff --version "v${HELM_DIFF_VERSION}" > /dev/null
33+
34+
ARG HELM_SECRETS_VERSION="4.5.1"
35+
RUN helm plugin install https://github.com/jkroepke/helm-secrets --version "v${HELM_SECRETS_VERSION}" > /dev/null
36+
37+
ARG HELMFILE_VERSION="0.162.0"
38+
RUN curl -LOs "https://github.com/helmfile/helmfile/releases/download/v${HELMFILE_VERSION}/helmfile_${HELMFILE_VERSION}_linux_amd64.tar.gz" && \
39+
tar -zxvf "helmfile_${HELMFILE_VERSION}_linux_amd64.tar.gz" helmfile && \
40+
install -Tm 755 helmfile /usr/local/bin/helmfile && \
41+
rm helmfile "helmfile_${HELMFILE_VERSION}_linux_amd64.tar.gz"
42+
43+
ENV JSONSCHEMA2MD_VERSION="8.0.2"
44+
RUN npm install --global "@adobe/jsonschema2md@${JSONSCHEMA2MD_VERSION}"
45+
46+
ARG KUBECTL_VERSION="1.29.7"
47+
RUN curl -LOs "https://storage.googleapis.com/kubernetes-release/release/v${KUBECTL_VERSION}/bin/linux/amd64/kubectl" && \
48+
install -Tm 755 kubectl /usr/local/bin/kubectl && \
49+
rm kubectl
1350

14-
RUN /init.sh unit-packages
15-
RUN /init.sh unit-binaries
51+
ARG KUBECONFORM_VERSION="0.6.3"
52+
RUN curl -LOs "https://github.com/yannh/kubeconform/releases/download/v${KUBECONFORM_VERSION}/kubeconform-linux-amd64.tar.gz" && \
53+
tar -zxvf kubeconform-linux-amd64.tar.gz kubeconform && \
54+
install -Tm 755 kubeconform /usr/local/bin/kubeconform && \
55+
rm kubeconform-linux-amd64.tar.gz kubeconform
56+
57+
ARG KUBELOGIN_VERSION="1.28.0"
58+
RUN curl -LOs "https://github.com/int128/kubelogin/releases/download/v${KUBELOGIN_VERSION}/kubelogin_linux_amd64.zip" && \
59+
unzip kubelogin_linux_amd64.zip && \
60+
install -Tm 755 kubelogin /usr/local/bin/kubectl-oidc_login && \
61+
rm kubelogin kubelogin_linux_amd64.zip LICENSE README.md
62+
63+
ARG OPA_VERSION="v0.57.1"
64+
RUN curl -LOs "https://github.com/open-policy-agent/opa/releases/download/${OPA_VERSION}/opa_linux_amd64" && \
65+
install -Tm 755 opa_linux_amd64 /usr/local/bin/opa && \
66+
rm opa_linux_amd64
67+
68+
ARG SOPS_VERSION="3.8.1"
69+
RUN curl -LOs "https://github.com/getsops/sops/releases/download/v${SOPS_VERSION}/sops-v${SOPS_VERSION}.linux.amd64" && \
70+
install -Tm 755 "sops-v${SOPS_VERSION}.linux.amd64" /usr/local/bin/sops && \
71+
rm "sops-v${SOPS_VERSION}.linux.amd64"
72+
73+
ARG YAJSV_VERSION="1.4.1"
74+
RUN curl -LOs "https://github.com/neilpa/yajsv/releases/download/v${YAJSV_VERSION}/yajsv.linux.amd64" && \
75+
install -Tm 755 yajsv.linux.amd64 /usr/local/bin/yajsv && \
76+
rm yajsv.linux.amd64
77+
78+
ARG YQ_VERSION="4.42.1"
79+
RUN curl -LOs "https://github.com/mikefarah/yq/releases/download/v${YQ_VERSION}/yq_linux_amd64" && \
80+
install -Tm 755 yq_linux_amd64 /usr/local/bin/yq4 && \
81+
rm yq_linux_amd64
82+
83+
# Currently all from main as most do not have current releases
84+
RUN git clone --depth 1 https://github.com/bats-core/bats-assert.git /usr/local/lib/bats/assert
85+
RUN git clone --depth 1 https://github.com/bats-core/bats-detik.git /usr/local/lib/bats/detik
86+
RUN git clone --depth 1 https://github.com/bats-core/bats-file.git /usr/local/lib/bats/file
87+
RUN git clone --depth 1 https://github.com/grayhemp/bats-mock.git /usr/local/lib/bats/mock
88+
RUN git clone --depth 1 https://github.com/bats-core/bats-support.git /usr/local/lib/bats/support
89+
90+
ENV DOCS_PATH="/usr/local/share/docs"
91+
RUN git clone --depth 1 https://github.com/elastisys/welkin.git "${DOCS_PATH}" && \
92+
chmod --recursive a+w "${DOCS_PATH}"
1693

1794
# Container to run integration and end-to-end tests
1895
FROM unit AS main
1996

97+
RUN apt-get update && \
98+
apt-get install -y buildah docker.io libasound2t64 libatk1.0-0 libatk-bridge2.0-0 libcanberra-gtk-module libcanberra-gtk3-module libcups2 libgbm-dev libgbm1 libglib2.0-0 libgtk2.0-0 libgtk2.0-0t64 libgtk-3-0 libgtk-3-0t64 libnotify-dev libnss3 libxss1 libxtst6 podman-remote skopeo xauth xvfb && \
99+
apt-get clean && \
100+
rm -rf /var/lib/apt/lists/* && \
101+
ln -s /usr/bin/podman-remote /usr/bin/podman
102+
103+
ARG CYPRESS_VERSION="13.14.1"
20104
ENV CYPRESS_CACHE_FOLDER="/usr/local/lib/cypress"
105+
RUN npm install --global "cypress@${CYPRESS_VERSION}" && \
106+
chmod --recursive a+w "${CYPRESS_CACHE_FOLDER}"
21107

22-
COPY tests/common/init.sh init.sh
108+
ARG KIND_VERSION="0.23.0"
109+
RUN curl -LOs "https://github.com/kubernetes-sigs/kind/releases/download/v${KIND_VERSION}/kind-linux-amd64" && \
110+
install -Tm 755 kind-linux-amd64 /usr/local/bin/kind && \
111+
rm kind-linux-amd64
23112

24-
RUN /init.sh main-packages
25-
RUN /init.sh main-binaries
113+
ARG VELERO_VERSION="1.13.0"
114+
RUN curl -LOs "https://github.com/vmware-tanzu/velero/releases/download/v${VELERO_VERSION}/velero-v${VELERO_VERSION}-linux-amd64.tar.gz" && \
115+
tar -zxvf "velero-v${VELERO_VERSION}-linux-amd64.tar.gz" "velero-v${VELERO_VERSION}-linux-amd64" && \
116+
install -Tm 755 "velero-v${VELERO_VERSION}-linux-amd64/velero" /usr/local/bin/velero && \
117+
rm -r "velero-v${VELERO_VERSION}-linux-amd64.tar.gz" "velero-v${VELERO_VERSION}-linux-amd64"

tests/common/init.sh

Lines changed: 0 additions & 128 deletions
This file was deleted.

0 commit comments

Comments
 (0)