Skip to content

feat: add REST API/GraphQL fallback to rhdh-jira skill #29

feat: add REST API/GraphQL fallback to rhdh-jira skill

feat: add REST API/GraphQL fallback to rhdh-jira skill #29

Workflow file for this run

name: CI
on:
push:
branches: [main]
pull_request:
workflow_dispatch:
permissions:
contents: read
jobs:
resolve-python:
runs-on: ubuntu-latest
outputs:
min-version: ${{ steps.resolve.outputs.min }}
max-version: ${{ steps.resolve.outputs.max }}
matrix: ${{ steps.resolve.outputs.matrix }}
steps:
- uses: actions/checkout@v4
- id: resolve
run: |
MIN=$(python3 -c "
import re
with open('pyproject.toml') as f:
m = re.search(r'requires-python\s*=\s*\">=(\d+\.\d+)\"', f.read())
print(m.group(1) if m else '3.9')
")
# Latest stable CPython minor version
MAX=$(python3 -c "import sys; print(f'{sys.version_info.major}.{sys.version_info.minor}')")
if [ "$MIN" = "$MAX" ]; then
MATRIX="[\"$MIN\"]"
else
MATRIX="[\"$MIN\", \"$MAX\"]"
fi
echo "min=$MIN" >> "$GITHUB_OUTPUT"
echo "max=$MAX" >> "$GITHUB_OUTPUT"
echo "matrix=$MATRIX" >> "$GITHUB_OUTPUT"
lint:
needs: resolve-python
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- uses: astral-sh/setup-uv@v4
with:
enable-cache: true
- uses: actions/setup-python@v5
with:
python-version: ${{ needs.resolve-python.outputs.max-version }}
- run: uv sync --frozen --extra dev
- run: uv run ruff check .
- run: uv run ruff format --check .
test:
needs: [resolve-python, lint]
runs-on: ubuntu-latest
strategy:
matrix:
python-version: ${{ fromJson(needs.resolve-python.outputs.matrix) }}
steps:
- uses: actions/checkout@v4
- uses: astral-sh/setup-uv@v4
with:
enable-cache: true
- uses: actions/setup-python@v5
with:
python-version: ${{ matrix.python-version }}
- run: uv sync --frozen --extra dev
- run: uv run pytest -v