Skip to content

Commit 2cbbbf2

Browse files
ralfbeckerclaude
andcommitted
CI: install webauthn app schema before running tests
egroupware/webauthn is now a first-party composer dependency, but the CI Docker image's baked-in install predates it, so egw_webauthn_pubkeys was never created - every webauthn test failed with "Table ... doesn't exist (1146)". Installs it explicitly via setup-cli.php --update, mirroring the existing "Install fixture test app" step, and fails fast with a clear error if the table still isn't there afterward. Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01Y6Li6X2v8iApFnyefGhpKQ
1 parent 72bd0e5 commit 2cbbbf2

1 file changed

Lines changed: 24 additions & 0 deletions

File tree

.github/workflows/testing.yml

Lines changed: 24 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -279,6 +279,30 @@ jobs:
279279
echo "egw_test table not found after test app install, some tests will be skipped"
280280
fi
281281
282+
- name: Install webauthn app
283+
run: |
284+
set -euo pipefail
285+
COMPOSE="docker compose --project-directory $GITHUB_WORKSPACE/sources \
286+
-f $GITHUB_WORKSPACE/sources/doc/docker/docker-compose.yml \
287+
-f $GITHUB_WORKSPACE/sources/doc/docker/docker-compose.ci.yml"
288+
# webauthn is a newer first-party app (composer.json require egroupware/webauthn); the CI
289+
# image's baked-in install predates it, so its schema (egw_webauthn_pubkeys) was never
290+
# created - install it explicitly, same as the "test" fixture app above.
291+
$COMPOSE exec -T \
292+
-e EGW_CONFIG_USER="$EGW_CONFIG_USER" \
293+
-e EGW_CONFIG_PASSWD="$EGW_CONFIG_PASSWD" \
294+
-w "$EGW_SRC_DIR" egroupware sh -lc '
295+
set +e
296+
php setup/setup-cli.php --update default,$EGW_CONFIG_USER,$EGW_CONFIG_PASSWD,no,webauthn
297+
rc=$?
298+
set -e
299+
echo "setup-cli exit code: $rc"
300+
'
301+
if ! $COMPOSE exec -T db mariadb -u root -p"$EGW_DB_ROOT_PW" -D "egroupware" -e "SHOW TABLES LIKE 'egw_webauthn_pubkeys';" | grep -q "egw_webauthn_pubkeys"; then
302+
echo "::error::egw_webauthn_pubkeys table not found after webauthn app install"
303+
exit 1
304+
fi
305+
282306
- name: Disable swoolepush for CI tests
283307
run: |
284308
set -euo pipefail

0 commit comments

Comments
 (0)