ci: make workflow ASCII-clean to fix startup_failure

The em-dash characters in the job comments tripped the workflow validator
(startup_failure, 0s). Rewrite ci.yml with plain ASCII and simpler comments.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
This commit is contained in:
Michal Tuszowski
2026-06-29 12:13:07 +02:00
committed by Michał Tuszowski
parent a6c20a0054
commit bd82369006
+4 -14
View File
@@ -10,10 +10,8 @@ permissions:
contents: read contents: read
jobs: jobs:
# ---------------------------------------------------------------- compile
# Byte-compiles every first-party Python file. Catches syntax errors (e.g.
# a misplaced `from __future__` import) without needing any dependencies.
compile: compile:
# Byte-compile every first-party .py to catch syntax errors. No deps.
runs-on: ubuntu-latest runs-on: ubuntu-latest
steps: steps:
- uses: actions/checkout@v4 - uses: actions/checkout@v4
@@ -22,17 +20,11 @@ jobs:
python-version: "3.11" python-version: "3.11"
- name: py_compile first-party sources - name: py_compile first-party sources
run: | run: |
# Vendored forks (yt_dlp, spotify_dl) are excluded — they ship their git ls-files '*.py' | grep -vE '^(yt_dlp|spotify_dl)/' | xargs python -m py_compile
# own validity and use syntax not meant for this gate.
git ls-files '*.py' \
| grep -vE '^(yt_dlp|spotify_dl)/' \
| xargs python -m py_compile
echo "All first-party sources compile." echo "All first-party sources compile."
# ------------------------------------------------------------------- unit
# Pure-logic tests. The modules under test guard their optional/heavy
# dependencies, so only pytest is required.
unit: unit:
# Pure-logic tests; tested modules guard heavy deps, so only pytest needed.
runs-on: ubuntu-latest runs-on: ubuntu-latest
steps: steps:
- uses: actions/checkout@v4 - uses: actions/checkout@v4
@@ -46,10 +38,8 @@ jobs:
- name: Run unit tests - name: Run unit tests
run: pytest tests/unit -v run: pytest tests/unit -v
# ------------------------------------------------------------ integration
# Boots the Flask services (no Discord/network) and exercises their HTTP
# surface — primarily the X-Conjurer-Api-Key auth contract end to end.
integration: integration:
# Boot the Flask services and assert the X-Conjurer-Api-Key auth contract.
runs-on: ubuntu-latest runs-on: ubuntu-latest
steps: steps:
- uses: actions/checkout@v4 - uses: actions/checkout@v4