# From https://github.com/nehabhardwaj01/docker-cron

FROM        alpine:3.15

ENV RESTIC_VERSION=0.12.1
ENV RESTIC_ARCH=linux_amd64

ENV K8S_VERSION=1.23.1
ENV K8S_ARCH=linux-amd64

ENV JQ_VERSION=1.6
ENV JQ_ARCH=linux64

ENV YQ_VERSION=4.16.2
ENV YQ_ARCH=linux_amd64

ENV SCW_VERSION=2.4.0
ENV SCW_ARCH=linux-x86_64

ENV DOCTL_VERSION=1.68.0
ENV DOCTL_ARCH=linux-amd64

ENV AWS_VERSION=1.3.7
ENV AWS_ARCH=linux-amd64

ENV UPCTL_VERSION="1.1.1"
ENV UPCTL_ARCH="linux_x86_64"

#  apt-transport-https \
# && curl -fSL https://github.com/stedolan/jq/releases/download/jq-${JQ_VERSION}/jq-${JQ_ARCH} -o /usr/local/bin/jq \
# && chmod +x /usr/local/bin/jq \

RUN apk update \
  && apk upgrade \
  && apk add --no-cache \
  ca-certificates \
  bash \
  curl \
  apk-cron \
  git \
  bzip2 \
  sed \
  supervisor \
  fuse \
  libressl \
  vim \
  ssmtp  \
  zlib \
  python3 \
  gnupg \
  wget \
  unzip \
  jq \
  libmagic; \
  update-ca-certificates; \
  python3 -m ensurepip; \
  rm -r /usr/lib/python*/ensurepip; \
  pip3 install --upgrade pip setuptools; \
  if [ ! -e /usr/bin/pip ]; then ln -s pip3 /usr/bin/pip ; fi; \
  if [[ ! -e /usr/bin/python ]]; then ln -sf /usr/bin/python3 /usr/bin/python; fi ; \
  rm -rf /var/cache/apk/*; \
  pip3 install jinja2 s3cmd awscli; \
  curl -fSL "https://dl.k8s.io/v${K8S_VERSION}/kubernetes-client-${K8S_ARCH}.tar.gz" -o /tmp/kubernetes-client-${K8S_ARCH}.tar.gz; \
  tar -C /tmp -xvzf /tmp/kubernetes-client-${K8S_ARCH}.tar.gz ;\
	if [ -f /tmp/kubernetes/client/bin/kubectl ]; then mv /tmp/kubernetes/client/bin /usr/local/bin; fi ;\
	rm -rf /tmp/kubernetes*; \
	chmod +x /usr/local/bin/kubectl; \
  curl -fSL "https://github.com/mikefarah/yq/releases/download/v${YQ_VERSION}/yq_${YQ_ARCH}" -o /usr/local/bin/yq; \
  chmod +x /usr/local/bin/yq; \
  curl -fSL "https://github.com/scaleway/scaleway-cli/releases/download/v${SCW_VERSION}/scw-${SCW_VERSION}-${SCW_ARCH}" -o /usr/local/bin/scw; \
  chmod +x /usr/local/bin/scw; \
  curl -fSL "https://github.com/digitalocean/doctl/releases/download/v${DOCTL_VERSION}/doctl-${DOCTL_VERSION}-${DOCTL_ARCH}.tar.gz" -o /usr/local/bin/doctl; \
  chmod +x /usr/local/bin/doctl; \ 
	curl -fSL "https://github.com/UpCloudLtd/upcloud-cli/releases/download/v${UPCTL_VERSION}/upcloud-cli_${UPCTL_VERSION}_${UPCTL_ARCH}.tar.gz" -o /tmp/upctl.tar.gz; \
	tar xvzC /usr/local/bin -f /tmp/upctl.tar.gz upctl; \
  chmod +x /usr/local/bin/upctl; \
  rm -f /tmp/upctl.tar.gz; \
  wget -q "https://github.com/restic/restic/releases/download/v${RESTIC_VERSION}/restic_${RESTIC_VERSION}_${RESTIC_ARCH}.bz2" -O /tmp/restic-${RESTIC_VERSION}.bz2; \
  bunzip2 /tmp/restic-${RESTIC_VERSION}.bz2; \
  mv /tmp/restic-${RESTIC_VERSION} /usr/local/bin/restic; \
  chmod +x /usr/local/bin/restic; \
  rm -f /tmp/restic*;

#	RUN curl -sSL https://sdk.cloud.google.com | bash 

# Add files
ADD run.sh /usr/local/bin/run.sh
ADD entrypoint.sh /usr/local/bin/entrypoint.sh

RUN chmod +x /usr/local/bin/run.sh /usr/local/bin/entrypoint.sh

ENTRYPOINT ["/usr/local/bin/entrypoint.sh"]
