mirror of
https://github.com/itsPLK/ps5-payload-manager.git
synced 2026-10-19 02:19:53 -05:00
64 lines
2.2 KiB
YAML
64 lines
2.2 KiB
YAML
name: Verify
|
|
|
|
on:
|
|
push:
|
|
pull_request:
|
|
workflow_dispatch:
|
|
|
|
permissions:
|
|
contents: read
|
|
|
|
jobs:
|
|
http-responses:
|
|
runs-on: ubuntu-latest
|
|
steps:
|
|
- uses: actions/checkout@v4
|
|
- name: Build host-test environment
|
|
run: docker build -f tests/Dockerfile -t pldmgr-tests .
|
|
- name: Test backend JSON and HTTP with sanitizers and real sockets
|
|
run: docker run --rm --network=none -v "$GITHUB_WORKSPACE:/src:ro" pldmgr-tests make test-host
|
|
|
|
shared-state:
|
|
runs-on: macos-latest
|
|
steps:
|
|
- uses: actions/checkout@v4
|
|
- name: Check concurrent config, sources and history with ThreadSanitizer
|
|
run: python3 tests/run_config_tests.py --thread-sanitize
|
|
|
|
frontend:
|
|
runs-on: ubuntu-latest
|
|
steps:
|
|
- uses: actions/checkout@v4
|
|
- uses: actions/setup-node@v4
|
|
with:
|
|
node-version: '22'
|
|
cache: npm
|
|
cache-dependency-path: frontend/package-lock.json
|
|
- run: npm ci
|
|
working-directory: frontend
|
|
- run: npm test
|
|
working-directory: frontend
|
|
- run: npm run build
|
|
working-directory: frontend
|
|
# Existing lint findings remain tracked in REMEDIATION_EXECUTION_PLAN.md.
|
|
# Promote lint to a required check when step 8a clears that baseline.
|
|
|
|
- name: Check mock server method/origin contract
|
|
run: node tests/run_mock_security_tests.mjs
|
|
- name: Build native HTTP fixture for browser security checks
|
|
run: docker build -f tests/Dockerfile -t pldmgr-browser-tests .
|
|
- name: Check Chrome actions, cross-origin attacks, unload beacons, and Vite proxy
|
|
run: |
|
|
docker run --rm -d -i --name pldmgr-browser -p 127.0.0.1:8081:8081 \
|
|
-e PLDMGR_TEST_PUBLIC=1 -e PLDMGR_TEST_PORT=8081 \
|
|
-v "$GITHUB_WORKSPACE:/src:ro" pldmgr-browser-tests \
|
|
python3 tests/run_http_tests.py --serve-only
|
|
for attempt in $(seq 1 60); do
|
|
if curl -fsS http://127.0.0.1:8081/__test_state >/dev/null; then break; fi
|
|
sleep 1
|
|
done
|
|
CHROME_BIN="$(command -v google-chrome)" node tests/run_browser_mutation_tests.mjs
|
|
- name: Stop native browser fixture
|
|
if: always()
|
|
run: docker stop pldmgr-browser 2>/dev/null || true
|