-
Task
-
Resolution: Unresolved
-
Blocker
-
None
-
None
-
True
-
-
False
-
-
Description
Migrate Microsoft Auth Provider E2E tests to workspaces/backstage/e2e-tests/.
NOTE
This task is based on the existing RHDH core test case and may have missed some details. Please review the original test files in RHDH core before implementation. These tests are highly complex and involve Kubernetes deployment lifecycle management.
DOCUMENTATION
Follow the RHDH E2E Test Utils - Overlay Documentation for implementation guidance.
Setup Prerequisites
Azure App Registration: Microsoft Azure application with proper redirect URLs
- AUTH_PROVIDERS_AZURE_CLIENT_ID: Azure application client ID
- AUTH_PROVIDERS_AZURE_CLIENT_SECRET: Azure application client secret
- AUTH_PROVIDERS_AZURE_TENANT_ID: Azure tenant ID
Test User Credentials:
- DEFAULT_USER_PASSWORD_2: Password for test user
Kubernetes Namespace: Dedicated namespace for test deployment
- Namespace creation and cleanup handled by test
Based on RHDH core test structure:
auth:
providers:
microsoft:
development:
clientId: ${AUTH_PROVIDERS_AZURE_CLIENT_ID}
clientSecret: ${AUTH_PROVIDERS_AZURE_CLIENT_SECRET}
tenantId: ${AUTH_PROVIDERS_AZURE_TENANT_ID}
Microsoft Graph API: For user/group ingestion tests
Source Files (RHDH Core)
| File | Path |
|---|---|
| Test spec | e2e-tests/playwright/e2e/auth-providers/microsoft.spec.ts |
| Deployment Helper | e2e-tests/playwright/utils/authentication-providers/rhdh-deployment.ts |
| MS Graph Helper | e2e-tests/playwright/utils/authentication-providers/msgraph-helper.ts |
Plugin Packages
| Package | Type |
|---|---|
| backstage-plugin-catalog-backend-module-msgraph-dynamic | Backend |
Acceptance Criteria
1. Create Workspace Structure
- [ ] Reuse workspaces/backstage/e2e-tests/
2. Create RHDH Configuration (tests/config/)
- [ ] Configure Microsoft auth provider
- [ ] Configure msgraph catalog provider
3. Migrate Test Files
- [ ] Create tests/specs/auth-providers/microsoft.spec.ts
- [ ] Create tests/utils/rhdh-deployment.ts (deployment helper)
- [ ] Create tests/utils/msgraph-helper.ts (MS Graph API helper)
4. Verify All Tests Pass
- [ ] All 6 test cases pass (1 currently fixme'd)
Test Cases (6 total - 1 disabled)
Login with Microsoft default resolver
Login with Microsoft emailMatchingUserEntityAnnotation resolver
Login with Microsoft emailMatchingUserEntityProfileEmail resolver
Login with Microsoft emailLocalPartMatchingUserEntityName resolver (disabled)
Set Microsoft sessionDuration and confirm auth cookie duration
Ingestion of Microsoft users and groups: verify user entities and groups
Reference
- Template: workspaces/tech-radar/e2e-tests
COMPLEXITY
Very high complexity - involves Kubernetes deployment lifecycle