add linux specific installs for opencv dependencies #54
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
name: Tests (conda-forge) | ||
on: | ||
pull_request: | ||
branches: [main] | ||
workflow_dispatch: | ||
schedule: | ||
- cron: '0 2 * * 1' # run weekly | ||
jobs: | ||
test: | ||
runs-on: ${{ matrix.os }} | ||
defaults: | ||
run: | ||
shell: bash -el {0} | ||
strategy: | ||
fail-fast: false | ||
matrix: | ||
os: [ macos-latest, ubuntu-latest, windows-latest ] | ||
python-version: ['3.9', '3.11', '3.12'] | ||
steps: | ||
- name: Check out repository | ||
uses: actions/checkout@v4 | ||
- name: Set up conda | ||
uses: conda-incubator/setup-miniconda@v3 | ||
with: | ||
python-version: ${{ matrix.python-version }} | ||
channels: conda-forge | ||
channel-priority: strict | ||
activate-environment: orthority-test | ||
conda-solver: libmamba | ||
- name: Install dependencies | ||
# Note that conda-forge OpenCV 4.9 package has *GL dependencies that are not satisfied by | ||
# GitHub's Ubuntu image, so 'opencv-python-headless' is installed with pip below. | ||
run: | | ||
conda info | ||
conda install -c conda-forge rasterio click tqdm pyyaml fsspec requests aiohttp pytest pytest-cov | ||
pip install opencv-python-headless | ||
conda list | ||
- name: Install OpenCV Linux dependencies | ||
if: matrix.os == 'ubuntu-latest' | ||
run: | | ||
# Fix cv2 ImportError: 'libEGL.so.1: cannot open shared object file: No such file or directory' | ||
sudo apt-get update | ||
sudo apt-get install -y libegl1 libopengl0 | ||
- name: Run unit tests | ||
run: | | ||
python -m pytest --cov=orthority --cov-report=term-missing --cov-report=xml:coverage.xml ./tests |