diff --git a/.github/workflows/release-please.yaml b/.github/workflows/release-please.yaml index 55ed3e4..3034536 100644 --- a/.github/workflows/release-please.yaml +++ b/.github/workflows/release-please.yaml @@ -76,6 +76,5 @@ jobs: docker-context: "." docker-tag: "${{ needs.release-please.outputs.server-version }}" docker-tag-latest: true - docker-image-platforms: linux/amd64 docker-repository: "610829907584.dkr.ecr.ap-southeast-2.amazonaws.com/gitops" command: echo $SECRET_ENV | base64 -d > cluster.key diff --git a/.github/workflows/test.yml b/.github/workflows/test.yml index 51b5a72..a4c092d 100644 --- a/.github/workflows/test.yml +++ b/.github/workflows/test.yml @@ -36,6 +36,5 @@ jobs: docker-context: "." docker-prefix: test docker-tag-latest: false - docker-image-platforms: linux/amd64 docker-repository: "610829907584.dkr.ecr.ap-southeast-2.amazonaws.com/gitops" command: echo $SECRET_ENV | base64 -d > cluster.key diff --git a/Dockerfile b/Dockerfile index c8be3c2..5a1fbea 100644 --- a/Dockerfile +++ b/Dockerfile @@ -1,34 +1,39 @@ FROM python:3.12-slim +ARG TARGETARCH + ## ## Install kubectl and dependencies. ## -# RUN apk add -U openssl curl tar gzip bash ca-certificates && \ -# wget -q -O /etc/apk/keys/sgerrand.rsa.pub https://raw.githubusercontent.com/sgerrand/alpine-pkg-glibc/master/sgerrand.rsa.pub && \ -# wget https://github.com/sgerrand/alpine-pkg-glibc/releases/download/2.23-r3/glibc-2.23-r3.apk && \ -# apk add glibc-2.23-r3.apk && \ -# rm glibc-2.23-r3.apk -# RUN curl -L -o /usr/bin/kubectl https://storage.googleapis.com/kubernetes-release/release/v1.8.0/bin/linux/amd64/kubectl && \ -# chmod +x /usr/bin/kubectl && \ -# kubectl version --client ENV KUBE_LATEST_VERSION="v1.21.3" ENV HELM_VERSION="v3.6.2" \ VIRTUAL_ENV="/app/.venv" \ PATH="/app/.venv/bin:$PATH" -RUN apt-get update -RUN apt-get install wget ca-certificates bash git git-crypt -y --no-install-recommends \ - && wget -q https://storage.googleapis.com/kubernetes-release/release/${KUBE_LATEST_VERSION}/bin/linux/amd64/kubectl -O /usr/local/bin/kubectl \ + + +RUN apt-get update \ + && apt-get install wget ca-certificates bash git git-crypt -y --no-install-recommends \ + # Download kubectl + && wget -q https://storage.googleapis.com/kubernetes-release/release/${KUBE_LATEST_VERSION}/bin/linux/${TARGETARCH}/kubectl -O /usr/local/bin/kubectl \ && chmod +x /usr/local/bin/kubectl \ - && wget -q https://get.helm.sh/helm-${HELM_VERSION}-linux-amd64.tar.gz -O - | tar -xzO linux-amd64/helm > /usr/local/bin/helm \ + \ + # Download helm + && wget -q https://get.helm.sh/helm-${HELM_VERSION}-linux-${TARGETARCH}.tar.gz -O - | tar -xzO linux-${TARGETARCH}/helm > /usr/local/bin/helm \ && chmod +x /usr/local/bin/helm \ + \ + # Install helm-secrets plugin && helm plugin install https://github.com/jkroepke/helm-secrets --version v4.2.2 \ - && wget -q https://github.com/mozilla/sops/releases/download/v3.7.3/sops-v3.7.3.linux.amd64 -O /usr/local/bin/sops \ + \ + # Download sops + && wget -q https://github.com/mozilla/sops/releases/download/v3.7.3/sops-v3.7.3.linux.${TARGETARCH} -O /usr/local/bin/sops \ && chmod +x /usr/local/bin/sops \ + \ && apt-get clean \ && apt-get -y autoremove \ && rm -rf /var/lib/apt/lists/* \ - && rm -rf /var/cache/apt/ \ - ENV SHELL=/bin/bash + && rm -rf /var/cache/apt/ + +ENV SHELL=/bin/bash ## ## Install dependencies and copy GitOps server. @@ -49,5 +54,4 @@ ENV GIT_CRYPT_KEY_FILE=/app/cluster.key ENV PYTHONPATH="$PYTHONPATH:/app" ENV ACCESS_LOG="" - -CMD ["uvicorn", "--host", "0.0.0.0", "--port", "8000", "gitops_server.main:app"] +CMD ["uvicorn", "--host", "0.0.0.0", "--port", "8000", "gitops_server.main:app"] \ No newline at end of file