Skip to content

Benchmarks

Benchmarks #460

Workflow file for this run

name: "Benchmarks"
on:
workflow_dispatch:
schedule:
- cron: "37 */4 * * *"
jobs:
benchmarks:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- name: Set up Python
uses: actions/setup-python@v5
with:
python-version: "3.12"
- name: Install benchmark dependencies
run: |
python -m pip install qa/tools
python -m pip install -r qa/benchmarks/requirements.txt
- name: Run benchmark pytest suite
run: |
cd qa/benchmarks
mkdir report
mkdir tmp_path_root
pytest \
-vv \
--log-cli-level=INFO \
--random-subset=1 \
--html report/report.html --self-contained-html \
--track-metrics-json=report/metrics.json \
--track-metrics-parquet-s3-bucket="apex-benchmarks" \
--track-metrics-parquet-s3-key="metrics/v1/metrics.parquet" \
--track-metrics-parquet-partitioning="YYYYMM" \
--basetemp=tmp_path_root \
--upload-assets-s3-bucket="apex-benchmarks"
env:
OPENEO_AUTH_METHOD: client_credentials
OPENEO_AUTH_CLIENT_CREDENTIALS_CDSEFED: ${{ secrets.OPENEO_AUTH_CLIENT_CREDENTIALS_CDSEFED }}
APEX_ALGORITHMS_S3_ACCESS_KEY_ID: ${{ secrets.APEX_ALGORITHMS_S3_ACCESS_KEY_ID }}
APEX_ALGORITHMS_S3_SECRET_ACCESS_KEY: ${{ secrets.APEX_ALGORITHMS_S3_SECRET_ACCESS_KEY }}
APEX_ALGORITHMS_S3_ENDPOINT_URL: "https://s3.waw3-1.cloudferro.com"
APEX_ALGORITHMS_S3_DEFAULT_REGION: "waw3-1"
- name: List local reports
if: always()
run: ls -alR qa/benchmarks/report
- name: List local results
if: always()
run: ls -alR qa/benchmarks/tmp_path_root
- name: upload report
uses: actions/upload-artifact@v4
if: always()
with:
name: report
path: qa/benchmarks/report/