Add Vue 3 rollout flag for admin pipeline usage quotas

Adds the vue3_migrate_pipeline_usage_quotas feature flag and a vue3_migration.yml for the admin pipeline usage quotas page. This opts it into the Vue 3 migration with Option 1. The bundler builds both a Vue 2 and a Vue 3 chunk. Rails serves the Vue 3 chunk only when the flag is on. The flag is default-off.

The entrypoint is EE-only. initUsageQuotasAdminView builds a tab list from getPipelineTabMetadata() and calls mountUsageQuotasApp, which mounts with initVueApp. So the root element carries the data-gitlab-vue3-app marker.

Ownership

The page is attributed to devopsverify. The flag definition and this MR use grouppipeline authoring. The 7 page-specific components live under usage_quotas/, which grouputilization owns. Please review the tab metadata and the minutes usage table.

Risk

The page builds its tab list at runtime from metadata objects rather than a static template. Check that the pipeline tab appears at all, and that its minutes usage table renders.

Verification

  • bundle exec rspec spec/lib/gitlab/vue3_migration_files_spec.rb — 1101 examples, 0 failures (after rebase onto master, 2026-09-10)
  • node scripts/frontend/vue3_migration_stats.mjs --owners reports the page(s) as rollout under the new flag

Local verification

A temporary feature spec loaded the page as an admin with vue3_migrate_pipeline_usage_quotas stubbed on. It asserted that the page HTML included a <script> whose src contains the .vue3.js entrypoint, and that a [data-gitlab-vue3-app] element exists. Then it saved a screenshot.

The Pipelines tab appears, and the hosted runner usage block and the usage sections render. The local GDK has no compute usage data, so the tables show their empty states. A control run with the flag off, on Vue 2, rendered the same page.

Page Entrypoint served Vue 3 root marker
Admin usage quotas (Pipelines tab) pages.admin.application_settings.usage_quotas.vue3.js UsageQuotasView
Admin usage quotas on Vue 3

References

Edited by Miguel Rincon

Merge request reports

Loading
Loading