fix(ci): package contract fixtures and recover deploy chunk races
This commit is contained in:
+3
-1
@@ -14,7 +14,9 @@
|
|||||||
artifacts
|
artifacts
|
||||||
docs
|
docs
|
||||||
deploy
|
deploy
|
||||||
n8n
|
n8n/**
|
||||||
|
!n8n/workflows/
|
||||||
|
!n8n/workflows/**
|
||||||
frontend
|
frontend
|
||||||
*.tgz
|
*.tgz
|
||||||
*.tar.gz
|
*.tar.gz
|
||||||
|
|||||||
@@ -26,6 +26,7 @@ RUN pip install --no-cache-dir -r requirements.lock
|
|||||||
COPY backend/tests ./tests
|
COPY backend/tests ./tests
|
||||||
COPY contracts ./contracts
|
COPY contracts ./contracts
|
||||||
COPY scripts/check-contracts.py ./scripts/check-contracts.py
|
COPY scripts/check-contracts.py ./scripts/check-contracts.py
|
||||||
|
COPY n8n/workflows ./n8n/workflows
|
||||||
USER app
|
USER app
|
||||||
|
|
||||||
FROM runtime-base AS runtime
|
FROM runtime-base AS runtime
|
||||||
|
|||||||
@@ -26,6 +26,15 @@ test("non-destructive operator canary covers routes and grounded knowledge", asy
|
|||||||
await page.goto("/login");
|
await page.goto("/login");
|
||||||
await page.getByRole("button", { name: "Verken als Operationsmanager" }).click();
|
await page.getByRole("button", { name: "Verken als Operationsmanager" }).click();
|
||||||
await expect(page).toHaveURL(/\/dashboard$/);
|
await expect(page).toHaveURL(/\/dashboard$/);
|
||||||
|
if (pageErrors.some((message) => message.toLowerCase().includes("dynamically imported module"))) {
|
||||||
|
// A deploy can replace the SPA between loading index.html and its lazy
|
||||||
|
// dashboard chunk. One clean reload must recover; a persistent chunk or
|
||||||
|
// server error is collected again and still fails the canary below.
|
||||||
|
pageErrors.length = 0;
|
||||||
|
await page.reload({ waitUntil: "domcontentloaded" });
|
||||||
|
await expect(page).toHaveURL(/\/dashboard$/);
|
||||||
|
await expect(page.locator("main")).toBeVisible();
|
||||||
|
}
|
||||||
|
|
||||||
for (const [path, heading] of [
|
for (const [path, heading] of [
|
||||||
["/vehicles", "Wagenpark"],
|
["/vehicles", "Wagenpark"],
|
||||||
|
|||||||
Reference in New Issue
Block a user