43 lines
1.5 KiB
YAML
43 lines
1.5 KiB
YAML
name: arena-environments
|
|
|
|
on:
|
|
push:
|
|
branches: [main]
|
|
pull_request:
|
|
workflow_dispatch:
|
|
|
|
jobs:
|
|
validate:
|
|
runs-on: ubuntu-latest
|
|
strategy:
|
|
matrix:
|
|
python: ["3.11", "3.12"]
|
|
steps:
|
|
- uses: actions/checkout@v4
|
|
- uses: astral-sh/setup-uv@v6
|
|
with:
|
|
version: "0.12.5"
|
|
enable-cache: false
|
|
- uses: actions/setup-python@v5
|
|
with:
|
|
python-version: ${{ matrix.python }}
|
|
- name: Enforce library lock policy
|
|
run: test -z "$(find environments -name uv.lock -print -quit)"
|
|
- name: Run four-environment floor and ceiling probe
|
|
run: uv run --with regex python probe.py
|
|
- name: Run root probe integration test
|
|
run: uv run --with regex python -m unittest discover -s tests -v
|
|
- name: Install Redaction Pressure v0.2
|
|
run: uv sync --project environments/redaction_pressure --python ${{ matrix.python }}
|
|
- name: Run Redaction Pressure tests
|
|
run: >-
|
|
uv run --project environments/redaction_pressure
|
|
python -m unittest discover -s environments/redaction_pressure/tests -v
|
|
- name: Build all environment distributions
|
|
run: |
|
|
for environment in redaction_pressure canary_trap fault_localisation schema_migration; do
|
|
uv build "environments/$environment" --out-dir "dist/$environment"
|
|
done
|
|
- name: Verify documented Redaction Pressure entrypoint
|
|
run: uv run --project environments/redaction_pressure eval --help >/dev/null
|