domino_admin_toolkit.checks.test_keycloak module
- Description:
Validates keycloak is running and can be accessed
- Result:
Test can login to keycloak successfully and returns a version, version may contain known issue as seen below
- exception domino_admin_toolkit.checks.test_keycloak.KeycloakClientNotFound
Bases:
KeycloakErrorRaised when a Keycloak client lookup returns no clients.
- exception domino_admin_toolkit.checks.test_keycloak.KeycloakError
Bases:
ExceptionRaised when a Keycloak operation fails.
- domino_admin_toolkit.checks.test_keycloak.keycloak_status(k8s_client, timeout=30.0)
- Return type:
- domino_admin_toolkit.checks.test_keycloak.test_keycloak_clients_matches(k8s_client, request)
- Description:
Validates that the client secrets in Keycloak match the secrets in the Domino credential store.
- Result:
If the client secrets in Keycloak match the secrets in the Domino credential store, the test passes. If the secrets do not match, an assertion error is raised. Clients retired from Keycloak in a given Domino version (for example mlflow-deployments-client in 6.4.0) are skipped on that version and later. If the Domino version cannot be determined, a retired client that is absent from Keycloak is tolerated, but its secret is still compared when it exists.
- domino_admin_toolkit.checks.test_keycloak.test_keycloak_version(k8s_client)
- Description:
Checks the Keycloak version. Retrieves the host, port and protocol information.
- Result:
Failure to connect to the Keycloak Admin logs an error message. If it succeeds, it retrieves the server information and extracts the version from it. The function then asserts that the version is not empty and is not equal to “8.0.1”. Keycloak 8.0.1 has a known bug which breaks the Domino “First broker login” flow, Note if the bug has been fixed manually this check would still flag it as it only checks the Keycloak version
- Public Facing KB: