Skip to content

fix(AmazonS3): pass S3 error messages through to the frontend #2791

fix(AmazonS3): pass S3 error messages through to the frontend

fix(AmazonS3): pass S3 error messages through to the frontend #2791

Triggered via pull request July 15, 2026 11:11
Status Success
Total duration 3h 30m 28s
Artifacts 7

playwright.yml

on: pull_request
Playwright setup
4m 38s
Playwright setup
Matrix: playwright-tests
merge-reports
1m 4s
merge-reports
playwright-test-summary
6s
playwright-test-summary
Fit to window
Zoom out
Zoom in

Annotations

13 errors and 7 notices
[admin-settings] › tests/playwright/e2e/appstore/admin-settings-apps.spec.ts:159:2 › Settings: App management › Limit app usage to group: tests/playwright/support/utils/password-confirmation.ts#L32
1) [admin-settings] › tests/playwright/e2e/appstore/admin-settings-apps.spec.ts:159:2 › Settings: App management › Limit app usage to group Error: locator.waitFor: Test timeout of 30000ms exceeded. Call log: - waiting for locator('.modal-container:has-text("Authentication required")') to be hidden 47 × locator resolved to visible <div data-v-3c357e2d="" class="modal-container" id="modal-description-nc-vue-45">…</div> at ../support/utils/password-confirmation.ts:32 30 | 31 | // Wait for the dialog to disappear > 32 | await dialog.waitFor({ state: 'hidden' }) | ^ 33 | } 34 | at handlePasswordConfirmation (/home/runner/actions-runner/_work/server/server/tests/playwright/support/utils/password-confirmation.ts:32:15) at /home/runner/actions-runner/_work/server/server/tests/playwright/e2e/appstore/admin-settings-apps.spec.ts:205:3
[chrome] › tests/playwright/e2e/files/files-copy-move.spec.ts:111:2 › Files: Move or copy files › can copy a folder to the same folder: tests/playwright/support/sections/CopyMoveDialogPage.ts#L68
1) [chrome] › tests/playwright/e2e/files/files-copy-move.spec.ts:111:2 › Files: Move or copy files › can copy a folder to the same folder Error: page.waitForResponse: Test ended. at ../support/sections/CopyMoveDialogPage.ts:68 66 | 67 | private async confirm(label: string, method: 'COPY' | 'MOVE'): Promise<void> { > 68 | const done = this.page.waitForResponse((r) => r.request().method() === method | ^ 69 | && /\/(remote|public)\.php\/dav\/files\//.test(r.url())) 70 | await this.confirmButton(label).click() 71 | await done at CopyMoveDialogPage.confirm (/home/runner/actions-runner/_work/server/server/tests/playwright/support/sections/CopyMoveDialogPage.ts:68:26) at CopyMoveDialogPage.copyToCurrentFolder (/home/runner/actions-runner/_work/server/server/tests/playwright/support/sections/CopyMoveDialogPage.ts:76:14) at /home/runner/actions-runner/_work/server/server/tests/playwright/e2e/files/files-copy-move.spec.ts:116:24
[chrome] › tests/playwright/e2e/files/scrolling.spec.ts:55:2 › Files: Scrolling to the selected file (list view) › scrolls to the last page and reveals the footer: tests/playwright/support/sections/FilesListPage.ts#L29
2) [chrome] › tests/playwright/e2e/files/scrolling.spec.ts:55:2 › Files: Scrolling to the selected file (list view) › scrolls to the last page and reveals the footer Error: locator.waitFor: Test ended. Call log: - waiting for locator('[data-cy-files-list]') to be visible at ../support/sections/FilesListPage.ts:29 27 | /** Wait for the file list container to be rendered (e.g. after a direct goto). */ 28 | async waitForList(): Promise<void> { > 29 | await this.getFilesList().waitFor({ state: 'visible' }) | ^ 30 | } 31 | 32 | /** at FilesListPage.waitForList (/home/runner/actions-runner/_work/server/server/tests/playwright/support/sections/FilesListPage.ts:29:29) at /home/runner/actions-runner/_work/server/server/tests/playwright/e2e/files/scrolling.spec.ts:57:23
[chrome] › tests/playwright/e2e/files/live-photos.spec.ts:169:3 › Files: Live photos › 'Show hidden files' is enabled › Blocks restoration when restoring the .mov: tests/playwright/support/sections/FilesListPage.ts#L19
1) [chrome] › tests/playwright/e2e/files/live-photos.spec.ts:169:3 › Files: Live photos › 'Show hidden files' is enabled › Blocks restoration when restoring the .mov Error: page.goto: Test ended. Call log: - navigating to "http://localhost:8042/index.php/apps/files", waiting until "load" at ../support/sections/FilesListPage.ts:19 17 | */ 18 | async open(viewId?: string): Promise<void> { > 19 | await this.page.goto(viewId ? `apps/files/${viewId}` : 'apps/files') | ^ 20 | await this.waitForList() 21 | } 22 | at FilesListPage.open (/home/runner/actions-runner/_work/server/server/tests/playwright/support/sections/FilesListPage.ts:19:19) at /home/runner/actions-runner/_work/server/server/tests/playwright/e2e/files/live-photos.spec.ts:180:24
[chrome] › tests/playwright/tests/playwright/e2e/files_sharing/files-copy-move.spec.ts:70:2 › files_sharing: Move or copy files › can not copy a file to a shared folder with no create permission: tests/playwright/e2e/files_sharing/files-copy-move.spec.ts#L87
5) [chrome] › tests/playwright/tests/playwright/e2e/files_sharing/files-copy-move.spec.ts:70:2 › files_sharing: Move or copy files › can not copy a file to a shared folder with no create permission Error: expect(locator).toBeDisabled() failed Locator: getByRole('dialog').getByRole('button', { name: 'Copy to folder', exact: true }) Expected: disabled Received: enabled Timeout: 3000ms Call log: - Expect "toBeDisabled" with timeout 3000ms - waiting for getByRole('dialog').getByRole('button', { name: 'Copy to folder', exact: true }) 10 × locator resolved to <button type="button" data-v-18f6cf03="" data-v-24e91b99="" aria-label="Copy to folder" class="button-vue button-vue--size-normal button-vue--primary">…</button> - unexpected value "enabled" Call Log: - Test timeout of 30000ms exceeded 85 | await copyMoveDialog.navigateTo('folder') 86 | await expect(copyMoveDialog.confirmButton('Copy to folder')).toBeDisabled({ timeout: 3_000 }) > 87 | }).toPass({ timeout: 30_000 }) | ^ 88 | }) 89 | 90 | // NOTE: the Cypress original also covered "can not move a file from a shared at /home/runner/actions-runner/_work/server/server/tests/playwright/e2e/files_sharing/files-copy-move.spec.ts:87:6
[chrome] › tests/playwright/tests/playwright/e2e/files/scrolling.spec.ts:55:2 › Files: Scrolling to the selected file (list view) › scrolls to the last page and reveals the footer: tests/playwright/support/sections/FilesListPage.ts#L29
4) [chrome] › tests/playwright/tests/playwright/e2e/files/scrolling.spec.ts:55:2 › Files: Scrolling to the selected file (list view) › scrolls to the last page and reveals the footer Error: locator.waitFor: Test ended. Call log: - waiting for locator('[data-cy-files-list]') to be visible at ../support/sections/FilesListPage.ts:29 27 | /** Wait for the file list container to be rendered (e.g. after a direct goto). */ 28 | async waitForList(): Promise<void> { > 29 | await this.getFilesList().waitFor({ state: 'visible' }) | ^ 30 | } 31 | 32 | /** at FilesListPage.waitForList (/home/runner/actions-runner/_work/server/server/tests/playwright/support/sections/FilesListPage.ts:29:29) at /home/runner/actions-runner/_work/server/server/tests/playwright/e2e/files/scrolling.spec.ts:57:23
[chrome] › tests/playwright/tests/playwright/e2e/files/scrolling.spec.ts:55:2 › Files: Scrolling to the selected file (list view) › scrolls to the last page and reveals the footer: tests/playwright/tests/playwright/e2e/files/scrolling.spec.ts#L0
4) [chrome] › tests/playwright/tests/playwright/e2e/files/scrolling.spec.ts:55:2 › Files: Scrolling to the selected file (list view) › scrolls to the last page and reveals the footer Test timeout of 30000ms exceeded.
[chrome] › tests/playwright/tests/playwright/e2e/files/live-photos.spec.ts:169:3 › Files: Live photos › 'Show hidden files' is enabled › Blocks restoration when restoring the .mov: tests/playwright/support/sections/FilesListPage.ts#L19
3) [chrome] › tests/playwright/tests/playwright/e2e/files/live-photos.spec.ts:169:3 › Files: Live photos › 'Show hidden files' is enabled › Blocks restoration when restoring the .mov Error: page.goto: Test ended. Call log: - navigating to "http://localhost:8042/index.php/apps/files", waiting until "load" at ../support/sections/FilesListPage.ts:19 17 | */ 18 | async open(viewId?: string): Promise<void> { > 19 | await this.page.goto(viewId ? `apps/files/${viewId}` : 'apps/files') | ^ 20 | await this.waitForList() 21 | } 22 | at FilesListPage.open (/home/runner/actions-runner/_work/server/server/tests/playwright/support/sections/FilesListPage.ts:19:19) at /home/runner/actions-runner/_work/server/server/tests/playwright/e2e/files/live-photos.spec.ts:180:24
[chrome] › tests/playwright/tests/playwright/e2e/files/live-photos.spec.ts:169:3 › Files: Live photos › 'Show hidden files' is enabled › Blocks restoration when restoring the .mov: tests/playwright/tests/playwright/e2e/files/live-photos.spec.ts#L0
3) [chrome] › tests/playwright/tests/playwright/e2e/files/live-photos.spec.ts:169:3 › Files: Live photos › 'Show hidden files' is enabled › Blocks restoration when restoring the .mov Test timeout of 30000ms exceeded.
[chrome] › tests/playwright/tests/playwright/e2e/files/files-copy-move.spec.ts:111:2 › Files: Move or copy files › can copy a folder to the same folder: tests/playwright/support/sections/CopyMoveDialogPage.ts#L68
2) [chrome] › tests/playwright/tests/playwright/e2e/files/files-copy-move.spec.ts:111:2 › Files: Move or copy files › can copy a folder to the same folder Error: page.waitForResponse: Test ended. at ../support/sections/CopyMoveDialogPage.ts:68 66 | 67 | private async confirm(label: string, method: 'COPY' | 'MOVE'): Promise<void> { > 68 | const done = this.page.waitForResponse((r) => r.request().method() === method | ^ 69 | && /\/(remote|public)\.php\/dav\/files\//.test(r.url())) 70 | await this.confirmButton(label).click() 71 | await done at CopyMoveDialogPage.confirm (/home/runner/actions-runner/_work/server/server/tests/playwright/support/sections/CopyMoveDialogPage.ts:68:26) at CopyMoveDialogPage.copyToCurrentFolder (/home/runner/actions-runner/_work/server/server/tests/playwright/support/sections/CopyMoveDialogPage.ts:76:14) at /home/runner/actions-runner/_work/server/server/tests/playwright/e2e/files/files-copy-move.spec.ts:116:24
[chrome] › tests/playwright/tests/playwright/e2e/files/files-copy-move.spec.ts:111:2 › Files: Move or copy files › can copy a folder to the same folder: tests/playwright/tests/playwright/e2e/files/files-copy-move.spec.ts#L0
2) [chrome] › tests/playwright/tests/playwright/e2e/files/files-copy-move.spec.ts:111:2 › Files: Move or copy files › can copy a folder to the same folder Test timeout of 30000ms exceeded.
[admin-settings] › tests/playwright/tests/playwright/e2e/appstore/admin-settings-apps.spec.ts:159:2 › Settings: App management › Limit app usage to group: tests/playwright/support/utils/password-confirmation.ts#L32
1) [admin-settings] › tests/playwright/tests/playwright/e2e/appstore/admin-settings-apps.spec.ts:159:2 › Settings: App management › Limit app usage to group Error: locator.waitFor: Test timeout of 30000ms exceeded. Call log: - waiting for locator('.modal-container:has-text("Authentication required")') to be hidden 47 × locator resolved to visible <div data-v-3c357e2d="" class="modal-container" id="modal-description-nc-vue-45">…</div> at ../support/utils/password-confirmation.ts:32 30 | 31 | // Wait for the dialog to disappear > 32 | await dialog.waitFor({ state: 'hidden' }) | ^ 33 | } 34 | at handlePasswordConfirmation (/home/runner/actions-runner/_work/server/server/tests/playwright/support/utils/password-confirmation.ts:32:15) at /home/runner/actions-runner/_work/server/server/tests/playwright/e2e/appstore/admin-settings-apps.spec.ts:205:3
[admin-settings] › tests/playwright/tests/playwright/e2e/appstore/admin-settings-apps.spec.ts:159:2 › Settings: App management › Limit app usage to group: tests/playwright/tests/playwright/e2e/appstore/admin-settings-apps.spec.ts#L0
1) [admin-settings] › tests/playwright/tests/playwright/e2e/appstore/admin-settings-apps.spec.ts:159:2 › Settings: App management › Limit app usage to group Test timeout of 30000ms exceeded.
🎭 Playwright Run Summary
44 passed (5.7m)
🎭 Playwright Run Summary
1 flaky [admin-settings] › tests/playwright/e2e/appstore/admin-settings-apps.spec.ts:159:2 › Settings: App management › Limit app usage to group 43 passed (10.5m)
🎭 Playwright Run Summary
43 passed (10.6m)
🎭 Playwright Run Summary
1 flaky [chrome] › tests/playwright/e2e/files_sharing/files-copy-move.spec.ts:70:2 › files_sharing: Move or copy files › can not copy a file to a shared folder with no create permission 42 passed (9.9m)
🎭 Playwright Run Summary
1 flaky [chrome] › tests/playwright/e2e/files/files-copy-move.spec.ts:111:2 › Files: Move or copy files › can copy a folder to the same folder 43 passed (12.3m)
🎭 Playwright Run Summary
2 flaky [chrome] › tests/playwright/e2e/files/live-photos.spec.ts:169:3 › Files: Live photos › 'Show hidden files' is enabled › Blocks restoration when restoring the .mov [chrome] › tests/playwright/e2e/files/scrolling.spec.ts:55:2 › Files: Scrolling to the selected file (list view) › scrolls to the last page and reveals the footer 41 passed (16.2m)
🎭 Playwright Run Summary
5 flaky [admin-settings] › tests/playwright/tests/playwright/e2e/appstore/admin-settings-apps.spec.ts:159:2 › Settings: App management › Limit app usage to group [chrome] › tests/playwright/tests/playwright/e2e/files/files-copy-move.spec.ts:111:2 › Files: Move or copy files › can copy a folder to the same folder [chrome] › tests/playwright/tests/playwright/e2e/files/live-photos.spec.ts:169:3 › Files: Live photos › 'Show hidden files' is enabled › Blocks restoration when restoring the .mov [chrome] › tests/playwright/tests/playwright/e2e/files/scrolling.spec.ts:55:2 › Files: Scrolling to the selected file (list view) › scrolls to the last page and reveals the footer [chrome] › tests/playwright/tests/playwright/e2e/files_sharing/files-copy-move.spec.ts:70:2 › files_sharing: Move or copy files › can not copy a file to a shared folder with no create permission 256 passed (18.5m)

Artifacts

Produced during runtime
Name Size Digest
blob-report-1 Expired
3.74 MB
sha256:8fd3e48ef1004fd6c06401412a12711cde695fcf74c9fcb77646ca76f458aba6
blob-report-2 Expired
2.99 MB
sha256:6b0bcf72131ddf598acc02a590f06e35db4ddc799393c297b62b2f5bfdaaf718
blob-report-3 Expired
71.2 KB
sha256:e69bf6e42d0d49a04c30b84b9724d9dc7bcc3c2f495d9d72bdd80665ba4c119e
blob-report-4 Expired
8.67 MB
sha256:04e32ba3070abbbca953652f7f79e32d87c261ef836e2d57184d0768b69df3b5
blob-report-5 Expired
5.16 MB
sha256:12ab7bf431adb3c85283634aa3722d546ce6229402aa7bab76a879cda22afab4
blob-report-6 Expired
81.6 KB
sha256:0144f38b13100a8736642eb53583ef347e9669f72dfb8c28407da8fc07c23e96
html-report--attempt-1 Expired
21.1 MB
sha256:5e7de442212c11729c166881c8585f6e749a9f0e6654af2eb4ae76987b07f600