From 7415a96e656fb3188e238a08c910435d178d4159 Mon Sep 17 00:00:00 2001
From: ValueOn AG
Date: Tue, 17 Feb 2026 14:13:47 +0100
Subject: [PATCH] fix: set Azure Container App ingress timeout to 900s, reduce
wait times per variant
Co-authored-by: Cursor
---
.github/workflows/build-deploy.yml | 4 ++++
src/bot/authTestProcedure.ts | 26 ++++++++++++++------------
2 files changed, 18 insertions(+), 12 deletions(-)
diff --git a/.github/workflows/build-deploy.yml b/.github/workflows/build-deploy.yml
index ad3924b..7d86a02 100644
--- a/.github/workflows/build-deploy.yml
+++ b/.github/workflows/build-deploy.yml
@@ -49,6 +49,10 @@ jobs:
--name ${{ env.CONTAINER_APP_NAME }} \
--resource-group ${{ env.RESOURCE_GROUP }} \
--image ${{ secrets.ACR_LOGIN_SERVER }}/${{ env.IMAGE_NAME }}:${{ github.sha }}
+ az containerapp ingress update \
+ --name ${{ env.CONTAINER_APP_NAME }} \
+ --resource-group ${{ env.RESOURCE_GROUP }} \
+ --request-timeout 900
- name: Summary
run: |
diff --git a/src/bot/authTestProcedure.ts b/src/bot/authTestProcedure.ts
index ac95458..3555e99 100644
--- a/src/bot/authTestProcedure.ts
+++ b/src/bot/authTestProcedure.ts
@@ -237,10 +237,10 @@ async function _runVariant(
'input[name="loginfmt"], input[type="email"], button:has-text("Sign in"), button:has-text("Join a meeting")',
{ timeout: 15000, state: 'visible' },
);
- await page.waitForTimeout(2000);
+ await page.waitForTimeout(1000);
} catch {
_log('warn', 'Login page elements not found, taking screenshot anyway');
- await page.waitForTimeout(5000);
+ await page.waitForTimeout(2000);
}
await _screenshotStep('1 - Login-Seite');
@@ -289,11 +289,11 @@ async function _runVariant(
'button:has-text("Sign in"), button:has-text("Join a meeting"), button:has-text("Anmelden"), button:has-text("An Besprechung teilnehmen")',
{ timeout: 30000, state: 'visible' },
);
- await page.waitForTimeout(3000);
+ await page.waitForTimeout(1000);
_log('info', 'Teams landing page loaded');
} catch {
_log('warn', 'Landing page buttons not found after 30s');
- await page.waitForTimeout(5000);
+ await page.waitForTimeout(2000);
}
await _screenshotStep('2 - Teams Landingpage');
@@ -342,15 +342,17 @@ async function _runVariant(
_log('warn', '"Join a meeting" button not found on landing page');
}
- // Wait for the "Join a meeting" form to FULLY load
+ // Wait for the "Join a meeting" form to load (wait for Meeting ID input)
_log('info', 'Waiting for Join a meeting form to load...');
- await page.waitForTimeout(5000);
try {
- await page.waitForLoadState('networkidle', { timeout: 20000 });
+ await page.waitForSelector('input[placeholder*="meeting" i], input[placeholder*="Meeting" i], input[placeholder*="ID" i]', {
+ timeout: 15000, state: 'visible',
+ });
+ await page.waitForTimeout(1000);
} catch {
- _log('warn', 'networkidle timeout, continuing');
+ _log('warn', 'Meeting form input not found, continuing');
+ await page.waitForTimeout(2000);
}
- await page.waitForTimeout(3000);
await _screenshotStep('3 - Join a meeting Formular');
// Parse meeting URL to extract Meeting ID and Passcode
@@ -469,13 +471,13 @@ async function _runVariant(
// Wait for resulting page after clicking Join
if (joinClicked) {
_log('info', 'Waiting for page after Join meeting...');
- await page.waitForTimeout(5000);
+ await page.waitForTimeout(3000);
try {
- await page.waitForLoadState('networkidle', { timeout: 30000 });
+ await page.waitForLoadState('networkidle', { timeout: 20000 });
} catch {
_log('warn', 'networkidle timeout after Join, continuing');
}
- await page.waitForTimeout(10000);
+ await page.waitForTimeout(5000);
}
await _screenshotStep('5 - Nach Join meeting');