Skip to content

Rebuild

Rebuild #1699

Workflow file for this run

name: Rebuild
on:
schedule:
- cron: 30 2 * * *
jobs:
main:
name: Rebuild
runs-on: ubuntu-24.04
timeout-minutes: 300
strategy:
fail-fast: false
matrix:
branch:
- '3.16'
- '3.22'
- '3.28-gdal3.6'
- '3.28-gdal3.7'
- '3.28-gdal3.8'
steps:
- run: df -h
- run: docker system prune --all --force
- run: sudo rm -rf /usr/local/lib/android
- run: df -h
- uses: actions/checkout@v4
with:
ref: ${{ matrix.branch }}
- uses: camptocamp/initialise-gopass-summon-action@v2
with:
ci-gpg-private-key: ${{secrets.CI_GPG_PRIVATE_KEY}}
github-gopass-ci-token: ${{secrets.GOPASS_CI_GITHUB_TOKEN}}
patterns: docker
if: github.repository == 'camptocamp/docker-qgis-server'
- run: echo "${HOME}/.local/bin" >> ${GITHUB_PATH}
- run: python3 -m pip install --user --requirement=ci/requirements.txt
- name: Checks
run: c2cciutils-checks
- name: Cache
uses: actions/cache@v4
with:
path: /tmp/docker/cache
key: docker-cache-${{ matrix.branch }}-${{ matrix.branch }}-${{ github.run_id }}
restore-keys: |
docker-cache-${{ matrix.branch }}-${{ matrix.branch }}-
docker-cache-${{ matrix.branch }}-
docker-cache-
docker-cache
- name: Fill the cache
run: |
mkdir -p /tmp/docker/cache/.ccache
mkdir cache
cp -ar /tmp/docker/cache/.ccache cache
touch cache/.ccache/a-file
docker build --file=Dockerfile-fillcache .
rm -rf cache
env:
DOCKER_BUILDKIT: '1'
- run: make build-server
- run: make build-desktop
- run: make build-cache
- name: Extract cache
run: |
rm -rf /tmp/docker/cache/.ccache
docker run --rm --detach --name=cache qgis-cache
docker cp cache:/.ccache /tmp/docker/cache
docker stop cache
- run: make run
- run: (cd acceptance_tests && c2cciutils-docker-logs || docker compose logs)
if: always()
- run: make acceptance
- run: (cd acceptance_tests && c2cciutils-docker-logs || docker compose logs)
if: always()
- name: Publish
run: c2cciutils-publish --type=rebuild --branch=${{ matrix.branch }}