Files
patternn 661ca844d0
ci / lint-test (pull_request) Successful in 1s
isolation-test / probe (pull_request) Successful in 1s
ci: pipefail REAL (defaults.run.shell por job) + retiro el test roto que entro a main por el falso verde
2026-11-02 12:59:42 +00:00

56 lines
1.4 KiB
YAML

name: ci
on:
push:
branches: [main]
pull_request:
jobs:
lint-test:
runs-on: ubuntu-latest
# r20: pipefail a nivel job — un - run: set -o pipefail en paso aparte NO
# persiste (cada paso es un shell nuevo) y el test roto de la demo #43
# siguio dando verde hasta ser auto-mergeado a main.
defaults:
run:
shell: bash --noprofile --norc -eo pipefail {0}
steps:
- uses: actions/checkout@v4
with:
fetch-depth: 1
- name: Setup
run: |
python3 -m pip install --user ruff pytest --quiet 2>/dev/null || true
- name: Lint (ruff, advisory)
run: |
if [ -d cayceops ]; then
ruff check cayceops/ --exit-zero || true
else
echo "no python package — OK"
fi
- name: Tests
run: |
if [ -d cayceops/tests ]; then
python3 -m pytest cayceops/tests/ -v --tb=short 2>&1 | tail -5
else
echo "no tests dir — OK"
fi
- name: Guard tests
run: |
if [ -f runtime/guard.test.mjs ]; then
cd runtime && node --test guard.test.mjs 2>&1 | tail -3 && cd ..
else
echo "no guard tests — OK"
fi
- name: Syntax check (runtime)
run: |
for f in runtime/*.mjs; do
[ -f "$f" ] && node --check "$f" || true
done
echo "syntax check OK"