Investigate & Fix/Quarantine test file: /browser_ui/5_package/package_registry/maven_gradle_repository_spec.rb
Context
The /browser_ui/5_package/package_registry/maven_gradle_repository_spec.rb spec file currently holds the 17th place of test file causing the most CI/CD pipeline failures in the last 3 months
- It caused 229 MR pipeline failures (that's ~11 pipeline failures a day, each impacting our Engineers)
- It caused 4 master pipeline failures (each potentially causing master-broken incidents)
See the Snowflake dashboard for that test file:
More info from the dashboard
- Looking at the failures over time, we had one peak on 2024-05-28, but it still fails pipelines daily:
-
There are 3 tests failing in that file (based on the name, and the number of errors, they are likely to be related)
Package Maven Repository with Gradle using ci job token pushes and pulls a maven package via gradlePackage Maven Repository with Gradle using personal access token pushes and pulls a maven package via gradlePackage Maven Repository with Gradle using project deploy token pushes and pulls a maven package via gradle
-
Looking at the recent failure reports, here are the failures breakdown of the last 71 recent errors:
| Error Type | Count | % of Total | Description |
|---|---|---|---|
| Pipeline Creation Timeout | 27 | 33.8% | Wait for pipeline to be created failed after 240 seconds |
| Current User API GET Failed | 12 | 15.0% |
Failed to GET .../api/v4/user (500) - HTML error pages |
| Group API GET Failed | 8 | 10.0% |
Failed to GET .../api/v4/groups/... (500) - HTML/JSON error pages |
| Symbol Conversion Error | 6 | 7.5% | no implicit conversion of Symbol into Integer |
| User API GET Failed | 4 | 5.0% |
Failed to GET .../api/v4/users/... (500) - HTML error pages |
| Generic Wait Timeout | 4 | 5.0% | Wait failed after 60 seconds |
| RSpec Multiple Exception | 3 | 3.8% | RSpec::Core::MultipleExceptionError |
| Sandbox Fabrication Failed | 3 | 3.8% | Fabrication of QA::Resource::Sandbox using the API failed (500) |
| ProjectRunner Fabrication Failed | 2 | 2.5% | Fabrication of QA::Resource::Ci::ProjectRunner using the API failed (500) |
| Project Runners API Failed | 2 | 2.5% | Failed to GET .../api/v4/projects/.../runners (500) |
| Database Connection Error | 1 | 1.3% |
ActiveRecord::DatabaseConnectionError - PostgreSQL connection issues |
| User Fabrication Failed | 1 | 1.3% | Fabrication of QA::Resource::User using the API failed (500) |
| CICDSettings Fabrication Failed | 1 | 1.3% | Fabrication of QA::Resource::CICDSettings using the API failed (500) |
| Project Variables API Failed | 1 | 1.3% | Failed to GET .../api/v4/projects/.../variables/... (500) |
Goal
Investigate the problem ,and fix/quarantine (if appropriate).
Even if the problem was caused by an infrastructure issue, I would find it interesting to make that test more resilient to those problems (if applicable).
About the data
We started importing data in Snowflake for non-E2E tests on 2025-04-23. We don't have non-E2E tests data before that date.


