kube-tools/Containerfile.multiarch
Robert Kaussow fcabd4fc22
Some checks failed
ci/woodpecker/push/build-package Pipeline was successful
ci/woodpecker/push/build-container Pipeline failed
ci/woodpecker/push/docs unknown status
ci/woodpecker/push/notify Pipeline was successful
refactor: migrate to woodpecker ci (#82)
Reviewed-on: #82
Co-authored-by: Robert Kaussow <mail@thegeeklab.de>
Co-committed-by: Robert Kaussow <mail@thegeeklab.de>
2023-11-08 09:02:47 +01:00

63 lines
3.1 KiB
Plaintext

FROM docker.io/alpine:3.18@sha256:eece025e432126ce23f223450a0326fbebde39cdf496a85d8c016293fc851978
LABEL maintainer="Robert Kaussow <mail@thegeeklab.de>"
LABEL org.opencontainers.image.authors="Robert Kaussow <mail@thegeeklab.de>"
LABEL org.opencontainers.image.title="kube-tools"
LABEL org.opencontainers.image.url="https://gitea.rknet.org/container/kube-tools"
LABEL org.opencontainers.image.source="https://gitea.rknet.org/container/kube-tools"
LABEL org.opencontainers.image.documentation="https://gitea.rknet.org/container/kube-tools"
ARG TARGETOS
ARG TARGETARCH
ARG TARGETVARIANT
ARG KUBECTL_VERSION
ARG YQ_VERSION
ARG HELM_VERSION
ARG KUSTOMIZE_VERSION
ARG KUBECONFORM_VERSION
ARG POLARIS_VERSION
# renovate: datasource=github-releases depName=kubernetes/kubernetes
ENV KUBECTL_VERSION="${KUBECTL_VERSION:-v1.28.3}"
# renovate: datasource=github-releases depName=mikefarah/yq
ENV YQ_VERSION="${YQ_VERSION:-v4.35.2}"
# renovate: datasource=github-releases depName=helm/helm
ENV HELM_VERSION="${HELM_VERSION:-v3.13.1}"
# renovate: datasource=github-releases depName=kubernetes-sigs/kustomize
ENV KUSTOMIZE_VERSION="${KUSTOMIZE_VERSION:-v5.2.1}"
# renovate: datasource=github-releases depName=yannh/kubeconform
ENV KUBECONFORM_VERSION="${KUBECONFORM_VERSION:-v0.6.3}"
# renovate: datasource=github-releases depName=FairwindsOps/polaris
ENV POLARIS_VERSION="${POLARIS_VERSION:-8.5.2}"
# renovate: datasource=pypi depName=flux-local
ENV FLUX_LOCAL_VERSION="${FLUX_LOCAL_VERSION:-3.1.1}"
RUN apk --update add curl tar bash python3 py3-yaml py3-pip findutils git && \
pip install -qq --no-cache-dir flux-local=="$FLUX_LOCAL_VERSION" && \
curl -SsfL -o /usr/local/bin/kubectl "https://dl.k8s.io/release/${KUBECTL_VERSION}/bin/${TARGETOS}/${TARGETARCH}/kubectl" && \
curl -SsfL -o /usr/local/bin/kubectl-convert "https://dl.k8s.io/release/${KUBECTL_VERSION}/bin/${TARGETOS}/${TARGETARCH}/kubectl-convert" && \
curl -SsfL -o /usr/local/bin/yq "https://github.com/mikefarah/yq/releases/download/${YQ_VERSION}/yq_${TARGETOS}_${TARGETARCH}" && \
curl -SsfL "https://get.helm.sh/helm-${HELM_VERSION}-${TARGETOS}-${TARGETARCH}.tar.gz" \
| tar xz --strip-components=1 -C /usr/local/bin "${TARGETOS}-${TARGETARCH}/helm" && \
curl -SsfL "https://github.com/kubernetes-sigs/kustomize/releases/download/kustomize%2F${KUSTOMIZE_VERSION}/kustomize_${KUSTOMIZE_VERSION}_${TARGETOS}_${TARGETARCH}.tar.gz" \
| tar xz -C /usr/local/bin kustomize && \
curl -SsfL "https://github.com/yannh/kubeconform/releases/download/${KUBECONFORM_VERSION}/kubeconform-${TARGETOS}-${TARGETARCH}.tar.gz" \
| tar xz -C /usr/local/bin kubeconform && \
curl -SsfL "https://github.com/FairwindsOps/polaris/releases/download/${POLARIS_VERSION}/polaris_${TARGETOS}_${TARGETARCH}.tar.gz" \
| tar xz -C /usr/local/bin polaris && \
chmod 755 /usr/local/bin/kubectl && \
chmod 755 /usr/local/bin/kubectl-convert && \
chmod 755 /usr/local/bin/yq && \
chmod 755 /usr/local/bin/helm && \
chmod 755 /usr/local/bin/kustomize && \
chmod 755 /usr/local/bin/kubeconform && \
rm -rf /var/cache/apk/* && \
rm -rf /tmp/*
ADD overlay/ /
STOPSIGNAL SIGTERM
CMD []