Frontend: Make CI/CD Catalog breadcrumb work
What does this MR do and why?
This MR adds client-side breadcrumbs to the CI/CD catalog page. It supports static breadcrumbs ('Explore'), index breadcrumb ('CI/CD Catalog), and show breadcrumbs (specific resource). For resource-specific breadcrumb, we use the last part of the path ('root/markdown-lint' would render as 'markdown-lint').
References
Screenshots or screen recordings
| Before | After |
|---|---|
| Screen_Recording_2025-07-23_at_23.16.51 | Screen_Recording_2025-07-23_at_23.17.33 |
How to set up and validate locally
-
Create a new project for your CI/CD component
-
Set up the component structure Create the following files in your test project:
template.yml(CI/CD component template):spec: inputs: stage: default: test description: Pipeline stage image: default: alpine:latest description: Docker image to use --- lint-markdown: stage: $[[ inputs.stage ]] image: $[[ inputs.image ]] script: - echo "Running markdown lint" - echo "Component: $CI_PROJECT_PATH"README.md:# Test Component This is a test CI/CD component for validating breadcrumb functionality. ## Usage ```yaml include: - component: gitlab.example.com/root/test-component@main inputs: stage: validate -
Visit Explore -> CI/CD catalog and verify the breadcrumbs work as expected
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.
Related to #421922 (closed) and #472190 (closed)