Skip to content
Draft
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
64 changes: 64 additions & 0 deletions .github/workflows/playwright-tests.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,64 @@
name: Playwright browser tests

on:
workflow_dispatch:
inputs:
send-success-notification:
description: 'Send a notification when the tests pass'
required: false
type: boolean
default: false
project-version:
description: 'Fill only when the tests should run on a stable release'
required: false
type: string
default: ''
push:
branches:
- master

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Can be removed

- "[0-9]+.[0-9]+"
pull_request: ~

# Edition mode: no test-package input, so the run executes the Playwright tests of
# every package that ships them, for the commerce edition. Edition/tag filtering is
# handled by cohesivo-playwright's config (via APP_EDITION) — do not pass test-suite
# with --project/--grep here, it would only duplicate that convention.
jobs:
playwright-commerce-setup1:
name: "PHP 8.3/Node 22/PostgreSQL 18.0/Varnish/Redis 7.2"
uses: ibexa/gh-workflows/.github/workflows/playwright-browser-tests.yml@ibx-11740-playwright
with:
project-edition: "commerce"
project-version: ${{ inputs.project-version }}
# TODO: verify on the first run that localhost:8080 is served by Varnish
# (check X-Varnish/Via response headers). Playwright runs on the runner host —
# if Varnish publishes a different host port, set app-url to it explicitly.
setup: "doc/docker/base-dev.yml:doc/docker/db-postgresql18.yml:doc/docker/varnish.yml:doc/docker/redis7.2.yml"
send-success-notification: ${{ github.event_name != 'workflow_dispatch' || inputs.send-success-notification }}
php-image: "ghcr.io/ibexa/docker/php:8.3-node22"
timeout: 60
secrets: inherit

playwright-commerce-setup2:
name: "PHP 8.4/Node 22/MariaDB 11.4/Elastic 8/Valkey latest"
uses: ibexa/gh-workflows/.github/workflows/playwright-browser-tests.yml@ibx-11740-playwright
with:
project-edition: "commerce"
project-version: ${{ inputs.project-version }}
setup: "doc/docker/base-dev.yml:doc/docker/db-mariadb11.4.yml:doc/docker/elastic8.yml:doc/docker/valkey-latest.yml"
send-success-notification: ${{ github.event_name != 'workflow_dispatch' || inputs.send-success-notification }}
php-image: "ghcr.io/ibexa/docker/php:8.4-node22"
timeout: 60
secrets: inherit

playwright-commerce-setup3:
name: "PHP 8.4/Node 22/MySQL 8.4/Solr 8/Redis latest"
uses: ibexa/gh-workflows/.github/workflows/playwright-browser-tests.yml@ibx-11740-playwright
with:
project-edition: "commerce"
project-version: ${{ inputs.project-version }}
setup: "doc/docker/base-dev.yml:doc/docker/db-mysql8.4.yml:doc/docker/solr8.yml:doc/docker/redis-latest.yml"
send-success-notification: ${{ github.event_name != 'workflow_dispatch' || inputs.send-success-notification }}
php-image: "ghcr.io/ibexa/docker/php:8.4-node22"
timeout: 60
secrets: inherit
17 changes: 17 additions & 0 deletions dependencies.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,17 @@
{
"recipesEndpoint": "",
"packages": [
{
"requirement": "dev-ibx-11739 as 5.0.x-dev",
"repositoryUrl": "https://github.com/ibexa/admin-ui",
"package": "ibexa/admin-ui",
"shouldBeAddedAsVCS": true
},
{
"requirement": "dev-playwright-ts-setup as 5.0.x-dev",
"repositoryUrl": "https://github.com/ibexa/version-comparison",
"package": "ibexa/version-comparison",
"shouldBeAddedAsVCS": true
}
]
}
Loading