chore: upgrade azure-playwright (#6949)

This commit is contained in:
Matti Nannt
2025-12-12 19:14:21 +01:00
committed by GitHub
parent 56da3b5725
commit ffb4eac1a4
4 changed files with 45 additions and 117 deletions

View File

@@ -3,14 +3,10 @@ name: E2E Tests
on:
workflow_call:
secrets:
AZURE_CLIENT_ID:
required: false
AZURE_TENANT_ID:
required: false
AZURE_SUBSCRIPTION_ID:
required: false
PLAYWRIGHT_SERVICE_URL:
required: false
PLAYWRIGHT_SERVICE_ACCESS_TOKEN:
required: false
ENTERPRISE_LICENSE_KEY:
required: true
# Add other secrets if necessary
@@ -21,7 +17,6 @@ env:
TURBO_TEAM: ${{ vars.TURBO_TEAM }}
permissions:
id-token: write
contents: read
actions: read
@@ -207,32 +202,30 @@ jobs:
- name: Install Playwright
run: pnpm exec playwright install --with-deps
- name: Set Azure Secret Variables
run: |
if [[ -n "${{ secrets.AZURE_CLIENT_ID }}" && -n "${{ secrets.AZURE_TENANT_ID }}" && -n "${{ secrets.AZURE_SUBSCRIPTION_ID }}" ]]; then
echo "AZURE_ENABLED=true" >> $GITHUB_ENV
else
echo "AZURE_ENABLED=false" >> $GITHUB_ENV
fi
- name: Azure login
if: env.AZURE_ENABLED == 'true'
uses: azure/login@a65d910e8af852a8061c627c456678983e180302 # v2.2.0
with:
client-id: ${{ secrets.AZURE_CLIENT_ID }}
tenant-id: ${{ secrets.AZURE_TENANT_ID }}
subscription-id: ${{ secrets.AZURE_SUBSCRIPTION_ID }}
- name: Run E2E Tests (Azure)
if: env.AZURE_ENABLED == 'true'
- name: Determine Playwright execution mode
shell: bash
env:
PLAYWRIGHT_SERVICE_URL: ${{ secrets.PLAYWRIGHT_SERVICE_URL }}
CI: true
PLAYWRIGHT_SERVICE_ACCESS_TOKEN: ${{ secrets.PLAYWRIGHT_SERVICE_ACCESS_TOKEN }}
run: |
pnpm test-e2e:azure
set -euo pipefail
if [[ -n "${PLAYWRIGHT_SERVICE_URL}" && -n "${PLAYWRIGHT_SERVICE_ACCESS_TOKEN}" ]]; then
echo "PW_MODE=service" >> "$GITHUB_ENV"
else
echo "PW_MODE=local" >> "$GITHUB_ENV"
fi
- name: Run E2E Tests (Playwright Service)
if: env.PW_MODE == 'service'
env:
PLAYWRIGHT_SERVICE_URL: ${{ secrets.PLAYWRIGHT_SERVICE_URL }}
PLAYWRIGHT_SERVICE_ACCESS_TOKEN: ${{ secrets.PLAYWRIGHT_SERVICE_ACCESS_TOKEN }}
CI: true
run: pnpm test-e2e:azure
- name: Run E2E Tests (Local)
if: env.AZURE_ENABLED == 'false'
if: env.PW_MODE == 'local'
env:
CI: true
run: |

View File

@@ -46,7 +46,8 @@
"react-dom": "19.1.2"
},
"devDependencies": {
"@azure/microsoft-playwright-testing": "1.0.0-beta.7",
"@azure/identity": "4.13.0",
"@azure/playwright": "1.0.0",
"@formbricks/eslint-config": "workspace:*",
"@playwright/test": "1.56.1",
"eslint": "8.57.0",

View File

@@ -1,24 +1,14 @@
import { ServiceOS, getServiceConfig } from "@azure/microsoft-playwright-testing";
import { defineConfig } from "@playwright/test";
import config from "./playwright.config";
import { createAzurePlaywrightConfig, ServiceAuth, ServiceOS } from '@azure/playwright';
import { defineConfig } from '@playwright/test';
import config from './playwright.config';
/* Learn more about service configuration at https://aka.ms/mpt/config */
/* Learn more about service configuration at https://aka.ms/pww/docs/config */
export default defineConfig(
config,
getServiceConfig(config, {
exposeNetwork: "<loopback>",
timeout: 120000, // Increased timeout for cloud environment with network latency
createAzurePlaywrightConfig(config, {
exposeNetwork: '<loopback>',
connectTimeout: 3 * 60 * 1000, // 3 minutes
os: ServiceOS.LINUX,
useCloudHostedBrowsers: true, // Set to false if you want to only use reporting and not cloud hosted browsers
}),
{
/*
Playwright Testing service reporter is added by default.
This will override any reporter options specified in the base playwright config.
If you are using more reporters, please update your configuration accordingly.
*/
reporter: [["list"], ["@azure/microsoft-playwright-testing/reporter"]],
retries: 2, // Always retry in cloud environment due to potential network/timing issues
maxFailures: undefined, // Don't stop on first failure to avoid cascading shutdowns with high parallelism
}
serviceAuthType: ServiceAuth.ACCESS_TOKEN
})
);

82
pnpm-lock.yaml generated
View File

@@ -26,9 +26,12 @@ importers:
specifier: 19.1.2
version: 19.1.2(react@19.1.2)
devDependencies:
'@azure/microsoft-playwright-testing':
specifier: 1.0.0-beta.7
version: 1.0.0-beta.7(@playwright/test@1.56.1)
'@azure/identity':
specifier: 4.13.0
version: 4.13.0
'@azure/playwright':
specifier: 1.0.0
version: 1.0.0(@playwright/test@1.56.1)
'@formbricks/eslint-config':
specifier: workspace:*
version: link:packages/config-eslint
@@ -1347,10 +1350,6 @@ packages:
resolution: {integrity: sha512-XPArKLzsvl0Hf0CaGyKHUyVgF7oDnhKoP85Xv6M4StF/1AhfORhZudHtOyf2s+FcbuQ9dPRAjB8J2KvRRMUK2A==}
engines: {node: '>=20.0.0'}
'@azure/core-xml@1.5.0':
resolution: {integrity: sha512-D/sdlJBMJfx7gqoj66PKVmhDDaU6TKA49ptcolxdas29X7AfvLTmfAGLjAcIMBK7UZ2o4lygHIqVckOlQU3xWw==}
engines: {node: '>=20.0.0'}
'@azure/identity@4.13.0':
resolution: {integrity: sha512-uWC0fssc+hs1TGGVkkghiaFkkS7NkTxfnCH+Hdg+yTehTpMcehpok4PgUKKdyCH+9ldu6FhiHRv84Ntqj1vVcw==}
engines: {node: '>=20.0.0'}
@@ -1367,13 +1366,6 @@ packages:
resolution: {integrity: sha512-fCqPIfOcLE+CGqGPd66c8bZpwAji98tZ4JI9i/mlTNTlsIWslCfpg48s/ypyLxZTump5sypjrKn2/kY7q8oAbA==}
engines: {node: '>=20.0.0'}
'@azure/microsoft-playwright-testing@1.0.0-beta.7':
resolution: {integrity: sha512-Y6C35LWUfLevHu5NG+7vvFfhpmUrGWKRumcz7/CSCmWlx8RVfWgP6NuL8rIPDuTeJyjaTczNfeg1ppGW26TjBw==}
engines: {node: '>=18.0.0'}
deprecated: This package has been deprecated and will no longer be maintained after March 8, 2026. Upgrade to the replacement package, @azure/playwright, to continue receiving updates.
peerDependencies:
'@playwright/test': ^1.43.1
'@azure/msal-browser@4.26.0':
resolution: {integrity: sha512-Ie3SZ4IMrf9lSwWVzzJrhTPE+g9+QDUfeor1LKMBQzcblp+3J/U1G8hMpNSfLL7eA5F/DjjPXkATJ5JRUdDJLA==}
engines: {node: '>=0.8.0'}
@@ -1386,13 +1378,11 @@ packages:
resolution: {integrity: sha512-HszfqoC+i2C9+BRDQfuNUGp15Re7menIhCEbFCQ49D3KaqEDrgZIgQ8zSct4T59jWeUIL9N/Dwiv4o2VueTdqQ==}
engines: {node: '>=16'}
'@azure/storage-blob@12.29.1':
resolution: {integrity: sha512-7ktyY0rfTM0vo7HvtK6E3UvYnI9qfd6Oz6z/+92VhGRveWng3kJwMKeUpqmW/NmwcDNbxHpSlldG+vsUnRFnBg==}
engines: {node: '>=20.0.0'}
'@azure/storage-common@12.1.1':
resolution: {integrity: sha512-eIOH1pqFwI6UmVNnDQvmFeSg0XppuzDLFeUNO/Xht7ODAzRLgGDh7h550pSxoA+lPDxBl1+D2m/KG3jWzCUjTg==}
'@azure/playwright@1.0.0':
resolution: {integrity: sha512-HG0XuYT0z7TcyffJZrEZ9fWrP/WsK/jDAmKFB7MuYNy9WMW0oQItUy+o6uIv2IiZzUeO8OpyhompOhpFddf+eQ==}
engines: {node: '>=20.0.0'}
peerDependencies:
'@playwright/test': ^1.47.0
'@babel/code-frame@7.27.1':
resolution: {integrity: sha512-cjQ7ZlQ0Mv3b47hABuTevyTuYN4i+loJKGeV9flcCgIK37cCXRh+L1bd3iBHlynerhQ7BhCkn2BPbQUL+rGqFg==}
@@ -6445,10 +6435,6 @@ packages:
resolution: {integrity: sha512-pfX9uG9Ki0yekDHx2SiuRIyFdyAr1kMIMitPvb0YBo8SUfKvia7w7FIyd/l6av85pFYRhZscS75MwMnbvY+hcQ==}
hasBin: true
fast-xml-parser@5.3.0:
resolution: {integrity: sha512-gkWGshjYcQCF+6qtlrqBqELqNqnt4CxruY6UVAWWnqb3DQ6qaNFEIKqzYep1XzHLM/QtrHVCxyPOtTk4LTQ7Aw==}
hasBin: true
fastest-stable-stringify@2.0.2:
resolution: {integrity: sha512-bijHueCGd0LqqNK9b5oCMHc0MluJAx0cwqASgbWMvkO01lCYgIhacVRLcaDz3QnyYIRNJRDwMb41VuT6pHJ91Q==}
@@ -7771,6 +7757,7 @@ packages:
next@15.5.9:
resolution: {integrity: sha512-agNLK89seZEtC5zUHwtut0+tNrc0Xw4FT/Dg+B/VLEo9pAcS9rtTKpek3V6kVcVwsB2YlqMaHdfZL4eLEVYuCg==}
engines: {node: ^18.18.0 || ^19.8.0 || >= 20.0.0}
deprecated: This version has a security vulnerability. Please upgrade to a patched version. See https://nextjs.org/blog/security-update-2025-12-11 for more details.
hasBin: true
peerDependencies:
'@opentelemetry/api': ^1.1.0
@@ -11423,11 +11410,6 @@ snapshots:
transitivePeerDependencies:
- supports-color
'@azure/core-xml@1.5.0':
dependencies:
fast-xml-parser: 5.3.0
tslib: 2.8.1
'@azure/identity@4.13.0':
dependencies:
'@azure/abort-controller': 2.1.2
@@ -11481,17 +11463,6 @@ snapshots:
transitivePeerDependencies:
- supports-color
'@azure/microsoft-playwright-testing@1.0.0-beta.7(@playwright/test@1.56.1)':
dependencies:
'@azure/core-rest-pipeline': 1.22.1
'@azure/identity': 4.13.0
'@azure/logger': 1.3.0
'@azure/storage-blob': 12.29.1
'@playwright/test': 1.56.1
tslib: 2.8.1
transitivePeerDependencies:
- supports-color
'@azure/msal-browser@4.26.0':
dependencies:
'@azure/msal-common': 15.13.1
@@ -11504,35 +11475,12 @@ snapshots:
jsonwebtoken: 9.0.2
uuid: 8.3.2
'@azure/storage-blob@12.29.1':
'@azure/playwright@1.0.0(@playwright/test@1.56.1)':
dependencies:
'@azure/abort-controller': 2.1.2
'@azure/core-auth': 1.10.1
'@azure/core-client': 1.10.1
'@azure/core-http-compat': 2.3.1
'@azure/core-lro': 2.7.2
'@azure/core-paging': 1.6.2
'@azure/core-rest-pipeline': 1.22.1
'@azure/core-tracing': 1.3.1
'@azure/core-util': 1.13.1
'@azure/core-xml': 1.5.0
'@azure/logger': 1.3.0
'@azure/storage-common': 12.1.1
events: 3.3.0
tslib: 2.8.1
transitivePeerDependencies:
- supports-color
'@azure/storage-common@12.1.1':
dependencies:
'@azure/abort-controller': 2.1.2
'@azure/core-auth': 1.10.1
'@azure/core-http-compat': 2.3.1
'@azure/core-rest-pipeline': 1.22.1
'@azure/core-tracing': 1.3.1
'@azure/core-util': 1.13.1
'@azure/logger': 1.3.0
events: 3.3.0
'@playwright/test': 1.56.1
tslib: 2.8.1
transitivePeerDependencies:
- supports-color
@@ -17237,10 +17185,6 @@ snapshots:
dependencies:
strnum: 2.1.1
fast-xml-parser@5.3.0:
dependencies:
strnum: 2.1.1
fastest-stable-stringify@2.0.2: {}
fastq@1.19.1: