From 92e933c51bf3900658038258b2424060c183ee25 Mon Sep 17 00:00:00 2001 From: Ioannis Igoumenos Date: Thu, 8 Oct 2026 17:39:09 +0300 Subject: [PATCH 1/3] fetch the latest OpenID Conformance Suite release --- .github/workflows/test.yaml | 13 ++++++++++++- 1 file changed, 12 insertions(+), 1 deletion(-) diff --git a/.github/workflows/test.yaml b/.github/workflows/test.yaml index 79156c9ef..d4bdb48e7 100644 --- a/.github/workflows/test.yaml +++ b/.github/workflows/test.yaml @@ -214,7 +214,6 @@ jobs: ssp-version: ["v2.5.0"] env: SUITE_BASE_URL: https://localhost.emobix.co.uk:8443 - VERSION: release-v5.1.39 steps: - uses: actions/checkout@v6 with: @@ -223,6 +222,18 @@ jobs: run: | pip install --upgrade pip pip install httpx + - name: Install jq + run: | + sudo apt-get update + sudo apt-get install --no-install-recommends -y jq + - name: Resolve latest Conformance Suite release + run: | + set -euo pipefail + VERSION="$(curl --location --fail --silent --show-error \ + https://gitlab.com/api/v4/projects/openid%2Fconformance-suite/releases/permalink/latest \ + | jq --raw-output --exit-status '.tag_name')" + echo "Using Conformance Suite release: $VERSION" + echo "VERSION=$VERSION" >> "$GITHUB_ENV" - name: Conformance Suite Checkout if: ${{ steps.cache.outputs.cache-hit != 'true' }} run: git clone --depth 1 --single-branch --branch $VERSION https://gitlab.com/openid/conformance-suite.git From 2aad0fa615eb793debc1fced0a225d00130b7e20 Mon Sep 17 00:00:00 2001 From: Ioannis Igoumenos Date: Thu, 8 Oct 2026 18:34:27 +0300 Subject: [PATCH 2/3] add failure diagnostic logging add failure diagnostic logging --- .github/workflows/test.yaml | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/.github/workflows/test.yaml b/.github/workflows/test.yaml index d4bdb48e7..a09fbe65c 100644 --- a/.github/workflows/test.yaml +++ b/.github/workflows/test.yaml @@ -270,6 +270,14 @@ jobs: - name: Run RP backchannel run: | ./conformance-suite/scripts/run-test-plan.py "oidcc-backchannel-rp-initiated-logout-certification-test-plan[response_type=code][client_registration=static_client]" ./main/conformance-tests/conformance-back-channel-logout-ci.json + - name: Dump Incomplete Test Log to Console + if: failure() + run: | + echo "=== SimpleSAMLphp OP Container Log (Last 100 lines) ===" + docker compose -f ./main/docker/docker-compose.yml --project-directory ./main logs --tail=100 || true + + echo "=== Conformance Runner Log Entries ===" + curl -sk "https://localhost.emobix.co.uk:8443/api/log" | jq 'if type == "array" then .[] elif type == "object" and has("data") and (.data | type == "array") then .data[] else empty end | select(.result != "PASSED") | {testId: ._id, testName: .testName, status: .status, result: .result}' || true - name: Stop SSP working-directory: ./main run: | From a669d3d76ad6127d38b2aa749905e55b07e957f1 Mon Sep 17 00:00:00 2001 From: Ioannis Igoumenos Date: Thu, 8 Oct 2026 19:46:59 +0300 Subject: [PATCH 3/3] Updated docker/conformance.sql to replace httpd:8443 with nginx:8443 for back-channel logout client endpoints in conformance testing fixtures. --- docker/conformance.sql | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/docker/conformance.sql b/docker/conformance.sql index 4194f9e85..8fe1728ca 100644 --- a/docker/conformance.sql +++ b/docker/conformance.sql @@ -45,13 +45,13 @@ CREATE TABLE oidc_client ( expires_at TIMESTAMP NULL DEFAULT NULL, is_federated BOOLEAN NOT NULL DEFAULT false ); --- Used 'httpd' host for back-channel logout url (https://httpd:8443/test/a/simplesamlphp-module-oidc/backchannel_logout) +-- Used 'nginx' host for back-channel logout url (https://nginx:8443/test/a/simplesamlphp-module-oidc/backchannel_logout) -- since this is the hostname of conformance server while running in container environment -INSERT INTO oidc_client VALUES('_55a99a1d298da921cb27d700d4604352e51171ebc4','_8967dd97d07cc59db7055e84ac00e79005157c1132','Conformance Client 1',replace('Client 1 for Conformance Testing https://openid.net/certification/connect_op_testing/\n','\n',char(10)),'example-userpass','["https:\/\/localhost.emobix.co.uk:8443\/test\/a\/simplesamlphp-module-oidc\/callback","https:\/\/www.certification.openid.net\/test\/a\/simplesamlphp-module-oidc\/callback"]','["openid","profile","email","address","phone","offline_access"]',1,1,NULL,'["https:\/\/localhost.emobix.co.uk:8443\/test\/a\/simplesamlphp-module-oidc\/post_logout_redirect"]','https://httpd:8443/test/a/simplesamlphp-module-oidc/backchannel_logout',NULL,NULL, NULL, NULL, NULL, NULL, 'manual', NULL, NULL, NULL, false); +INSERT INTO oidc_client VALUES('_55a99a1d298da921cb27d700d4604352e51171ebc4','_8967dd97d07cc59db7055e84ac00e79005157c1132','Conformance Client 1',replace('Client 1 for Conformance Testing https://openid.net/certification/connect_op_testing/\n','\n',char(10)),'example-userpass','["https:\/\/localhost.emobix.co.uk:8443\/test\/a\/simplesamlphp-module-oidc\/callback","https:\/\/www.certification.openid.net\/test\/a\/simplesamlphp-module-oidc\/callback"]','["openid","profile","email","address","phone","offline_access"]',1,1,NULL,'["https:\/\/localhost.emobix.co.uk:8443\/test\/a\/simplesamlphp-module-oidc\/post_logout_redirect"]','https://nginx:8443/test/a/simplesamlphp-module-oidc/backchannel_logout',NULL,NULL, NULL, NULL, NULL, NULL, 'manual', NULL, NULL, NULL, false); INSERT INTO oidc_client VALUES('_34efb61060172a11d62101bc804db789f8f9100b0e','_91a4607a1c10ba801268929b961b3f6c067ff82d21','Conformance Client 2','','example-userpass','["https:\/\/localhost.emobix.co.uk:8443\/test\/a\/simplesamlphp-module-oidc\/callback","https:\/\/www.certification.openid.net\/test\/a\/simplesamlphp-module-oidc\/callback"]','["openid","profile","email","offline_access"]',1,1,NULL,NULL,NULL,NULL,NULL, NULL, NULL, NULL, NULL, 'manual', NULL, NULL, NULL, false); INSERT INTO oidc_client VALUES('_0afb7d18e54b2de8205a93e38ca119e62ee321d031','_944e73bbeec7850d32b68f1b5c780562c955967e4e','Conformance Client 3','Client for client_secret_post','example-userpass','["https:\/\/localhost.emobix.co.uk:8443\/test\/a\/simplesamlphp-module-oidc\/callback","https:\/\/www.certification.openid.net\/test\/a\/simplesamlphp-module-oidc\/callback"]','["openid","profile","email"]',1,1,NULL,NULL,NULL,NULL,NULL, NULL, NULL, NULL, NULL, 'manual', NULL, NULL, NULL, false); INSERT INTO oidc_client VALUES('_8957eda35234902ba8343c0cdacac040310f17dfca','_322d16999f9da8b5abc9e9c0c08e853f60f4dc4804','RP-Initiated Logout Client','Client for testing RP-Initiated Logout','example-userpass','["https:\/\/localhost.emobix.co.uk:8443\/test\/a\/simplesamlphp-module-oidc\/callback","https:\/\/www.certification.openid.net\/test\/a\/simplesamlphp-module-oidc\/callback"]','["openid","profile","email","address","phone"]',1,1,NULL,'["https:\/\/localhost.emobix.co.uk:8443\/test\/a\/simplesamlphp-module-oidc\/post_logout_redirect"]',NULL,NULL,NULL, NULL, NULL, NULL, NULL, 'manual', NULL, NULL, NULL, false); -INSERT INTO oidc_client VALUES('_9fe2f7589ece1b71f5ef75a91847d71bc5125ec2a6','_3c0beb20194179c01d7796c6836f62801e9ed4b368','Back-Channel Logout Client','Client for testing Back-Channel Logout','example-userpass','["https:\/\/localhost.emobix.co.uk:8443\/test\/a\/simplesamlphp-module-oidc\/callback","https:\/\/www.certification.openid.net\/test\/a\/simplesamlphp-module-oidc\/callback"]','["openid","profile","email","address","phone"]',1,1,NULL,'["https:\/\/localhost.emobix.co.uk:8443\/test\/a\/simplesamlphp-module-oidc\/post_logout_redirect"]','https://httpd:8443/test/a/simplesamlphp-module-oidc/backchannel_logout',NULL,NULL, NULL, NULL, NULL, NULL, 'manual', NULL, NULL, NULL, false); +INSERT INTO oidc_client VALUES('_9fe2f7589ece1b71f5ef75a91847d71bc5125ec2a6','_3c0beb20194179c01d7796c6836f62801e9ed4b368','Back-Channel Logout Client','Client for testing Back-Channel Logout','example-userpass','["https:\/\/localhost.emobix.co.uk:8443\/test\/a\/simplesamlphp-module-oidc\/callback","https:\/\/www.certification.openid.net\/test\/a\/simplesamlphp-module-oidc\/callback"]','["openid","profile","email","address","phone"]',1,1,NULL,'["https:\/\/localhost.emobix.co.uk:8443\/test\/a\/simplesamlphp-module-oidc\/post_logout_redirect"]','https://nginx:8443/test/a/simplesamlphp-module-oidc/backchannel_logout',NULL,NULL, NULL, NULL, NULL, NULL, 'manual', NULL, NULL, NULL, false); CREATE TABLE oidc_access_token ( id VARCHAR(191) PRIMARY KEY NOT NULL, scopes TEXT,