Skip to content

Extended documentation for read_catalog #105

Extended documentation for read_catalog

Extended documentation for read_catalog #105

Workflow file for this run

name: Run CI Checks
on: [push, pull_request]
jobs:
detect-source-changes:
name: Detect Source Changes
runs-on: ubuntu-latest
outputs:
source_changed: ${{ steps.filter.outputs.source }}
steps:
- name: Checkout Repository
uses: actions/checkout@v6
- name: Detect Source Changes
id: filter
uses: dorny/paths-filter@v4.0.1
with:
filters: |
source:
- 'requake/**'
- 'tests/**'
- 'pyproject.toml'
- 'setup.py'
- '.github/workflows/ci-checks.yml'
unit-tests:
name: Run Unit Tests
needs:
- detect-source-changes
if: needs.detect-source-changes.outputs.source_changed == 'true'
runs-on: ubuntu-latest
strategy:
matrix:
python-version: ['3.10', '3.11', '3.12']
steps:
- name: Checkout Repository
uses: actions/checkout@v6
- name: Set Up Python
uses: actions/setup-python@v6
with:
python-version: ${{ matrix.python-version }}
- name: Install Requake and Dependencies
run: python -m pip install .
- name: Run Unit Tests
run: |
set -euo pipefail
bash tests/run_all_tests.sh run unit 2>&1 | tee unit-tests.log
grep -q "test_catalog_roundtrip" unit-tests.log
grep -q "test_pairs_schema" unit-tests.log
grep -q "test_families_schema" unit-tests.log
grep -q "test_flag_family" unit-tests.log
grep -q "test_template_catalog_schema" unit-tests.log
integration-tests:
name: Run Integration Tests
needs:
- detect-source-changes
if: needs.detect-source-changes.outputs.source_changed == 'true'
runs-on: ubuntu-latest
strategy:
matrix:
python-version: ['3.10', '3.11', '3.12']
steps:
- name: Checkout Repository
uses: actions/checkout@v6
- name: Set Up Python
uses: actions/setup-python@v6
with:
python-version: ${{ matrix.python-version }}
- name: Install Requake and Dependencies
run: python -m pip install .
- name: Run Integration Tests
run: |
set -euo pipefail
bash tests/run_all_tests.sh run integration 2>&1 | tee integration-tests.log
grep -q "integration/test_baseline" integration-tests.log
grep -q "integration/test_template_scan_baseline" integration-tests.log
- name: Clean Integration Test Outputs
if: always()
run: bash tests/run_all_tests.sh clean integration
dist:
name: Build Distribution Packages
needs:
- detect-source-changes
- unit-tests
- integration-tests
if: >-
always() &&
(needs.detect-source-changes.outputs.source_changed != 'true' ||
(needs.unit-tests.result == 'success' &&
needs.integration-tests.result == 'success'))
runs-on: ubuntu-latest
steps:
- name: Checkout Repository
uses: actions/checkout@v6
- name: Build Wheel and Source Distribution
run: pipx run build
- name: Upload Build Artifacts
uses: actions/upload-artifact@v7
with:
path: dist/*
- name: Validate Package Metadata
run: pipx run twine check dist/*