Skip to content

sketch integration tests #61

sketch integration tests

sketch integration tests #61

Workflow file for this run

name: CI
# On every pull request, but only on push to main
on:
push:
branches:
- main
tags:
- '*'
pull_request:
workflow_dispatch:
env:
LATEST_PY_VERSION: '3.11'
jobs:
tests:
runs-on: ubuntu-latest
strategy:
matrix:
python-version: ['3.9', '3.10', '3.11'] #, '3.12'
steps:
- uses: actions/checkout@v4
- name: Set up Python ${{ matrix.python-version }}
uses: actions/setup-python@v5
with:
python-version: ${{ matrix.python-version }}
- name: Install dependencies
run: |
python -m pip install --upgrade pip
- name: Test titiler.openeo
run: |
python -m pip install -e ".[test]"
python -m pytest --cov=titiler.openeo --cov-report=xml --cov-append --cov-report=term-missing
- name: run pre-commit
if: ${{ matrix.python-version == env.LATEST_PY_VERSION }}
run: |
python -m pip install pre-commit
pre-commit run --all-files
- name: Upload Results
if: ${{ matrix.python-version == env.LATEST_PY_VERSION }}
uses: codecov/codecov-action@v5
with:
file: ./coverage.xml
flags: unittests
name: ${{ matrix.python-version }}
fail_ci_if_error: false
integration:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- name: Set up Python ${{ matrix.python-version }}
uses: actions/setup-python@v5
with:
python-version: '3.11'
- name: Build api image
run: docker compose build api
- name: Launch api
run: docker compose up -d api
env:
TITILER_OPENEO_STAC_API_URL: https://stac.eoapi.dev
TITILER_OPENEO_SERVICE_STORE_URL: services/eoapi.json
- name: Sleep for 10 seconds
run: sleep 10s
shell: bash
- name: Install dependencies
run: |
python -m pip install --upgrade pip
- name: Install OpenEO test suite
run: |
git clone --recurse-submodules https://github.com/Open-EO/openeo-test-suite.git
cd openeo-test-suite
python -m pip install -e .
- name: Run openeo-test-suite
run: |
cd openeo-test-suite
python -m pytest src/openeo_test_suite/tests/collections --openeo-backend-url=http://0.0.0.0:8081
env:
OPENEO_AUTH_METHOD: basic
OPENEO_AUTH_BASIC_USERNAME: anonymous
OPENEO_AUTH_BASIC_PASSWORD: password
- name: Stop services
run: docker compose stop
# publish:
# needs: [tests]
# runs-on: ubuntu-latest
# if: startsWith(github.event.ref, 'refs/tags') || github.event_name == 'release'
# steps:
# - uses: actions/checkout@v4
# - name: Set up Python
# uses: actions/setup-python@v5
# with:
# python-version: ${{ env.LATEST_PY_VERSION }}
# - name: Install dependencies
# run: |
# python -m pip install --upgrade pip
# python -m pip install wheel twine build
# python -m pip install .
# - name: Set tag version
# id: tag
# run: |
# echo "version=${GITHUB_REF#refs/*/}"
# echo "version=${GITHUB_REF#refs/*/}" >> $GITHUB_OUTPUT
# - name: Set module version
# id: module
# run: |
# echo version=$(python -c'import titiler.openeo; print(titiler.openeo.__version__)') >> $GITHUB_OUTPUT
# - name: Build and publish
# if: ${{ steps.tag.outputs.version }} == ${{ steps.module.outputs.version}}
# env:
# TWINE_USERNAME: ${{ secrets.PYPI_USERNAME }}
# TWINE_PASSWORD: ${{ secrets.PYPI_PASSWORD }}
# run: |
# rm -rf dist
# python -m build
# twine upload dist/*