Skip to content

CI(macOS): Use micromamba-shell for steps to load PATH changes #11026

CI(macOS): Use micromamba-shell for steps to load PATH changes

CI(macOS): Use micromamba-shell for steps to load PATH changes #11026

Workflow file for this run

---
name: OSGeo4W
on:
push:
branches:
- main
- releasebranch_*
pull_request:
jobs:
build:
name: ${{ matrix.os }} build and tests
concurrency:
group: ${{ github.workflow }}-${{ github.event_name == 'pull_request' && github.head_ref || github.sha }}-${{
matrix.os }}
cancel-in-progress: true
runs-on: ${{ matrix.os }}
env:
PYTHONWARNINGS: always
strategy:
matrix:
os:
- windows-2019
fail-fast: false
steps:
- name: Set git to use LF
run: |
git config --global core.autocrlf false
git config --global core.eol lf
- uses: actions/checkout@692973e3d937129bcbf40652eb9f2f61becf3332 # v4.1.7
- uses: msys2/setup-msys2@ddf331adaebd714795f1042345e6ca57bd66cea8 # v2.24.1
with:
path-type: inherit
location: D:\
update: true
msystem: MINGW64
install: tar libintl make bison flex diffutils git dos2unix zip mingw-w64-x86_64-toolchain
mingw-w64-x86_64-fftw mingw-w64-x86_64-lapack mingw-w64-x86_64-pkgconf
mingw-w64-x86_64-gcc mingw-w64-x86_64-ccache mingw-w64-x86_64-zlib mingw-w64-x86_64-libiconv
mingw-w64-x86_64-bzip2 mingw-w64-x86_64-gettext mingw-w64-x86_64-libsystre
mingw-w64-x86_64-libtre-git mingw-w64-x86_64-libwinpthread-git mingw-w64-x86_64-libpng
mingw-w64-x86_64-pcre
- name: Install OSGeo4W
run: |
$exe = 'osgeo4w-setup.exe'
$url = 'http://download.osgeo.org/osgeo4w/v2/' + $exe
(New-Object System.Net.WebClient).DownloadFile($url, $exe)
Start-Process ('.\'+$exe) -ArgumentList '-A -g -k -q \
-s http://download.osgeo.org/osgeo4w/v2/ -P ${{ env.Deps }}' -Wait
env:
Deps: "proj-devel,gdal-devel,geos-devel,libtiff-devel,libpng-devel,\
pdal-devel,netcdf-devel,cairo-devel,fftw,freetype-devel,gdal-ecw,\
gdal-mrsid,liblas-devel,libxdr,libpq-devel,pdcurses,\
python3-matplotlib,python3-numpy,python3-ply,python3-pywin32,\
python3-wxpython,regex-devel,zstd-devel"
- name: Set number of cores for compilation
run: |
echo "MAKEFLAGS=-j$(nproc)" >> $GITHUB_ENV
shell: msys2 {0}
- name: Compile GRASS GIS
shell: msys2 {0}
run: .github/workflows/build_osgeo4w.sh
- name: Print installed versions
if: always()
shell: msys2 {0}
run: .github/workflows/print_versions.sh
- name: Test executing of the grass command
run: .github/workflows/test_simple.bat 'C:\OSGeo4W\opt\grass\grass85.bat'
- name: Test executing of the grass command in bash
shell: msys2 {0}
run: .github/workflows/test_simple.sh
- name: Run tests
run: .github/workflows/test_thorough.bat 'C:\OSGeo4W\opt\grass\grass85.bat' 'C:\OSGeo4W\bin\python3'
- name: Make HTML test report available
if: ${{ always() }}
uses: actions/upload-artifact@50769540e7f4bd5e21e526ee35c689e35e0d6874 # v4.4.0
with:
name: testreport-${{ matrix.os }}
path: testreport
retention-days: 3