ci: address review — use --dist=load, per-module teardown, exclude setpriv
CI / lint (pull_request) Failing after 0s
CI / build-and-test (pull_request) Skipped
CI / sanitizers (address) (pull_request) Skipped
CI / sanitizers (undefined) (pull_request) Skipped
CI / fuzz-build (pull_request) Skipped
CI / coverage (pull_request) Skipped
CI / valgrind (pull_request) Skipped
CI / lint (pull_request) Failing after 0s
CI / build-and-test (pull_request) Skipped
CI / sanitizers (address) (pull_request) Skipped
CI / sanitizers (undefined) (pull_request) Skipped
CI / fuzz-build (pull_request) Skipped
CI / coverage (pull_request) Skipped
CI / valgrind (pull_request) Skipped
- Replace --dist=loadgroup (a no-op: it only groups by xdist_group marks) with --dist=load, and make module teardowns remove only their own SOURCE_DIR/DEST_DIR (never the shared worker-keyed TEST_DATA_DIR) so interleaved modules can't wipe each other's fixtures. Add a session-scoped cleanup of the per-worker dir. (loadfile grouped the whole test_features.py module onto one worker and slowed the full suite to 761s vs 224s with load.) - Mark the two setpriv privilege tests with a 'setpriv' marker and run the full merge suite as -m "not setpriv", so the dev/main gate can't go red on the env-dependent /root-traversal tests regardless of the runner uid. - Add a TLS basic test to the ci subset, add workflow_dispatch for on-demand full runs, and fix trailing newlines. - Measured: smoke -m ci = 28 passed/39s; full -n4 = 280 passed/11 skipped/1 xpassed in 224s (was 860s serial).
This commit is contained in:
@@ -4,6 +4,7 @@ on:
|
||||
push:
|
||||
branches: [main, dev]
|
||||
pull_request:
|
||||
workflow_dispatch:
|
||||
|
||||
jobs:
|
||||
lint:
|
||||
@@ -42,11 +43,11 @@ jobs:
|
||||
|
||||
- name: Integration Tests (PR smoke subset)
|
||||
if: github.event_name == 'pull_request'
|
||||
run: python3 -m pytest tests/integration/ -n 4 --dist=loadgroup -m ci --durations=25 --tb=short -q
|
||||
run: python3 -m pytest tests/integration/ -n 4 --dist=load -m ci --durations=25 --tb=short -q
|
||||
|
||||
- name: Integration Tests (full suite)
|
||||
if: github.event_name == 'push'
|
||||
run: python3 -m pytest tests/integration/ -n 4 --dist=loadgroup --durations=25 --tb=short -q
|
||||
run: python3 -m pytest tests/integration/ -n 4 --dist=load -m "not setpriv" --durations=25 --tb=short -q
|
||||
|
||||
sanitizers:
|
||||
runs-on: ubuntu-latest
|
||||
@@ -133,4 +134,4 @@ jobs:
|
||||
- name: Valgrind Memcheck
|
||||
run: valgrind --leak-check=full --show-leak-kinds=definite --error-exitcode=1 ./build/tests
|
||||
env:
|
||||
FASTSYNC_UNDER_VALGRIND: "1"
|
||||
FASTSYNC_UNDER_VALGRIND: "1"
|
||||
|
||||
Reference in New Issue
Block a user