Skip to content

Build frontend and backend in Dockerfile (#1126) #2930

Build frontend and backend in Dockerfile (#1126)

Build frontend and backend in Dockerfile (#1126) #2930

Triggered via push March 6, 2025 13:18
Status Success
Total duration 19m 17s
Artifacts 7
Matrix: backend
Matrix: Playwright ladle tests
Matrix: playwright-e2e
Fit to window
Zoom out
Zoom in

Annotations

7 errors, 2 warnings, and 6 notices
[safari] › e2e-tests/data-entry.model.e2e.ts:185:7 › Data entry model test › Reaches state "pollingStationsPageDiscarded": xstate.init → CLICK_ABORT → DISCARD_INPUT: frontend/e2e-tests/data-entry.model.e2e.ts#L1
1) [safari] › e2e-tests/data-entry.model.e2e.ts:185:7 › Data entry model test › Reaches state "pollingStationsPageDiscarded": xstate.init → CLICK_ABORT → DISCARD_INPUT Test timeout of 30000ms exceeded.
[safari] › e2e-tests/data-entry.model.e2e.ts:185:7 › Data entry model test › Reaches state "pollingStationsPageDiscarded": xstate.init → CLICK_ABORT → DISCARD_INPUT: frontend/e2e-tests/page-objects/data_entry/RecountedPgObj.ts#L34
1) [safari] › e2e-tests/data-entry.model.e2e.ts:185:7 › Data entry model test › Reaches state "pollingStationsPageDiscarded": xstate.init → CLICK_ABORT → DISCARD_INPUT Error: locator.check: Test timeout of 30000ms exceeded. Call log: - waiting for getByRole('radio', { name: 'Nee, er was geen hertelling' }) at page-objects/data_entry/RecountedPgObj.ts:34 32 | 33 | async checkNoAndClickNext() { > 34 | await this.no.check(); | ^ 35 | await this.next.click(); 36 | } 37 | at RecountedPage.checkNoAndClickNext (/Users/runner/work/abacus/abacus/frontend/e2e-tests/page-objects/data_entry/RecountedPgObj.ts:34:19) at /Users/runner/work/abacus/abacus/frontend/e2e-tests/data-entry.model.e2e.ts:379:29
[firefox] › e2e-tests\data-entry.model.e2e.ts:185:7 › Data entry model test › Reaches state "votersVotesPageAfterResumeChanged": xstate.init → FILL_WITH_VALID_DATA → SUBMIT → GO_TO_VOTERS_VOTES_PAGE → CHANGE_VALID_DATA → NAV_TO_POLLING_STATION_PAGE → SAVE_INPUT → RESUME_DATA_ENTRY: frontend\e2e-tests\data-entry.model.e2e.ts#L1
1) [firefox] › e2e-tests\data-entry.model.e2e.ts:185:7 › Data entry model test › Reaches state "votersVotesPageAfterResumeChanged": xstate.init → FILL_WITH_VALID_DATA → SUBMIT → GO_TO_VOTERS_VOTES_PAGE → CHANGE_VALID_DATA → NAV_TO_POLLING_STATION_PAGE → SAVE_INPUT → RESUME_DATA_ENTRY Test timeout of 30000ms exceeded.
[firefox] › e2e-tests\data-entry.model.e2e.ts:185:7 › Data entry model test › Reaches state "votersVotesPageAfterResumeChanged": xstate.init → FILL_WITH_VALID_DATA → SUBMIT → GO_TO_VOTERS_VOTES_PAGE → CHANGE_VALID_DATA → NAV_TO_POLLING_STATION_PAGE → SAVE_INPUT → RESUME_DATA_ENTRY: frontend\e2e-tests\data-entry.model.e2e.ts#L349
1) [firefox] › e2e-tests\data-entry.model.e2e.ts:185:7 › Data entry model test › Reaches state "votersVotesPageAfterResumeChanged": xstate.init → FILL_WITH_VALID_DATA → SUBMIT → GO_TO_VOTERS_VOTES_PAGE → CHANGE_VALID_DATA → NAV_TO_POLLING_STATION_PAGE → SAVE_INPUT → RESUME_DATA_ENTRY Error: locator.click: Test timeout of 30000ms exceeded. Call log: - waiting for getByRole('dialog').getByRole('button', { name: 'Invoer bewaren' }) - locator resolved to <button class="_button_18xf7_1 _lg_18xf7_144">Invoer bewaren</button> - attempting click action - waiting for element to be visible, enabled and stable - element is visible, enabled and stable - scrolling into view if needed - done scrolling Path: State: {"value":"voterVotesPageEmpty"} Event: {"type":"xstate.init"} State: {"value":"votersVotesPageFilled"} via {"type":"xstate.init"} Event: {"type":"FILL_WITH_VALID_DATA"} State: {"value":"differencesPage"} via {"type":"FILL_WITH_VALID_DATA"} Event: {"type":"SUBMIT"} State: {"value":"votersVotesPageSubmitted"} via {"type":"SUBMIT"} Event: {"type":"GO_TO_VOTERS_VOTES_PAGE"} State: {"value":"votersVotesPageChangedFilled"} via {"type":"GO_TO_VOTERS_VOTES_PAGE"} Event: {"type":"CHANGE_VALID_DATA"} State: {"value":"abortInputModalChanged"} via {"type":"CHANGE_VALID_DATA"} Event: {"type":"NAV_TO_POLLING_STATION_PAGE"} State: {"value":"pollingStationsPageChangedSaved"} via {"type":"NAV_TO_POLLING_STATION_PAGE"} Event: {"type":"SAVE_INPUT"} State: {"value":"votersVotesPageAfterResumeChanged"} via {"type":"RESUME_DATA_ENTRY"} 347 | const abortInputModalEvents = { 348 | SAVE_INPUT: async () => { > 349 | await abortModal.saveInput.click(); | ^ 350 | }, 351 | DISCARD_INPUT: async () => { 352 | await abortModal.discardInput.click(); at SAVE_INPUT (D:\a\abacus\abacus\frontend\e2e-tests\data-entry.model.e2e.ts:349:40) at TestModel.testTransition (D:\a\abacus\abacus\frontend\node_modules\@xstate\graph\dist\xstate-graph.cjs.js:304:22) at TestModel.testPath (D:\a\abacus\abacus\frontend\node_modules\@xstate\graph\dist\xstate-graph.cjs.js:260:22) at D:\a\abacus\abacus\frontend\e2e-tests\data-entry.model.e2e.ts:389:9
[firefox] › e2e-tests\data-entry.model.e2e.ts:185:7 › Data entry model test › Reaches state "pollingStationsPageDiscarded": xstate.init → FILL_WITH_VALID_DATA → SUBMIT → GO_TO_VOTERS_VOTES_PAGE → CHANGE_VALID_DATA → CLICK_ABORT → DISCARD_INPUT: frontend\e2e-tests\page-objects\data_entry\PollingStationChoicePgObj.ts#L47
2) [firefox] › e2e-tests\data-entry.model.e2e.ts:185:7 › Data entry model test › Reaches state "pollingStationsPageDiscarded": xstate.init → FILL_WITH_VALID_DATA → SUBMIT → GO_TO_VOTERS_VOTES_PAGE → CHANGE_VALID_DATA → CLICK_ABORT → DISCARD_INPUT TimeoutError: locator.click: Timeout 2000ms exceeded. Call log: - waiting for getByRole('button', { name: 'Beginnen' }) - locator resolved to <button type="button" class="_button_18xf7_1 _lg_18xf7_144">Beginnen</button> - attempting click action - waiting for element to be visible, enabled and stable - element is visible, enabled and stable - scrolling into view if needed at page-objects\data_entry\PollingStationChoicePgObj.ts:47 45 | // click() fails on Safari because element is visible and enabled, but not stable 46 | // so added timeout to make it fail fast > 47 | await button.click({ timeout: 2000 }); | ^ 48 | } 49 | 50 | async selectPollingStationAndClickStart(pollingStationNumber: number) { at PollingStationChoicePage.clickStart (D:\a\abacus\abacus\frontend\e2e-tests\page-objects\data_entry\PollingStationChoicePgObj.ts:47:18) at PollingStationChoicePage.selectPollingStationAndClickStart (D:\a\abacus\abacus\frontend\e2e-tests\page-objects\data_entry\PollingStationChoicePgObj.ts:52:16) at D:\a\abacus\abacus\frontend\e2e-tests\data-entry.model.e2e.ts:378:9
[firefox] › e2e-tests\data-entry.model.e2e.ts:185:7 › Data entry model test › Reaches state "pollingStationsPageDiscarded": xstate.init → FILL_WITH_VALID_DATA → SUBMIT → GO_TO_VOTERS_VOTES_PAGE → CHANGE_VALID_DATA → NAV_TO_POLLING_STATION_PAGE → DISCARD_INPUT: frontend\e2e-tests\page-objects\data_entry\PollingStationChoicePgObj.ts#L47
3) [firefox] › e2e-tests\data-entry.model.e2e.ts:185:7 › Data entry model test › Reaches state "pollingStationsPageDiscarded": xstate.init → FILL_WITH_VALID_DATA → SUBMIT → GO_TO_VOTERS_VOTES_PAGE → CHANGE_VALID_DATA → NAV_TO_POLLING_STATION_PAGE → DISCARD_INPUT TimeoutError: locator.click: Timeout 2000ms exceeded. Call log: - waiting for getByRole('button', { name: 'Beginnen' }) at page-objects\data_entry\PollingStationChoicePgObj.ts:47 45 | // click() fails on Safari because element is visible and enabled, but not stable 46 | // so added timeout to make it fail fast > 47 | await button.click({ timeout: 2000 }); | ^ 48 | } 49 | 50 | async selectPollingStationAndClickStart(pollingStationNumber: number) { at PollingStationChoicePage.clickStart (D:\a\abacus\abacus\frontend\e2e-tests\page-objects\data_entry\PollingStationChoicePgObj.ts:47:18) at PollingStationChoicePage.selectPollingStationAndClickStart (D:\a\abacus\abacus\frontend\e2e-tests\page-objects\data_entry\PollingStationChoicePgObj.ts:52:16) at D:\a\abacus\abacus\frontend\e2e-tests\data-entry.model.e2e.ts:378:9
[firefox] › e2e-tests\data-entry.model.e2e.ts:185:7 › Data entry model test › Reaches state "differencesPage": xstate.init → FILL_WITH_VALID_DATA → SUBMIT → GO_TO_VOTERS_VOTES_PAGE → CHANGE_VALID_DATA → SUBMIT: frontend\e2e-tests\page-objects\data_entry\PollingStationChoicePgObj.ts#L47
4) [firefox] › e2e-tests\data-entry.model.e2e.ts:185:7 › Data entry model test › Reaches state "differencesPage": xstate.init → FILL_WITH_VALID_DATA → SUBMIT → GO_TO_VOTERS_VOTES_PAGE → CHANGE_VALID_DATA → SUBMIT TimeoutError: locator.click: Timeout 2000ms exceeded. Call log: - waiting for getByRole('button', { name: 'Beginnen' }) - locator resolved to <button type="button" class="_button_18xf7_1 _lg_18xf7_144">Beginnen</button> at page-objects\data_entry\PollingStationChoicePgObj.ts:47 45 | // click() fails on Safari because element is visible and enabled, but not stable 46 | // so added timeout to make it fail fast > 47 | await button.click({ timeout: 2000 }); | ^ 48 | } 49 | 50 | async selectPollingStationAndClickStart(pollingStationNumber: number) { at PollingStationChoicePage.clickStart (D:\a\abacus\abacus\frontend\e2e-tests\page-objects\data_entry\PollingStationChoicePgObj.ts:47:18) at PollingStationChoicePage.selectPollingStationAndClickStart (D:\a\abacus\abacus\frontend\e2e-tests\page-objects\data_entry\PollingStationChoicePgObj.ts:52:16) at D:\a\abacus\abacus\frontend\e2e-tests\data-entry.model.e2e.ts:378:9
Slow Test: frontend/[chrome] › lib/ui/Badge/Badge.e2e.ts#L1
frontend/[chrome] › lib/ui/Badge/Badge.e2e.ts took 16.1s
Slow Test: frontend/[chrome] › lib/ui/BottomBar/BottomBar.e2e.ts#L1
frontend/[chrome] › lib/ui/BottomBar/BottomBar.e2e.ts took 15.3s
🎭 Playwright Run Summary
33 passed (44.8s)
🎭 Playwright Run Summary
33 passed (1.7m)
🎭 Playwright Run Summary
33 passed (1.1m)
🎭 Playwright Run Summary
1 flaky [safari] › e2e-tests/data-entry.model.e2e.ts:185:7 › Data entry model test › Reaches state "pollingStationsPageDiscarded": xstate.init → CLICK_ABORT → DISCARD_INPUT 164 passed (5.0m)
🎭 Playwright Run Summary
165 passed (4.8m)
🎭 Playwright Run Summary
4 flaky [firefox] › e2e-tests\data-entry.model.e2e.ts:185:7 › Data entry model test › Reaches state "votersVotesPageAfterResumeChanged": xstate.init → FILL_WITH_VALID_DATA → SUBMIT → GO_TO_VOTERS_VOTES_PAGE → CHANGE_VALID_DATA → NAV_TO_POLLING_STATION_PAGE → SAVE_INPUT → RESUME_DATA_ENTRY [firefox] › e2e-tests\data-entry.model.e2e.ts:185:7 › Data entry model test › Reaches state "pollingStationsPageDiscarded": xstate.init → FILL_WITH_VALID_DATA → SUBMIT → GO_TO_VOTERS_VOTES_PAGE → CHANGE_VALID_DATA → CLICK_ABORT → DISCARD_INPUT [firefox] › e2e-tests\data-entry.model.e2e.ts:185:7 › Data entry model test › Reaches state "pollingStationsPageDiscarded": xstate.init → FILL_WITH_VALID_DATA → SUBMIT → GO_TO_VOTERS_VOTES_PAGE → CHANGE_VALID_DATA → NAV_TO_POLLING_STATION_PAGE → DISCARD_INPUT [firefox] › e2e-tests\data-entry.model.e2e.ts:185:7 › Data entry model test › Reaches state "differencesPage": xstate.init → FILL_WITH_VALID_DATA → SUBMIT → GO_TO_VOTERS_VOTES_PAGE → CHANGE_VALID_DATA → SUBMIT 161 passed (8.0m)

Artifacts

Produced during runtime
Name Size
abacus-macos-latest
35.8 MB
abacus-ubuntu-latest
102 MB
abacus-windows-latest
24.1 MB
frontend-build
1.03 MB
playwright-report-macos-latest
1.32 MB
playwright-report-ubuntu-latest
713 KB
playwright-report-windows-latest
3.36 MB