diff --git a/.gitea/workflows/dockerfile_runner.yaml b/.gitea/workflows/dockerfile_runner.yaml index e81c483..dc72aea 100644 --- a/.gitea/workflows/dockerfile_runner.yaml +++ b/.gitea/workflows/dockerfile_runner.yaml @@ -2,89 +2,10 @@ name: Gitea Actions Demo run-name: ${{ gitea.actor }} is testing out Gitea Actions 🚀 on: push: - #paths-ignore: - # - 'requirements.txt' issue_comment: types: [created] jobs: - # Job to check for file changes and set an output - changes: - runs-on: ubuntu-latest - outputs: - requirements_changed: ${{ steps.filter.outputs.requirements }} - steps: - - uses: actions/checkout@v4 - - uses: dorny/paths-filter@v3 - id: filter - with: - filters: | - requirements: - - 'requirements.txt' - - Build-dockerfile: - runs-on: ubuntu-latest - needs: changes - if: ${{ needs.changes.outputs.requirements_changed == 'true' }} - 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: Compute next version - id: versioning - run: | - latest="${{ vars.PYTHON_VERSION }}" - next_version=$(echo "$latest" | awk -F. -v OFS=. '{$NF += 1 ; print}') - echo "next_version=$next_version" >> $GITHUB_ENV - echo "Variables used :" - echo "------------------------------------------------" - echo "Next version: $next_version" - - - uses: actions/cache@v3 - with: - path: /root/.cache/pip - key: ${{ runner.os }}-pip-${{ hashFiles('requirements.txt') }} - restore-keys: | - ${{ runner.os }}-pip- - - - - name: inject cache into docker - uses: reproducible-containers/buildkit-cache-dance@v3.1.0 - with: - cache-source: /root/.cache/pip - - - 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: "{{defaultContext}}:.gitea/python_build" - push: true - tags: | - gitea.tryton.geeraert.eu/pi-ux-ce/modified-python:latest - gitea.tryton.geeraert.eu/pi-ux-ce/modified-python:${{ env.next_version }} - cache-from: type=registry,ref=gitea.tryton.geeraert.eu/pi-ux-ce/modified-python:buildcache - cache-to: type=registry,ref=gitea.tryton.geeraert.eu/pi-ux-ce/modified-python:buildcache,mode=max - - - name: update version in the variable - run: | - curl -X PUT -H "Content-Type: application/json" \ - --user ${{ secrets.USERNAME_GITEA }}:${{ secrets.PASSWORD_GITEA }} \ - https://gitea.tryton.geeraert.eu/api/v1/repos/pi-ux-ce/${{ github.event.repository.name }}/actions/variables/PYTHON_VERSION \ - -d "{\"Value\":\"$next_version\"}" Explore-Gitea-Actions: runs-on: ubuntu-latest steps: @@ -108,7 +29,7 @@ jobs: - uses: actions/cache@v3 with: - path: /root/.cache/pip + path: ~/.cache/pip key: ${{ runner.os }}-pip-${{ hashFiles('requirements.txt') }} restore-keys: | ${{ runner.os }}-pip- diff --git a/.gitignore b/.gitignore index 5b8e206..f1a278a 100644 --- a/.gitignore +++ b/.gitignore @@ -3,4 +3,3 @@ venv/* *__pycache__* Webcal-python/* -.idea/* diff --git a/django_code/stash_management/apps.py b/django_code/stash_management/apps.py index 252947f..fe016ec 100644 --- a/django_code/stash_management/apps.py +++ b/django_code/stash_management/apps.py @@ -89,7 +89,7 @@ def album_downloader(name,url,external_galleries): #search for the href that contains the galleries webpage_all_album_url = webpage.xpath("//a[contains(@href,'pornpics.com/galleries/')]/@href") #print(webpage_all_album_url[3]) - #print(webpage_all_album_url) + #print(webpage_all_album_url) for album in webpage_all_album_url: diff --git a/dockerfile b/dockerfile index 37bc4a2..0354841 100644 --- a/dockerfile +++ b/dockerfile @@ -1,9 +1,19 @@ -FROM gitea.tryton.geeraert.eu/pi-ux-ce/modified-python:latest +FROM gitea.tryton.geeraert.eu/pi-ux-ce/python:3 ENV PYTHONUNBUFFERED 1 WORKDIR /code/ +# Copy only the requirements file first (Changes infrequently) +COPY requirements.txt ./ + + +RUN --mount=type=cache,target=/root/.cache/pip pip install --upgrade pip +RUN --mount=type=cache,target=/root/.cache/pip pip list --outdated +RUN --mount=type=cache,target=/root/.cache/pip pip install --upgrade wheel +RUN --mount=type=cache,target=/root/.cache/pip pip install --upgrade setuptools +RUN --mount=type=cache,target=/root/.cache/pip pip install -r requirements.txt + # Copy the rest of your application code (Changes frequently, invalidates subsequent cache) COPY . ./ RUN python django_code/manage.py migrate