Skip to content

[stable33] feat(app): allow removing installed-but-disabled apps; improve help & logging #10358

[stable33] feat(app): allow removing installed-but-disabled apps; improve help & logging

[stable33] feat(app): allow removing installed-but-disabled apps; improve help & logging #10358

Triggered via pull request September 23, 2026 09:46
Status Success
Total duration 32m 27s
Artifacts 1

playwright.yml

on: pull_request
Playwright setup
3m 52s
Playwright setup
Matrix: playwright-tests
Playwright tests for installer
11m 1s
Playwright tests for installer
merge-reports
1m 10s
merge-reports
playwright-test-summary
8s
playwright-test-summary
Fit to window
Zoom out
Zoom in

Annotations

12 errors and 11 notices
[default] › tests/playwright/e2e/files/new-menu.spec.ts:48:2 › "New"-menu › Create same folder in child folder: tests/playwright/e2e/files/new-menu.spec.ts#L58
1) [default] › tests/playwright/e2e/files/new-menu.spec.ts:48:2 › "New"-menu › Create same folder in child folder Error: expect(received).toBe(expected) // Object.is equality Expected: "" Received: "This name is already in use." Call Log: - Timeout 5000ms exceeded while waiting on the predicate 56 | 57 | // A same-named folder in a different parent is allowed > 58 | await expect.poll(() => validationMessage(input)).toBe('') | ^ 59 | await dialog.getByRole('button', { name: 'Create' }).click() 60 | 61 | await expect(filesListPage.getRowForFile('other folder')).toBeVisible() at /home/runner/actions-runner/_work/server/server/tests/playwright/e2e/files/new-menu.spec.ts:58:53
[default] › tests/playwright/e2e/files/files-renaming.spec.ts:132:2 › Files: Rename nodes › correctly resets renaming state after virtual-scroll re-render: tests/playwright/support/sections/FilesListPage.ts#L20
1) [default] › tests/playwright/e2e/files/files-renaming.spec.ts:132:2 › Files: Rename nodes › correctly resets renaming state after virtual-scroll re-render Error: page.goto: Test ended. Call log: - navigating to "http://localhost:8042/index.php/apps/files", waiting until "load" at ../support/sections/FilesListPage.ts:20 18 | */ 19 | async open(viewId?: string): Promise<void> { > 20 | await this.page.goto(viewId ? `apps/files/${viewId}` : 'apps/files') | ^ 21 | await this.waitForList() 22 | } 23 | at FilesListPage.open (/home/runner/actions-runner/_work/server/server/tests/playwright/support/sections/FilesListPage.ts:20:19) at /home/runner/actions-runner/_work/server/server/tests/playwright/e2e/files/files-renaming.spec.ts:153:23
[default] › tests/playwright/e2e/files/files-renaming.spec.ts:132:2 › Files: Rename nodes › correctly resets renaming state after virtual-scroll re-render: tests/playwright/e2e/files/files-renaming.spec.ts#L0
1) [default] › tests/playwright/e2e/files/files-renaming.spec.ts:132:2 › Files: Rename nodes › correctly resets renaming state after virtual-scroll re-render Test timeout of 45000ms exceeded.
[default] › tests/playwright/e2e/files/files-delete.spec.ts:27:2 › Files: Delete › can delete multiple files: tests/playwright/e2e/files/files-delete.spec.ts#L52
1) [default] › tests/playwright/e2e/files/files-delete.spec.ts:27:2 › Files: Delete › can delete multiple files Error: expect(locator).toHaveCount(expected) failed Locator: locator('[data-cy-files-list-row-fileid]') Expected: 0 Received: 1 Timeout: 5000ms Call log: - Expect "toHaveCount" locator('[data-cy-files-list-row-fileid]') with timeout 5000ms - waiting for locator('[data-cy-files-list-row-fileid]') 4 × locator resolved to 5 elements - unexpected value "5" - locator resolved to 4 elements - unexpected value "4" 9 × locator resolved to 1 element - unexpected value "1" Call Log: - Timeout 30000ms exceeded while waiting on the predicate 50 | 51 | await expect(filesListPage.getRows()).toHaveCount(0) > 52 | }).toPass({ timeout: 30_000 }) | ^ 53 | }) 54 | }) 55 | at /home/runner/actions-runner/_work/server/server/tests/playwright/e2e/files/files-delete.spec.ts:52:6
[default] › tests/playwright/e2e/users/users-modify.spec.ts:70:2 › Settings: Change user properties › can change the user quota to a predefined value: tests/playwright/e2e/users/users-modify.spec.ts#L80
1) [default] › tests/playwright/e2e/users/users-modify.spec.ts:70:2 › Settings: Change user properties › can change the user quota to a predefined value Error: page.waitForResponse: Test timeout of 45000ms exceeded. 78 | 79 | // The quota select is not appended to the body, so its options stay inside the cell > 80 | const updateRequest = page.waitForResponse((response) => | ^ 81 | response.url().includes(`/ocs/v2.php/cloud/users/${user.userId}`) && response.request().method() === 'PUT') 82 | await cell.getByRole('combobox', { name: 'Select account quota' }).click({ force: true }) 83 | await cell.getByRole('option', { name: '5 GB' }).click({ force: true }) at /home/runner/actions-runner/_work/server/server/tests/playwright/e2e/users/users-modify.spec.ts:80:30
[default] › tests/playwright/e2e/users/users-modify.spec.ts:70:2 › Settings: Change user properties › can change the user quota to a predefined value: tests/playwright/e2e/users/users-modify.spec.ts#L0
1) [default] › tests/playwright/e2e/users/users-modify.spec.ts:70:2 › Settings: Change user properties › can change the user quota to a predefined value Test timeout of 45000ms exceeded.
[default] › tests/playwright/tests/playwright/e2e/users/users-modify.spec.ts:70:2 › Settings: Change user properties › can change the user quota to a predefined value: tests/playwright/e2e/users/users-modify.spec.ts#L80
4) [default] › tests/playwright/tests/playwright/e2e/users/users-modify.spec.ts:70:2 › Settings: Change user properties › can change the user quota to a predefined value Error: page.waitForResponse: Test timeout of 45000ms exceeded. 78 | 79 | // The quota select is not appended to the body, so its options stay inside the cell > 80 | const updateRequest = page.waitForResponse((response) => | ^ 81 | response.url().includes(`/ocs/v2.php/cloud/users/${user.userId}`) && response.request().method() === 'PUT') 82 | await cell.getByRole('combobox', { name: 'Select account quota' }).click({ force: true }) 83 | await cell.getByRole('option', { name: '5 GB' }).click({ force: true }) at /home/runner/actions-runner/_work/server/server/tests/playwright/e2e/users/users-modify.spec.ts:80:30
[default] › tests/playwright/tests/playwright/e2e/users/users-modify.spec.ts:70:2 › Settings: Change user properties › can change the user quota to a predefined value: tests/playwright/tests/playwright/e2e/users/users-modify.spec.ts#L0
4) [default] › tests/playwright/tests/playwright/e2e/users/users-modify.spec.ts:70:2 › Settings: Change user properties › can change the user quota to a predefined value Test timeout of 45000ms exceeded.
[default] › tests/playwright/tests/playwright/e2e/files/new-menu.spec.ts:48:2 › "New"-menu › Create same folder in child folder: tests/playwright/e2e/files/new-menu.spec.ts#L58
3) [default] › tests/playwright/tests/playwright/e2e/files/new-menu.spec.ts:48:2 › "New"-menu › Create same folder in child folder Error: expect(received).toBe(expected) // Object.is equality Expected: "" Received: "This name is already in use." Call Log: - Timeout 5000ms exceeded while waiting on the predicate 56 | 57 | // A same-named folder in a different parent is allowed > 58 | await expect.poll(() => validationMessage(input)).toBe('') | ^ 59 | await dialog.getByRole('button', { name: 'Create' }).click() 60 | 61 | await expect(filesListPage.getRowForFile('other folder')).toBeVisible() at /home/runner/actions-runner/_work/server/server/tests/playwright/e2e/files/new-menu.spec.ts:58:53
[default] › tests/playwright/tests/playwright/e2e/files/files-renaming.spec.ts:132:2 › Files: Rename nodes › correctly resets renaming state after virtual-scroll re-render: tests/playwright/support/sections/FilesListPage.ts#L20
2) [default] › tests/playwright/tests/playwright/e2e/files/files-renaming.spec.ts:132:2 › Files: Rename nodes › correctly resets renaming state after virtual-scroll re-render Error: page.goto: Test ended. Call log: - navigating to "http://localhost:8042/index.php/apps/files", waiting until "load" at ../support/sections/FilesListPage.ts:20 18 | */ 19 | async open(viewId?: string): Promise<void> { > 20 | await this.page.goto(viewId ? `apps/files/${viewId}` : 'apps/files') | ^ 21 | await this.waitForList() 22 | } 23 | at FilesListPage.open (/home/runner/actions-runner/_work/server/server/tests/playwright/support/sections/FilesListPage.ts:20:19) at /home/runner/actions-runner/_work/server/server/tests/playwright/e2e/files/files-renaming.spec.ts:153:23
[default] › tests/playwright/tests/playwright/e2e/files/files-renaming.spec.ts:132:2 › Files: Rename nodes › correctly resets renaming state after virtual-scroll re-render: tests/playwright/tests/playwright/e2e/files/files-renaming.spec.ts#L0
2) [default] › tests/playwright/tests/playwright/e2e/files/files-renaming.spec.ts:132:2 › Files: Rename nodes › correctly resets renaming state after virtual-scroll re-render Test timeout of 45000ms exceeded.
[default] › tests/playwright/tests/playwright/e2e/files/files-delete.spec.ts:27:2 › Files: Delete › can delete multiple files: tests/playwright/e2e/files/files-delete.spec.ts#L52
1) [default] › tests/playwright/tests/playwright/e2e/files/files-delete.spec.ts:27:2 › Files: Delete › can delete multiple files Error: expect(locator).toHaveCount(expected) failed Locator: locator('[data-cy-files-list-row-fileid]') Expected: 0 Received: 1 Timeout: 5000ms Call log: - Expect "toHaveCount" locator('[data-cy-files-list-row-fileid]') with timeout 5000ms - waiting for locator('[data-cy-files-list-row-fileid]') 4 × locator resolved to 5 elements - unexpected value "5" - locator resolved to 4 elements - unexpected value "4" 9 × locator resolved to 1 element - unexpected value "1" Call Log: - Timeout 30000ms exceeded while waiting on the predicate 50 | 51 | await expect(filesListPage.getRows()).toHaveCount(0) > 52 | }).toPass({ timeout: 30_000 }) | ^ 53 | }) 54 | }) 55 | at /home/runner/actions-runner/_work/server/server/tests/playwright/e2e/files/files-delete.spec.ts:52:6
🎭 Playwright Run Summary
44 passed (7.8m)
Playwright tests 7 / 8
"The ubuntu-latest label will migrate to Ubuntu 26 beginning October 19, 2026. For more information, see https://github.com/actions/runner-images/issues/14748"
🎭 Playwright Run Summary
44 passed (8.4m)
🎭 Playwright Run Summary
1 flaky [default] › tests/playwright/e2e/files/new-menu.spec.ts:48:2 › "New"-menu › Create same folder in child folder 43 passed (10.4m)
🎭 Playwright Run Summary
7 passed (7.2m)
🎭 Playwright Run Summary
45 passed (10.8m)
🎭 Playwright Run Summary
44 passed (11.0m)
🎭 Playwright Run Summary
1 flaky [default] › tests/playwright/e2e/files/files-renaming.spec.ts:132:2 › Files: Rename nodes › correctly resets renaming state after virtual-scroll re-render 43 passed (13.3m)
🎭 Playwright Run Summary
1 flaky [default] › tests/playwright/e2e/files/files-delete.spec.ts:27:2 › Files: Delete › can delete multiple files 42 passed (14.2m)
🎭 Playwright Run Summary
1 flaky [default] › tests/playwright/e2e/users/users-modify.spec.ts:70:2 › Settings: Change user properties › can change the user quota to a predefined value 41 passed (15.6m)
🎭 Playwright Run Summary
4 flaky [default] › tests/playwright/tests/playwright/e2e/files/files-delete.spec.ts:27:2 › Files: Delete › can delete multiple files [default] › tests/playwright/tests/playwright/e2e/files/files-renaming.spec.ts:132:2 › Files: Rename nodes › correctly resets renaming state after virtual-scroll re-render [default] › tests/playwright/tests/playwright/e2e/files/new-menu.spec.ts:48:2 › "New"-menu › Create same folder in child folder [default] › tests/playwright/tests/playwright/e2e/users/users-modify.spec.ts:70:2 › Settings: Change user properties › can change the user quota to a predefined value 353 passed (16.6m)

Artifacts

Produced during runtime
Name Size Digest
html-report--attempt-1
14.7 MB
sha256:e77d642c2d96bd37ba25f14c521a29f77effd2061e10e6d82905946ac5bbde6b