diff --git a/.gitea/workflows/dockerfile_testing_runner.yaml b/.gitea/workflows/dockerfile_testing_runner.yaml index 1d5b24a..d344493 100644 --- a/.gitea/workflows/dockerfile_testing_runner.yaml +++ b/.gitea/workflows/dockerfile_testing_runner.yaml @@ -52,6 +52,7 @@ jobs: build-args: | ALLOWED_HOSTS='django-testing.tryton.geeraert.eu' DEBUG='True' + CACHE_BUST=${{ env.next_version }} tags: | gitea.tryton.geeraert.eu/pi-ux-ce/django-testing:latest gitea.tryton.geeraert.eu/pi-ux-ce/django-testing:${{ env.next_version }} diff --git a/infra/testing/dockerfile b/infra/testing/dockerfile index ff5bd1c..6746664 100644 --- a/infra/testing/dockerfile +++ b/infra/testing/dockerfile @@ -15,19 +15,19 @@ RUN apt-get update && \ apt-get install -y git nano && \ rm -rf /var/lib/apt/lists/* +# CACHE_BUST forces this layer (and everything after it) to re-run on every +# build, otherwise Docker reuses a cached clone from a previous build and the +# image silently keeps stale code. +ARG CACHE_BUST=1 +RUN echo "cache bust: ${CACHE_BUST}" && \ + git clone --depth 1 -b testing https://gitea.tryton.geeraert.eu/pi-ux-ce/Django_kube.git . -# Copy only the requirements file first (Changes infrequently) -COPY requirements.txt ./ - -RUN pip install --cache-dir=/opt/hostedtoolcache/pip --upgrade pip +RUN pip install --cache-dir=/opt/hostedtoolcache/pip --upgrade pip RUN pip list --cache-dir=/opt/hostedtoolcache/pip --outdated RUN pip install --cache-dir=/opt/hostedtoolcache/pip --upgrade wheel RUN pip install --cache-dir=/opt/hostedtoolcache/pip --upgrade setuptools RUN pip install --cache-dir=/opt/hostedtoolcache/pip -r requirements.txt -# Copy the rest of your application code (Changes frequently, invalidates subsequent cache) -COPY . ./ - COPY infra/testing/entrypoint.sh /code/entrypoint.sh RUN chmod +x /code/entrypoint.sh diff --git a/infra/testing/entrypoint.sh b/infra/testing/entrypoint.sh index c8440e4..62593e6 100644 --- a/infra/testing/entrypoint.sh +++ b/infra/testing/entrypoint.sh @@ -1,11 +1,7 @@ #!/bin/bash +set -e -cd Django_kube - -#another methid but needs to rm -rf before -#git clone --depth 1 -b main https://gitea.tryton.geeraert.eu/pi-ux-ce/Django_kube.git -git stash -git pull +git pull origin testing pip install -r requirements.txt