fix(lint-playwright): stage role spec subdirs and addon-gating like the deploy does

The lint stager only copied top-level *.js, so role-local subdirs
(fixtures/, addons/) never reached the staged tree: the dashboard's new
fixtures/onion-test require failed, and addons/*.spec.js were silently
never linted. Mirror the test-e2e-playwright staging (copy subdirs plus
the shared addon-gating.js) so --list covers the full spec tree; addon
specs of 11 roles are now actually linted.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
This commit is contained in:
kevinveenbirkenbachandClaude Opus 4.8 committed 2026-07-12 10:56:13 +02:00
1 parent 5c6f656413
commit f14b1ab3f6
1 file changed
+4 -1
+4 -1
View File
@@ -33,10 +33,11 @@ fi
PERSONAS_SRC="${REPO_ROOT}/roles/test-e2e-playwright/files/personas"
SERVICE_GATING_SRC="${REPO_ROOT}/roles/test-e2e-playwright/files/service-gating.js"
ADDON_GATING_SRC="${REPO_ROOT}/roles/test-e2e-playwright/files/addon-gating.js"
TIMEOUTS_SRC="${REPO_ROOT}/roles/test-e2e-playwright/files/timeouts.js"
PLAYWRIGHT_CONFIG_SRC="${REPO_ROOT}/roles/test-e2e-playwright/files/playwright.config.js"
for asset in "${PERSONAS_SRC}" "${SERVICE_GATING_SRC}" "${TIMEOUTS_SRC}" "${PLAYWRIGHT_CONFIG_SRC}"; do
for asset in "${PERSONAS_SRC}" "${SERVICE_GATING_SRC}" "${ADDON_GATING_SRC}" "${TIMEOUTS_SRC}" "${PLAYWRIGHT_CONFIG_SRC}"; do
if [[ ! -e "${asset}" ]]; then
echo "lint-playwright: missing staging asset: ${asset}" >&2
exit 2
@@ -115,7 +116,9 @@ lint_one_role() {
config_stub >"${stage_dir}/playwright.config.js"
cp -f "${role_files_dir}"/*.js "${tests_dir}/"
find "${role_files_dir}" -mindepth 1 -maxdepth 1 -type d -exec cp -R {} "${tests_dir}/" \;
cp -f "${SERVICE_GATING_SRC}" "${tests_dir}/service-gating.js"
cp -f "${ADDON_GATING_SRC}" "${tests_dir}/addon-gating.js"
cp -f "${TIMEOUTS_SRC}" "${tests_dir}/timeouts.js"
cp -f "${PERSONAS_SRC}"/*.js "${tests_dir}/personas/"
cp -f "${PERSONAS_SRC}"/utils/*.js "${tests_dir}/personas/utils/"