diff --git a/.gitea/workflows/dockerfile_testing_runner.yaml b/.gitea/workflows/dockerfile_testing_runner.yaml new file mode 100644 index 0000000..e0cf83a --- /dev/null +++ b/.gitea/workflows/dockerfile_testing_runner.yaml @@ -0,0 +1,43 @@ +name: Gitea Actions Demo +run-name: ${{ gitea.actor }} is testing out Gitea Actions 🚀 +on: + push: + branches: + - "*" + paths: + - 'django_testing/dockerfile' + tags-ignore: + - '*' + +jobs: + Explore-Gitea-Actions: + runs-on: ubuntu-latest + steps: + - run: echo "🔎 The name of your branch is ${{ gitea.ref }} and your repository is ${{ gitea.repository }}." + - name: Check out repository code + uses: actions/checkout@v4 + - run: echo "💡 The ${{ gitea.repository }} repository has been cloned to the runner." + - name: List files in the repository + run: | + ls ${{ gitea.workspace }} + - name: Set up Docker Buildx + uses: docker/setup-buildx-action@v3 + + - name: Login to gitea + uses: docker/login-action@v3 + with: + registry: gitea.tryton.geeraert.eu + username: ${{ secrets.USERNAME_GITEA }} + password: ${{ secrets.PASSWORD_GITEA }} + + - name: Build and push + uses: docker/build-push-action@v6 + with: + context: django_testing/ + push: true + tags: gitea.tryton.geeraert.eu/pi-ux-ce/geoip2-nginx:latest + cache-from: type=registry,ref=gitea.tryton.geeraert.eu/pi-ux-ce/geoip2-nginx:buildcache + cache-to: type=registry,ref=gitea.tryton.geeraert.eu/pi-ux-ce/geoip2-nginx:buildcache,mode=max + + + - run: echo "🍏 This job's status is ${{ job.status }}." diff --git a/django_testing/dockerfile b/django_testing/dockerfile new file mode 100644 index 0000000..56cc31c --- /dev/null +++ b/django_testing/dockerfile @@ -0,0 +1,30 @@ +# Stage 1: Build the module +FROM python:3 + +ENV PYTHONUNBUFFERED 1 + +WORKDIR /code/ + +# Install build tools and MaxMind library +RUN apt-get update && \ + apt-get install -y git && \ + rm -rf /var/lib/apt/lists/* + +# Clone the specific GeoIP2 module project +RUN git clone https://gitea.tryton.geeraert.eu/pi-ux-ce/Django_kube.git + +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 Django_kube/requirements.txt + +RUN python Django_kube/django_code/manage.py migrate + +COPY entrypoint.sh /code/entrypoint.sh +RUN chmod +x /code/entrypoint.sh + +EXPOSE 8000 + +ENTRYPOINT ["/code/entrypoint.sh"] + diff --git a/django_testing/entrypoint.sh b/django_testing/entrypoint.sh new file mode 100644 index 0000000..623493c --- /dev/null +++ b/django_testing/entrypoint.sh @@ -0,0 +1,15 @@ +#!/bin/bash + +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 pull + +pip install -r requirements.txt + +python django_code/manage.py migrate + +python django_code/manage.py runserver "0.0.0.0:8000" +