Skip to content

build(deps-dev): update packaging requirement from <26,>=20 to >=20,<… #611

build(deps-dev): update packaging requirement from <26,>=20 to >=20,<…

build(deps-dev): update packaging requirement from <26,>=20 to >=20,<… #611

Workflow file for this run

name: "Tester 🎳"
on:
push:
branches:
- master
paths:
- ".github/workflows/tester_ubuntu.yml"
- "**/*.py"
- pyproject.toml
pull_request:
branches:
- master
- feature/*
paths:
- ".github/workflows/tester_ubuntu.yml"
- "**/*.py"
- pyproject.toml
env:
GDAL_VERSION: 3.*
PROJECT_FOLDER: "dicogis"
jobs:
test-ubuntu:
runs-on: ubuntu-24.04
strategy:
fail-fast: false
matrix:
python-version:
- "3.10"
- "3.11"
- "3.12"
- "3.13"
env:
export_output_folder: tests/ci/ubuntu
permissions:
packages: read
services:
postgis:
image: postgis/postgis:15-3.4-alpine
env:
POSTGRES_DB: sample_gisdata
POSTGRES_PASSWORD: dicogis_tests
POSTGRES_USER: dicogis_admin
options: >-
--health-cmd pg_isready
--health-interval 10s
--health-timeout 5s
--health-retries 5
ports:
- 5555:5432
steps:
- name: Get source code
uses: actions/checkout@v6
- name: Set up Python
uses: actions/setup-python@v6
with:
python-version: ${{ matrix.python-version }}
cache: "pip"
cache-dependency-path: pyproject.toml
- name: Install GDAL binaries
run: |
sudo add-apt-repository ppa:ubuntugis/ubuntugis-unstable && sudo apt update
sudo apt install gdal-bin=${{ env.GDAL_VERSION }}
sudo apt install libgdal-dev=${{ env.GDAL_VERSION }}
export CPLUS_INCLUDE_PATH=/usr/include/gdal
export C_INCLUDE_PATH=/usr/include/gdal
gdal-config --version
- name: Install complementary tools
run: |
sudo apt install python3-tk
- name: Install project requirements
run: |
python -m pip install -U pip setuptools wheel
# Install GDAL first
python -m pip install GDAL=="`gdal-config --version`.*"
- name: Install project as a package
run: python -m pip install .[test]
- name: Install tests fixtures
run: python -m pip install -U gisdata -t ./tests/fixtures
- name: Unit tests
run: pytest
- name: Upload coverage to Codecov
uses: codecov/codecov-action@v5.5.2
env:
CODECOV_TOKEN: ${{ secrets.CODECOV_TOKEN }}
PYTHON: ${{ matrix.python-version }}
with:
env_vars: PYTHON
flags: unittests
name: Code Coverage for unittests on Ubuntu (python-${{ matrix.python-version }}]
- name: Minimal integration test - help
run: dicogis-cli --help
- name: Minimal integration test - version
run: dicogis-cli --version
- name: Minimal integration test - export xlsx
run: dicogis-cli inventory --input-folder ./tests/ --language EN --output-path "${{ env.export_output_folder }}/dicogis_ubuntu_tests.xlsx" --verbose
- name: Minimal integration test - export JSON
run: dicogis-cli inventory --input-folder ./tests/ --language EN --output-format json --output-path "${{ env.export_output_folder }}" --verbose
- name: Save generated files as artifact
uses: actions/upload-artifact@v6
with:
name: dicogis_results_ubuntu-py${{ matrix.python-version }}
path: ${{ env.export_output_folder }}/*
if-no-files-found: error