Enhance CI workflow by configuring Django GDAL settings and adding debug steps for GDAL installation verification

This commit is contained in:
pacnpal
2025-02-06 11:26:36 -05:00
parent 789a6386a5
commit 411c6f6f68

View File

@@ -26,28 +26,47 @@ jobs:
sudo apt-get update
sudo apt-get install -y gdal-bin libgdal-dev
sudo ldconfig
- name: Configure Django GDAL Settings
run: |
echo "from thrillwiki.settings import *" > ci_settings.py
echo "GDAL_LIBRARY_PATH = '/usr/lib/x86_64-linux-gnu/libgdal.so'" >> ci_settings.py
echo "GEOS_LIBRARY_PATH = '/usr/lib/x86_64-linux-gnu/libgeos_c.so'" >> ci_settings.py
- name: Set GDAL Environment
run: |
export CPLUS_INCLUDE_PATH=/usr/include/gdal
export C_INCLUDE_PATH=/usr/include/gdal
export LD_LIBRARY_PATH=/usr/lib/x86_64-linux-gnu:$LD_LIBRARY_PATH
echo "CPLUS_INCLUDE_PATH=/usr/include/gdal" >> $GITHUB_ENV
echo "C_INCLUDE_PATH=/usr/include/gdal" >> $GITHUB_ENV
echo "LD_LIBRARY_PATH=/usr/lib/x86_64-linux-gnu" >> $GITHUB_ENV
GDAL_VERSION=$(gdal-config --version)
echo "GDAL_VERSION=$GDAL_VERSION" >> $GITHUB_ENV
echo "GDAL_LIBRARY_PATH=/usr/lib/x86_64-linux-gnu/libgdal.so" >> $GITHUB_ENV
echo "GDAL_VERSION=$(gdal-config --version)" >> $GITHUB_ENV
echo "DJANGO_SETTINGS_MODULE=ci_settings" >> $GITHUB_ENV
- name: Debug GDAL Installation
run: |
ls -l /usr/lib/x86_64-linux-gnu/libgdal*
ls -l /usr/lib/x86_64-linux-gnu/libgeos*
gdal-config --version
gdal-config --libs
echo "Python path:" $PYTHONPATH
echo "Settings module:" $DJANGO_SETTINGS_MODULE
- name: Install Dependencies
env:
GDAL_LIBRARY_PATH: /usr/lib/x86_64-linux-gnu/libgdal.so
run: |
python -m pip install --upgrade pip
pip install wheel
pip install setuptools
gdal-config --version
pip install wheel setuptools
pip install GDAL==$(gdal-config --version) --global-option=build_ext --global-option="-I/usr/include/gdal"
pip install -r requirements.txt
- name: Verify GDAL
- name: Verify GDAL Installation
run: |
pwd
ls -la
python -c "import os; print('GDAL_LIBRARY_PATH:', os.getenv('GDAL_LIBRARY_PATH'))"
python -c "import os; print('DJANGO_SETTINGS_MODULE:', os.getenv('DJANGO_SETTINGS_MODULE'))"
python -c "from osgeo import gdal; print('GDAL Version:', gdal.__version__)"
python -c "import django; from django.conf import settings; print('Django Settings Module:', settings.SETTINGS_MODULE)"
- name: Run Tests
env:
GDAL_LIBRARY_PATH: /usr/lib/x86_64-linux-gnu/libgdal.so
DJANGO_SETTINGS_MODULE: ci_settings
run: |
python manage.py test
PYTHONPATH=$PYTHONPATH:. python manage.py test