Draft: Port AI Gateway E2E tests to CNG
What does this MR do and why?
This MR ports AI Gateway E2E tests from the Omnibus-based test infrastructure to CNG (Cloud Native GitLab), enabling AI Gateway testing in Kubernetes environments.
Key changes:
- Adds new
AiGatewaydeployment configuration class for CNG orchestrator - Implements AI Gateway Helm chart installation and configuration
- Adds support for multiple test scenarios: with/without add-ons, with/without seat assignments, and without license
- Extends Kind cluster configuration to support AI Gateway port mapping (30081)
- Adds GitLab Duo license setup automation via
gitlab_duo_setup.rb - Implements debugging utilities for AI Gateway connectivity and authentication
Why this is needed:
- Provides CNG-based testing platform alongside existing Omnibus tests
- Enables testing of AI Gateway in Kubernetes environments
- Supports various licensing and seat assignment scenarios for comprehensive test coverage
Related issues
Related to gitlab-org/quality/quality-engineering/team-tasks#3341
How to set up and validate locally
- Ensure you have a valid
QA_EE_ACTIVATION_CODEwith Duo add-on - Run the orchestrator with AI Gateway configuration:
bundle exec exe/gitlab-orchestrator kind --create-cluster --config-type ai_gateway - The setup will:
- Create a Kind cluster with AI Gateway port mapping
- Install GitLab via Helm
- Install AI Gateway chart
- Apply Duo license and configure service access tokens
- Run debugging checks for connectivity
Current status
Draft - Currently investigating 401 authentication errors in CI:
- AI Gateway is deployed with
AIGW_AUTH__BYPASS_EXTERNAL=true - Service access tokens are being generated
- Tests are quarantined pending resolution of auth issues
- Added comprehensive debugging to troubleshoot connectivity and authentication
MR acceptance checklist
Evaluate this MR against the MR acceptance checklist. It helps you analyze changes to reduce risks in quality, performance, reliability, security, and maintainability.
Edited by Tim Beauchamp