Skip to content

Improve pipeline icons are alignment

What does this MR do and why?

This change updates the visual layout and spacing of pipeline job components in the MR pipelines tab. The alignment issues mostly appear in Firefox and Safari. When the pipeline has downstream pipelines, the main pipeline jobs are presented in an inline container, while the downstream jobs are presented in an inline-flex container. This causes alignment inconsistencies because the inline container cannot use flex properties or properly participate in the parent flex layout. Adding display: contents makes the containers transparent to the layout, allowing all job elements to align directly within the parent's flex context.

As a side goal for this MR, I updated the retry button on the job page, as it was rendered too close to the job's name.

References

Screenshots or screen recordings

Pipeline stages icons misaligned:

Browser Before After
Chrome Screenshot_2025-10-21_at_12.12.30 Screenshot_2025-10-21_at_12.11.55
Firefox Screenshot_2025-10-20_at_23.42.53 Screenshot_2025-10-20_at_23.41.49
Safari Screenshot_2025-10-21_at_12.07.55 Screenshot_2025-10-21_at_12.08.09

Retry button misaligned:

Before After
Screenshot_2025-10-20_at_17.19.49 Screenshot_2025-10-21_at_13.28.53

How to set up and validate locally

  1. Create an MR and navigate to the Pipelines tab.
  2. Use the patch to simulate the pipeline data with multiple downstreams.
The patch
diff --git a/app/assets/javascripts/ci/pipeline_details/stores/pipelines_store.js b/app/assets/javascripts/ci/pipeline_details/stores/pipelines_store.js
index 96c6448858e3..928d363dab11 100644
--- a/app/assets/javascripts/ci/pipeline_details/stores/pipelines_store.js
+++ b/app/assets/javascripts/ci/pipeline_details/stores/pipelines_store.js
@@ -22,7 +22,1671 @@ export default class PipelinesStore {
       }
     }
 
-    this.state.pipelines = pipelines;
+    this.state.pipelines = [
+      {
+        id: 1650805047,
+        iid: 3751930,
+        user: {
+          id: 508743,
+          username: 'jarka',
+          public_email: 'jarka@gitlab.com',
+          name: 'Jarka Košanová',
+          state: 'active',
+          locked: false,
+          avatar_url:
+            'https://secure.gravatar.com/avatar/6ebed9881e76ad4f5cb8fd6a02f379e8fd5133ca78b0207fd81cee2c18528946?s=80&d=identicon',
+          web_url: 'https://gitlab.com/jarka',
+          show_status: false,
+          path: '/jarka',
+        },
+        active: false,
+        name: 'Ruby 3.3.7 MR',
+        source: 'merge_request_event',
+        created_at: '2025-01-31T19:11:58.019Z',
+        updated_at: '2025-01-31T19:12:15.793Z',
+        path: '/gitlab-org/gitlab/-/pipelines/1650805047',
+        flags: {
+          stuck: false,
+          auto_devops: false,
+          merge_request: true,
+          yaml_errors: false,
+          retryable: false,
+          cancelable: true,
+          failure_reason: false,
+          detached_merge_request_pipeline: false,
+          merge_request_pipeline: true,
+          merged_result_pipeline: true,
+          type: 'merge_train',
+          merge_train_pipeline: true,
+          latest: false,
+        },
+        details: {
+          status: {
+            icon: 'status_success',
+            text: 'Passed',
+            label: 'passed',
+            group: 'success',
+            tooltip: 'passed',
+            has_details: true,
+            details_path: '/gitlab-org/gitlab/-/pipelines/1650805047',
+            illustration: null,
+            favicon:
+              '/assets/ci_favicons/favicon_status_success-8451333011eee8ce9f2ab25dc487fe24a8758c694827a582f17f42b0a90446a2.png',
+          },
+          stages: [
+            {
+              name: 'sync',
+              id: 3666130245,
+              title: 'sync: skipped',
+              status: {
+                icon: 'status_skipped',
+                text: 'Skipped',
+                label: 'skipped',
+                group: 'skipped',
+                tooltip: 'skipped',
+                has_details: true,
+                details_path: '/gitlab-org/gitlab/-/pipelines/1650805047#sync',
+                illustration: null,
+                favicon:
+                  '/assets/ci_favicons/favicon_status_skipped-0b9c5e543588945e8c4ca57786bbf2d0c56631959c9f853300392d0315be829b.png',
+              },
+              path: '/gitlab-org/gitlab/-/pipelines/1650805047#sync',
+              dropdown_path: '/gitlab-org/gitlab/-/pipelines/1650805047/stage.json?stage=sync',
+            },
+            {
+              name: 'pre-merge',
+              id: 3666130246,
+              title: 'pre-merge: passed',
+              status: {
+                icon: 'status_success',
+                text: 'Passed',
+                label: 'passed',
+                group: 'success',
+                tooltip: 'passed',
+                has_details: true,
+                details_path: '/gitlab-org/gitlab/-/pipelines/1650805047#pre-merge',
+                illustration: null,
+                favicon:
+                  '/assets/ci_favicons/favicon_status_success-8451333011eee8ce9f2ab25dc487fe24a8758c694827a582f17f42b0a90446a2.png',
+              },
+              path: '/gitlab-org/gitlab/-/pipelines/1650805047#pre-merge',
+              dropdown_path: '/gitlab-org/gitlab/-/pipelines/1650805047/stage.json?stage=pre-merge',
+            },
+          ],
+          duration: 16,
+          finished_at: '2025-01-31T19:12:15.781Z',
+          event_type_name: 'Merge train pipeline',
+          has_manual_actions: true,
+          has_scheduled_actions: false,
+        },
+        merge_request: {
+          iid: 179672,
+          path: '/gitlab-org/gitlab/-/merge_requests/179672',
+          title: 'Add post-deploy migration to drop cloud_connector_keys column',
+          source_branch: '515818-drop-cc-keys-setting',
+          source_branch_path: null,
+          target_branch: 'master',
+          target_branch_path: '/gitlab-org/gitlab/-/commits/master',
+        },
+        ref: {
+          name: 'refs/merge-requests/179672/train',
+          path: '/gitlab-org/gitlab/-/commits/refs/merge-requests/179672/train',
+          tag: false,
+          branch: false,
+          merge_request: true,
+        },
+        commit: {
+          id: '4dfd926fa05e75d4f0cb8296d59059979d099120',
+          short_id: '4dfd926f',
+          created_at: '2025-01-31T19:11:42.000+00:00',
+          parent_ids: [
+            '5868f86782a572fbb3e5d62fd228097ecfb5b1e4',
+            'a953059e6d1b315711ac315ba32acce3dfb9499d',
+          ],
+          title: "Merge branch '515818-drop-cc-keys-setting' into 'master' ",
+          message:
+            "Merge branch '515818-drop-cc-keys-setting' into 'master' \n\nAdd post-deploy migration to drop cloud_connector_keys column\n\nSee merge request https://gitlab.com/gitlab-org/gitlab/-/merge_requests/179672\n\nMerged-by: Jarka Košanová <jarka@gitlab.com>\nApproved-by: Jarka Košanová <jarka@gitlab.com>\nCo-authored-by: Matthias Kaeppler <mkaeppler@gitlab.com>",
+          author_name: 'Jarka Košanová',
+          author_email: 'jarka@gitlab.com',
+          authored_date: '2025-01-31T19:11:42.000+00:00',
+          committer_name: 'GitLab',
+          committer_email: 'noreply@gitlab.com',
+          committed_date: '2025-01-31T19:11:42.000+00:00',
+          trailers: {},
+          extended_trailers: {},
+          web_url:
+            'https://gitlab.com/gitlab-org/gitlab/-/commit/4dfd926fa05e75d4f0cb8296d59059979d099120',
+          author: {
+            id: 508743,
+            username: 'jarka',
+            public_email: 'jarka@gitlab.com',
+            name: 'Jarka Košanová',
+            state: 'active',
+            locked: false,
+            avatar_url:
+              'https://secure.gravatar.com/avatar/6ebed9881e76ad4f5cb8fd6a02f379e8fd5133ca78b0207fd81cee2c18528946?s=80&d=identicon',
+            web_url: 'https://gitlab.com/jarka',
+            show_status: false,
+            path: '/jarka',
+          },
+          author_gravatar_url:
+            'https://secure.gravatar.com/avatar/6ebed9881e76ad4f5cb8fd6a02f379e8fd5133ca78b0207fd81cee2c18528946?s=80&d=identicon',
+          commit_url:
+            'https://gitlab.com/gitlab-org/gitlab/-/commit/4dfd926fa05e75d4f0cb8296d59059979d099120',
+          commit_path: '/gitlab-org/gitlab/-/commit/4dfd926fa05e75d4f0cb8296d59059979d099120',
+        },
+        merge_request_event_type: 'merge_train',
+        source_sha: 'a953059e6d1b315711ac315ba32acce3dfb9499d',
+        target_sha: '5868f86782a572fbb3e5d62fd228097ecfb5b1e4',
+        cancel_path: '/gitlab-org/gitlab/-/pipelines/1650805047/cancel',
+        failed_builds_count: 0,
+        pipeline_schedule: null,
+        project: {
+          id: 278964,
+          name: 'GitLab',
+          full_path: '/gitlab-org/gitlab',
+          full_name: 'GitLab.org / GitLab',
+          refs_url: '/gitlab-org/gitlab/refs',
+          forked: false,
+        },
+        triggered_by: null,
+        triggered: [],
+      },
+      {
+        id: 1650722033,
+        iid: 3751563,
+        user: {
+          id: 1786152,
+          username: 'gitlab-bot',
+          public_email: '',
+          name: '🤖 GitLab Bot 🤖',
+          state: 'active',
+          locked: false,
+          avatar_url: 'https://gitlab.com/uploads/-/system/user/avatar/1786152/avatar.png',
+          web_url: 'https://gitlab.com/gitlab-bot',
+          show_status: false,
+          path: '/gitlab-bot',
+        },
+        active: false,
+        name: 'Ruby 3.3.7 MR [tier:3, types:qa,qa-gdk,code, opts:mr-approved,run-e2e-omnibus-once]',
+        source: 'merge_request_event',
+        created_at: '2025-01-31T17:52:06.930Z',
+        updated_at: '2025-01-31T19:13:11.856Z',
+        path: '/gitlab-org/gitlab/-/pipelines/1650722033',
+        flags: {
+          stuck: false,
+          auto_devops: false,
+          merge_request: true,
+          yaml_errors: false,
+          retryable: false,
+          cancelable: true,
+          failure_reason: false,
+          detached_merge_request_pipeline: false,
+          merge_request_pipeline: true,
+          merged_result_pipeline: true,
+          type: 'merged_result',
+          merge_train_pipeline: false,
+          latest: false,
+        },
+        details: {
+          status: {
+            icon: 'status_success',
+            text: 'Passed',
+            label: 'passed',
+            group: 'success',
+            tooltip: 'passed',
+            has_details: true,
+            details_path: '/gitlab-org/gitlab/-/pipelines/1650722033',
+            illustration: null,
+            favicon:
+              '/assets/ci_favicons/favicon_status_success-8451333011eee8ce9f2ab25dc487fe24a8758c694827a582f17f42b0a90446a2.png',
+          },
+          stages: [
+            {
+              name: 'sync',
+              id: 3665933265,
+              title: 'sync: passed',
+              status: {
+                icon: 'status_success',
+                text: 'Passed',
+                label: 'passed',
+                group: 'success',
+                tooltip: 'passed',
+                has_details: true,
+                details_path: '/gitlab-org/gitlab/-/pipelines/1650722033#sync',
+                illustration: null,
+                favicon:
+                  '/assets/ci_favicons/favicon_status_success-8451333011eee8ce9f2ab25dc487fe24a8758c694827a582f17f42b0a90446a2.png',
+              },
+              path: '/gitlab-org/gitlab/-/pipelines/1650722033#sync',
+              dropdown_path: '/gitlab-org/gitlab/-/pipelines/1650722033/stage.json?stage=sync',
+            },
+            {
+              name: 'preflight',
+              id: 3665933267,
+              title: 'preflight: passed',
+              status: {
+                icon: 'status_success',
+                text: 'Passed',
+                label: 'passed',
+                group: 'success',
+                tooltip: 'passed',
+                has_details: true,
+                details_path: '/gitlab-org/gitlab/-/pipelines/1650722033#preflight',
+                illustration: null,
+                favicon:
+                  '/assets/ci_favicons/favicon_status_success-8451333011eee8ce9f2ab25dc487fe24a8758c694827a582f17f42b0a90446a2.png',
+              },
+              path: '/gitlab-org/gitlab/-/pipelines/1650722033#preflight',
+              dropdown_path: '/gitlab-org/gitlab/-/pipelines/1650722033/stage.json?stage=preflight',
+            },
+            {
+              name: 'prepare',
+              id: 3665933273,
+              title: 'prepare: passed',
+              status: {
+                icon: 'status_success',
+                text: 'Passed',
+                label: 'passed',
+                group: 'success',
+                tooltip: 'passed',
+                has_details: true,
+                details_path: '/gitlab-org/gitlab/-/pipelines/1650722033#prepare',
+                illustration: null,
+                favicon:
+                  '/assets/ci_favicons/favicon_status_success-8451333011eee8ce9f2ab25dc487fe24a8758c694827a582f17f42b0a90446a2.png',
+              },
+              path: '/gitlab-org/gitlab/-/pipelines/1650722033#prepare',
+              dropdown_path: '/gitlab-org/gitlab/-/pipelines/1650722033/stage.json?stage=prepare',
+            },
+            {
+              name: 'build-images',
+              id: 3665933281,
+              title: 'build-images: passed',
+              status: {
+                icon: 'status_success',
+                text: 'Passed',
+                label: 'passed',
+                group: 'success',
+                tooltip: 'passed',
+                has_details: true,
+                details_path: '/gitlab-org/gitlab/-/pipelines/1650722033#build-images',
+                illustration: null,
+                favicon:
+                  '/assets/ci_favicons/favicon_status_success-8451333011eee8ce9f2ab25dc487fe24a8758c694827a582f17f42b0a90446a2.png',
+              },
+              path: '/gitlab-org/gitlab/-/pipelines/1650722033#build-images',
+              dropdown_path:
+                '/gitlab-org/gitlab/-/pipelines/1650722033/stage.json?stage=build-images',
+            },
+            {
+              name: 'fixtures',
+              id: 3665933285,
+              title: 'fixtures: passed',
+              status: {
+                icon: 'status_success',
+                text: 'Passed',
+                label: 'passed',
+                group: 'success',
+                tooltip: 'passed',
+                has_details: true,
+                details_path: '/gitlab-org/gitlab/-/pipelines/1650722033#fixtures',
+                illustration: null,
+                favicon:
+                  '/assets/ci_favicons/favicon_status_success-8451333011eee8ce9f2ab25dc487fe24a8758c694827a582f17f42b0a90446a2.png',
+              },
+              path: '/gitlab-org/gitlab/-/pipelines/1650722033#fixtures',
+              dropdown_path: '/gitlab-org/gitlab/-/pipelines/1650722033/stage.json?stage=fixtures',
+            },
+            {
+              name: 'lint',
+              id: 3665933293,
+              title: 'lint: passed',
+              status: {
+                icon: 'status_success',
+                text: 'Passed',
+                label: 'passed',
+                group: 'success',
+                tooltip: 'passed',
+                has_details: true,
+                details_path: '/gitlab-org/gitlab/-/pipelines/1650722033#lint',
+                illustration: null,
+                favicon:
+                  '/assets/ci_favicons/favicon_status_success-8451333011eee8ce9f2ab25dc487fe24a8758c694827a582f17f42b0a90446a2.png',
+              },
+              path: '/gitlab-org/gitlab/-/pipelines/1650722033#lint',
+              dropdown_path: '/gitlab-org/gitlab/-/pipelines/1650722033/stage.json?stage=lint',
+            },
+            {
+              name: 'test-frontend',
+              id: 3665933299,
+              title: 'test-frontend: passed',
+              status: {
+                icon: 'status_success',
+                text: 'Passed',
+                label: 'passed',
+                group: 'success',
+                tooltip: 'passed',
+                has_details: true,
+                details_path: '/gitlab-org/gitlab/-/pipelines/1650722033#test-frontend',
+                illustration: null,
+                favicon:
+                  '/assets/ci_favicons/favicon_status_success-8451333011eee8ce9f2ab25dc487fe24a8758c694827a582f17f42b0a90446a2.png',
+              },
+              path: '/gitlab-org/gitlab/-/pipelines/1650722033#test-frontend',
+              dropdown_path:
+                '/gitlab-org/gitlab/-/pipelines/1650722033/stage.json?stage=test-frontend',
+            },
+            {
+              name: 'test',
+              id: 3665933324,
+              title: 'test: passed',
+              status: {
+                icon: 'status_success',
+                text: 'Passed',
+                label: 'passed',
+                group: 'success',
+                tooltip: 'passed',
+                has_details: true,
+                details_path: '/gitlab-org/gitlab/-/pipelines/1650722033#test',
+                illustration: null,
+                favicon:
+                  '/assets/ci_favicons/favicon_status_success-8451333011eee8ce9f2ab25dc487fe24a8758c694827a582f17f42b0a90446a2.png',
+              },
+              path: '/gitlab-org/gitlab/-/pipelines/1650722033#test',
+              dropdown_path: '/gitlab-org/gitlab/-/pipelines/1650722033/stage.json?stage=test',
+            },
+            {
+              name: 'post-test',
+              id: 3665933852,
+              title: 'post-test: passed',
+              status: {
+                icon: 'status_success',
+                text: 'Passed',
+                label: 'passed',
+                group: 'success',
+                tooltip: 'passed',
+                has_details: true,
+                details_path: '/gitlab-org/gitlab/-/pipelines/1650722033#post-test',
+                illustration: null,
+                favicon:
+                  '/assets/ci_favicons/favicon_status_success-8451333011eee8ce9f2ab25dc487fe24a8758c694827a582f17f42b0a90446a2.png',
+              },
+              path: '/gitlab-org/gitlab/-/pipelines/1650722033#post-test',
+              dropdown_path: '/gitlab-org/gitlab/-/pipelines/1650722033/stage.json?stage=post-test',
+            },
+            {
+              name: 'qa',
+              id: 3665933863,
+              title: 'qa: passed',
+              status: {
+                icon: 'status_success',
+                text: 'Passed',
+                label: 'passed',
+                group: 'success',
+                tooltip: 'passed',
+                has_details: true,
+                details_path: '/gitlab-org/gitlab/-/pipelines/1650722033#qa',
+                illustration: null,
+                favicon:
+                  '/assets/ci_favicons/favicon_status_success-8451333011eee8ce9f2ab25dc487fe24a8758c694827a582f17f42b0a90446a2.png',
+              },
+              path: '/gitlab-org/gitlab/-/pipelines/1650722033#qa',
+              dropdown_path: '/gitlab-org/gitlab/-/pipelines/1650722033/stage.json?stage=qa',
+            },
+            {
+              name: 'post-qa',
+              id: 3665933868,
+              title: 'post-qa: skipped',
+              status: {
+                icon: 'status_skipped',
+                text: 'Skipped',
+                label: 'skipped',
+                group: 'skipped',
+                tooltip: 'skipped',
+                has_details: true,
+                details_path: '/gitlab-org/gitlab/-/pipelines/1650722033#post-qa',
+                illustration: null,
+                favicon:
+                  '/assets/ci_favicons/favicon_status_skipped-0b9c5e543588945e8c4ca57786bbf2d0c56631959c9f853300392d0315be829b.png',
+              },
+              path: '/gitlab-org/gitlab/-/pipelines/1650722033#post-qa',
+              dropdown_path: '/gitlab-org/gitlab/-/pipelines/1650722033/stage.json?stage=post-qa',
+            },
+            {
+              name: 'pages',
+              id: 3665933870,
+              title: 'pages: passed',
+              status: {
+                icon: 'status_success',
+                text: 'Passed',
+                label: 'passed',
+                group: 'success',
+                tooltip: 'passed',
+                has_details: true,
+                details_path: '/gitlab-org/gitlab/-/pipelines/1650722033#pages',
+                illustration: null,
+                favicon:
+                  '/assets/ci_favicons/favicon_status_success-8451333011eee8ce9f2ab25dc487fe24a8758c694827a582f17f42b0a90446a2.png',
+              },
+              path: '/gitlab-org/gitlab/-/pipelines/1650722033#pages',
+              dropdown_path: '/gitlab-org/gitlab/-/pipelines/1650722033/stage.json?stage=pages',
+            },
+            {
+              name: 'benchmark',
+              id: 3665933871,
+              title: 'benchmark: skipped',
+              status: {
+                icon: 'status_skipped',
+                text: 'Skipped',
+                label: 'skipped',
+                group: 'skipped',
+                tooltip: 'skipped',
+                has_details: true,
+                details_path: '/gitlab-org/gitlab/-/pipelines/1650722033#benchmark',
+                illustration: null,
+                favicon:
+                  '/assets/ci_favicons/favicon_status_skipped-0b9c5e543588945e8c4ca57786bbf2d0c56631959c9f853300392d0315be829b.png',
+              },
+              path: '/gitlab-org/gitlab/-/pipelines/1650722033#benchmark',
+              dropdown_path: '/gitlab-org/gitlab/-/pipelines/1650722033/stage.json?stage=benchmark',
+            },
+          ],
+          duration: 4767,
+          finished_at: '2025-01-31T19:13:11.822Z',
+          event_type_name: 'Merged results pipeline',
+          has_manual_actions: true,
+          has_scheduled_actions: false,
+        },
+        merge_request: {
+          iid: 179672,
+          path: '/gitlab-org/gitlab/-/merge_requests/179672',
+          title: 'Add post-deploy migration to drop cloud_connector_keys column',
+          source_branch: '515818-drop-cc-keys-setting',
+          source_branch_path: null,
+          target_branch: 'master',
+          target_branch_path: '/gitlab-org/gitlab/-/commits/master',
+        },
+        ref: {
+          name: 'refs/merge-requests/179672/merge',
+          path: '/gitlab-org/gitlab/-/commits/refs/merge-requests/179672/merge',
+          tag: false,
+          branch: false,
+          merge_request: true,
+        },
+        commit: {
+          id: '5d7b305ce19efe1900674e202b673d70618e322a',
+          short_id: '5d7b305c',
+          created_at: '2025-01-31T17:50:15.000+00:00',
+          parent_ids: [
+            '020cd614ab80af8ec77c41c15035fa3991767468',
+            'a953059e6d1b315711ac315ba32acce3dfb9499d',
+          ],
+          title: "Merge branch '515818-drop-cc-keys-setting' into 'master' ",
+          message:
+            "Merge branch '515818-drop-cc-keys-setting' into 'master' \n\nAdd post-deploy migration to drop cloud_connector_keys column\n\nSee merge request https://gitlab.com/gitlab-org/gitlab/-/merge_requests/179672\n\nMerged-by: Matthias Käppler <mkaeppler@gitlab.com>\n",
+          author_name: 'Matthias Käppler',
+          author_email: 'mkaeppler@gitlab.com',
+          authored_date: '2025-01-31T17:50:15.000+00:00',
+          committer_name: 'GitLab',
+          committer_email: 'noreply@gitlab.com',
+          committed_date: '2025-01-31T17:50:15.000+00:00',
+          trailers: {},
+          extended_trailers: {},
+          web_url:
+            'https://gitlab.com/gitlab-org/gitlab/-/commit/5d7b305ce19efe1900674e202b673d70618e322a',
+          author: {
+            id: 4713264,
+            username: 'mkaeppler',
+            public_email: 'mkaeppler@gitlab.com',
+            name: 'Matthias Käppler',
+            state: 'active',
+            locked: false,
+            avatar_url: 'https://gitlab.com/uploads/-/system/user/avatar/4713264/avatar.png',
+            web_url: 'https://gitlab.com/mkaeppler',
+            show_status: false,
+            path: '/mkaeppler',
+          },
+          author_gravatar_url:
+            'https://secure.gravatar.com/avatar/3eb9cdc66ee7016a998ef09cdcc7486ddfa897956b5498b7acbd195813603713?s=80&d=identicon',
+          commit_url:
+            'https://gitlab.com/gitlab-org/gitlab/-/commit/5d7b305ce19efe1900674e202b673d70618e322a',
+          commit_path: '/gitlab-org/gitlab/-/commit/5d7b305ce19efe1900674e202b673d70618e322a',
+        },
+        merge_request_event_type: 'merged_result',
+        source_sha: 'a953059e6d1b315711ac315ba32acce3dfb9499d',
+        target_sha: '020cd614ab80af8ec77c41c15035fa3991767468',
+        cancel_path: '/gitlab-org/gitlab/-/pipelines/1650722033/cancel',
+        failed_builds_count: 0,
+        pipeline_schedule: null,
+        project: {
+          id: 278964,
+          name: 'GitLab',
+          full_path: '/gitlab-org/gitlab',
+          full_name: 'GitLab.org / GitLab',
+          refs_url: '/gitlab-org/gitlab/refs',
+          forked: false,
+        },
+        triggered_by: null,
+        triggered: [
+          {
+            id: 1650740537,
+            iid: 3751634,
+            active: false,
+            name: 'E2E CNG',
+            source: 'parent_pipeline',
+            user: {
+              id: 1786152,
+              username: 'gitlab-bot',
+              public_email: '',
+              name: '🤖 GitLab Bot 🤖',
+              state: 'active',
+              locked: false,
+              avatar_url: 'https://gitlab.com/uploads/-/system/user/avatar/1786152/avatar.png',
+              web_url: 'https://gitlab.com/gitlab-bot',
+              show_status: false,
+              path: '/gitlab-bot',
+            },
+            source_job: {
+              name: 'e2e:test-on-cng',
+              retried: false,
+            },
+            path: '/gitlab-org/gitlab/-/pipelines/1650740537',
+            details: {
+              status: {
+                icon: 'status_success',
+                text: 'Passed',
+                label: 'passed',
+                group: 'success',
+                tooltip: 'passed',
+                has_details: true,
+                details_path: '/gitlab-org/gitlab/-/pipelines/1650740537',
+                illustration: null,
+                favicon:
+                  '/assets/ci_favicons/favicon_status_success-8451333011eee8ce9f2ab25dc487fe24a8758c694827a582f17f42b0a90446a2.png',
+              },
+            },
+            project: {
+              id: 278964,
+              name: 'GitLab',
+              full_path: '/gitlab-org/gitlab',
+              full_name: 'GitLab.org / GitLab',
+              refs_url: '/gitlab-org/gitlab/refs',
+              forked: false,
+            },
+          },
+          {
+            id: 1650771573,
+            iid: 31885,
+            active: false,
+            name: null,
+            source: 'pipeline',
+            user: {
+              id: 1786152,
+              username: 'gitlab-bot',
+              public_email: '',
+              name: '🤖 GitLab Bot 🤖',
+              state: 'active',
+              locked: false,
+              avatar_url: 'https://gitlab.com/uploads/-/system/user/avatar/1786152/avatar.png',
+              web_url: 'https://gitlab.com/gitlab-bot',
+              show_status: false,
+              path: '/gitlab-bot',
+            },
+            source_job: {
+              name: 'e2e:test-product-analytics',
+              retried: false,
+            },
+            path: '/gitlab-org/analytics-section/product-analytics/product-analytics-devkit-mirror/-/pipelines/1650771573',
+            details: {
+              status: {
+                icon: 'status_success',
+                text: 'Passed',
+                label: 'passed',
+                group: 'success',
+                tooltip: 'passed',
+                has_details: true,
+                details_path:
+                  '/gitlab-org/analytics-section/product-analytics/product-analytics-devkit-mirror/-/pipelines/1650771573',
+                illustration: null,
+                favicon:
+                  '/assets/ci_favicons/favicon_status_success-8451333011eee8ce9f2ab25dc487fe24a8758c694827a582f17f42b0a90446a2.png',
+              },
+            },
+            project: {
+              id: 61092214,
+              name: 'Product Analytics devkit - mirror',
+              full_path:
+                '/gitlab-org/analytics-section/product-analytics/product-analytics-devkit-mirror',
+              full_name:
+                'GitLab.org / Analytics Section / product-analytics / Product Analytics devkit - mirror',
+              refs_url:
+                '/gitlab-org/analytics-section/product-analytics/product-analytics-devkit-mirror/refs',
+              forked: null,
+            },
+          },
+          {
+            id: 1650771550,
+            iid: 3751856,
+            active: false,
+            name: 'E2E GDK',
+            source: 'parent_pipeline',
+            user: {
+              id: 1786152,
+              username: 'gitlab-bot',
+              public_email: '',
+              name: '🤖 GitLab Bot 🤖',
+              state: 'active',
+              locked: false,
+              avatar_url: 'https://gitlab.com/uploads/-/system/user/avatar/1786152/avatar.png',
+              web_url: 'https://gitlab.com/gitlab-bot',
+              show_status: false,
+              path: '/gitlab-bot',
+            },
+            source_job: {
+              name: 'e2e:test-on-gdk',
+              retried: false,
+            },
+            path: '/gitlab-org/gitlab/-/pipelines/1650771550',
+            details: {
+              status: {
+                icon: 'status_success',
+                text: 'Passed',
+                label: 'passed',
+                group: 'success',
+                tooltip: 'passed',
+                has_details: true,
+                details_path: '/gitlab-org/gitlab/-/pipelines/1650771550',
+                illustration: null,
+                favicon:
+                  '/assets/ci_favicons/favicon_status_success-8451333011eee8ce9f2ab25dc487fe24a8758c694827a582f17f42b0a90446a2.png',
+              },
+            },
+            project: {
+              id: 278964,
+              name: 'GitLab',
+              full_path: '/gitlab-org/gitlab',
+              full_name: 'GitLab.org / GitLab',
+              refs_url: '/gitlab-org/gitlab/refs',
+              forked: false,
+            },
+          },
+        ],
+      },
+      {
+        id: 1648194558,
+        iid: 3743188,
+        user: {
+          id: 4713264,
+          username: 'mkaeppler',
+          public_email: 'mkaeppler@gitlab.com',
+          name: 'Matthias Käppler',
+          state: 'active',
+          locked: false,
+          avatar_url: 'https://gitlab.com/uploads/-/system/user/avatar/4713264/avatar.png',
+          web_url: 'https://gitlab.com/mkaeppler',
+          show_status: false,
+          path: '/mkaeppler',
+        },
+        active: false,
+        name: 'Ruby 3.3.6 MR [tier:1, types:code,rspec-predictive, opts:]',
+        source: 'merge_request_event',
+        created_at: '2025-01-30T09:56:44.304Z',
+        updated_at: '2025-01-30T13:17:19.181Z',
+        path: '/gitlab-org/gitlab/-/pipelines/1648194558',
+        flags: {
+          stuck: false,
+          auto_devops: false,
+          merge_request: true,
+          yaml_errors: false,
+          retryable: false,
+          cancelable: true,
+          failure_reason: false,
+          detached_merge_request_pipeline: false,
+          merge_request_pipeline: true,
+          merged_result_pipeline: true,
+          type: 'merged_result',
+          merge_train_pipeline: false,
+          latest: false,
+        },
+        details: {
+          status: {
+            icon: 'status_success',
+            text: 'Passed',
+            label: 'passed',
+            group: 'success',
+            tooltip: 'passed',
+            has_details: true,
+            details_path: '/gitlab-org/gitlab/-/pipelines/1648194558',
+            illustration: null,
+            favicon:
+              '/assets/ci_favicons/favicon_status_success-8451333011eee8ce9f2ab25dc487fe24a8758c694827a582f17f42b0a90446a2.png',
+          },
+          stages: [
+            {
+              name: 'sync',
+              id: 3659895265,
+              title: 'sync: passed',
+              status: {
+                icon: 'status_success',
+                text: 'Passed',
+                label: 'passed',
+                group: 'success',
+                tooltip: 'passed',
+                has_details: true,
+                details_path: '/gitlab-org/gitlab/-/pipelines/1648194558#sync',
+                illustration: null,
+                favicon:
+                  '/assets/ci_favicons/favicon_status_success-8451333011eee8ce9f2ab25dc487fe24a8758c694827a582f17f42b0a90446a2.png',
+              },
+              path: '/gitlab-org/gitlab/-/pipelines/1648194558#sync',
+              dropdown_path: '/gitlab-org/gitlab/-/pipelines/1648194558/stage.json?stage=sync',
+            },
+            {
+              name: 'preflight',
+              id: 3659895279,
+              title: 'preflight: passed',
+              status: {
+                icon: 'status_success',
+                text: 'Passed',
+                label: 'passed',
+                group: 'success',
+                tooltip: 'passed',
+                has_details: true,
+                details_path: '/gitlab-org/gitlab/-/pipelines/1648194558#preflight',
+                illustration: null,
+                favicon:
+                  '/assets/ci_favicons/favicon_status_success-8451333011eee8ce9f2ab25dc487fe24a8758c694827a582f17f42b0a90446a2.png',
+              },
+              path: '/gitlab-org/gitlab/-/pipelines/1648194558#preflight',
+              dropdown_path: '/gitlab-org/gitlab/-/pipelines/1648194558/stage.json?stage=preflight',
+            },
+            {
+              name: 'prepare',
+              id: 3659895333,
+              title: 'prepare: passed',
+              status: {
+                icon: 'status_success',
+                text: 'Passed',
+                label: 'passed',
+                group: 'success',
+                tooltip: 'passed',
+                has_details: true,
+                details_path: '/gitlab-org/gitlab/-/pipelines/1648194558#prepare',
+                illustration: null,
+                favicon:
+                  '/assets/ci_favicons/favicon_status_success-8451333011eee8ce9f2ab25dc487fe24a8758c694827a582f17f42b0a90446a2.png',
+              },
+              path: '/gitlab-org/gitlab/-/pipelines/1648194558#prepare',
+              dropdown_path: '/gitlab-org/gitlab/-/pipelines/1648194558/stage.json?stage=prepare',
+            },
+            {
+              name: 'fixtures',
+              id: 3659895386,
+              title: 'fixtures: passed',
+              status: {
+                icon: 'status_success',
+                text: 'Passed',
+                label: 'passed',
+                group: 'success',
+                tooltip: 'passed',
+                has_details: true,
+                details_path: '/gitlab-org/gitlab/-/pipelines/1648194558#fixtures',
+                illustration: null,
+                favicon:
+                  '/assets/ci_favicons/favicon_status_success-8451333011eee8ce9f2ab25dc487fe24a8758c694827a582f17f42b0a90446a2.png',
+              },
+              path: '/gitlab-org/gitlab/-/pipelines/1648194558#fixtures',
+              dropdown_path: '/gitlab-org/gitlab/-/pipelines/1648194558/stage.json?stage=fixtures',
+            },
+            {
+              name: 'lint',
+              id: 3659895394,
+              title: 'lint: passed',
+              status: {
+                icon: 'status_success',
+                text: 'Passed',
+                label: 'passed',
+                group: 'success',
+                tooltip: 'passed',
+                has_details: true,
+                details_path: '/gitlab-org/gitlab/-/pipelines/1648194558#lint',
+                illustration: null,
+                favicon:
+                  '/assets/ci_favicons/favicon_status_success-8451333011eee8ce9f2ab25dc487fe24a8758c694827a582f17f42b0a90446a2.png',
+              },
+              path: '/gitlab-org/gitlab/-/pipelines/1648194558#lint',
+              dropdown_path: '/gitlab-org/gitlab/-/pipelines/1648194558/stage.json?stage=lint',
+            },
+            {
+              name: 'test-frontend',
+              id: 3659895443,
+              title: 'test-frontend: passed',
+              status: {
+                icon: 'status_success',
+                text: 'Passed',
+                label: 'passed',
+                group: 'success',
+                tooltip: 'passed',
+                has_details: true,
+                details_path: '/gitlab-org/gitlab/-/pipelines/1648194558#test-frontend',
+                illustration: null,
+                favicon:
+                  '/assets/ci_favicons/favicon_status_success-8451333011eee8ce9f2ab25dc487fe24a8758c694827a582f17f42b0a90446a2.png',
+              },
+              path: '/gitlab-org/gitlab/-/pipelines/1648194558#test-frontend',
+              dropdown_path:
+                '/gitlab-org/gitlab/-/pipelines/1648194558/stage.json?stage=test-frontend',
+            },
+            {
+              name: 'test',
+              id: 3659895459,
+              title: 'test: passed',
+              status: {
+                icon: 'status_success',
+                text: 'Passed',
+                label: 'passed',
+                group: 'success',
+                tooltip: 'passed',
+                has_details: true,
+                details_path: '/gitlab-org/gitlab/-/pipelines/1648194558#test',
+                illustration: null,
+                favicon:
+                  '/assets/ci_favicons/favicon_status_success-8451333011eee8ce9f2ab25dc487fe24a8758c694827a582f17f42b0a90446a2.png',
+              },
+              path: '/gitlab-org/gitlab/-/pipelines/1648194558#test',
+              dropdown_path: '/gitlab-org/gitlab/-/pipelines/1648194558/stage.json?stage=test',
+            },
+            {
+              name: 'post-test',
+              id: 3659895696,
+              title: 'post-test: passed',
+              status: {
+                icon: 'status_success',
+                text: 'Passed',
+                label: 'passed',
+                group: 'success',
+                tooltip: 'passed',
+                has_details: true,
+                details_path: '/gitlab-org/gitlab/-/pipelines/1648194558#post-test',
+                illustration: null,
+                favicon:
+                  '/assets/ci_favicons/favicon_status_success-8451333011eee8ce9f2ab25dc487fe24a8758c694827a582f17f42b0a90446a2.png',
+              },
+              path: '/gitlab-org/gitlab/-/pipelines/1648194558#post-test',
+              dropdown_path: '/gitlab-org/gitlab/-/pipelines/1648194558/stage.json?stage=post-test',
+            },
+            {
+              name: 'benchmark',
+              id: 3659895706,
+              title: 'benchmark: skipped',
+              status: {
+                icon: 'status_skipped',
+                text: 'Skipped',
+                label: 'skipped',
+                group: 'skipped',
+                tooltip: 'skipped',
+                has_details: true,
+                details_path: '/gitlab-org/gitlab/-/pipelines/1648194558#benchmark',
+                illustration: null,
+                favicon:
+                  '/assets/ci_favicons/favicon_status_skipped-0b9c5e543588945e8c4ca57786bbf2d0c56631959c9f853300392d0315be829b.png',
+              },
+              path: '/gitlab-org/gitlab/-/pipelines/1648194558#benchmark',
+              dropdown_path: '/gitlab-org/gitlab/-/pipelines/1648194558/stage.json?stage=benchmark',
+            },
+          ],
+          duration: 4000,
+          finished_at: '2025-01-30T13:17:19.158Z',
+          event_type_name: 'Merged results pipeline',
+          has_manual_actions: true,
+          has_scheduled_actions: false,
+        },
+        merge_request: {
+          iid: 179672,
+          path: '/gitlab-org/gitlab/-/merge_requests/179672',
+          title: 'Add post-deploy migration to drop cloud_connector_keys column',
+          source_branch: '515818-drop-cc-keys-setting',
+          source_branch_path: null,
+          target_branch: 'master',
+          target_branch_path: '/gitlab-org/gitlab/-/commits/master',
+        },
+        ref: {
+          name: 'refs/merge-requests/179672/merge',
+          path: '/gitlab-org/gitlab/-/commits/refs/merge-requests/179672/merge',
+          tag: false,
+          branch: false,
+          merge_request: true,
+        },
+        commit: {
+          id: '7f613263f3c44e9656dc19e483e3dbeb3dc1af07',
+          short_id: '7f613263',
+          created_at: '2025-01-30T09:56:07.000+00:00',
+          parent_ids: [
+            '05e149f10d5a411ef6f8529d7ee5ebb6847877bc',
+            'a953059e6d1b315711ac315ba32acce3dfb9499d',
+          ],
+          title: "Merge branch '515818-drop-cc-keys-setting' into 'master' ",
+          message:
+            "Merge branch '515818-drop-cc-keys-setting' into 'master' \n\nAdd post-deploy migration to drop cloud_connector_keys column\n\nSee merge request https://gitlab.com/gitlab-org/gitlab/-/merge_requests/179672\n\nMerged-by: Matthias Käppler <mkaeppler@gitlab.com>\n",
+          author_name: 'Matthias Käppler',
+          author_email: 'mkaeppler@gitlab.com',
+          authored_date: '2025-01-30T09:56:07.000+00:00',
+          committer_name: 'GitLab',
+          committer_email: 'noreply@gitlab.com',
+          committed_date: '2025-01-30T09:56:07.000+00:00',
+          trailers: {},
+          extended_trailers: {},
+          web_url:
+            'https://gitlab.com/gitlab-org/gitlab/-/commit/7f613263f3c44e9656dc19e483e3dbeb3dc1af07',
+          author: {
+            id: 4713264,
+            username: 'mkaeppler',
+            public_email: 'mkaeppler@gitlab.com',
+            name: 'Matthias Käppler',
+            state: 'active',
+            locked: false,
+            avatar_url: 'https://gitlab.com/uploads/-/system/user/avatar/4713264/avatar.png',
+            web_url: 'https://gitlab.com/mkaeppler',
+            show_status: false,
+            path: '/mkaeppler',
+          },
+          author_gravatar_url:
+            'https://secure.gravatar.com/avatar/3eb9cdc66ee7016a998ef09cdcc7486ddfa897956b5498b7acbd195813603713?s=80&d=identicon',
+          commit_url:
+            'https://gitlab.com/gitlab-org/gitlab/-/commit/7f613263f3c44e9656dc19e483e3dbeb3dc1af07',
+          commit_path: '/gitlab-org/gitlab/-/commit/7f613263f3c44e9656dc19e483e3dbeb3dc1af07',
+        },
+        merge_request_event_type: 'merged_result',
+        source_sha: 'a953059e6d1b315711ac315ba32acce3dfb9499d',
+        target_sha: '05e149f10d5a411ef6f8529d7ee5ebb6847877bc',
+        cancel_path: '/gitlab-org/gitlab/-/pipelines/1648194558/cancel',
+        failed_builds_count: 0,
+        pipeline_schedule: null,
+        project: {
+          id: 278964,
+          name: 'GitLab',
+          full_path: '/gitlab-org/gitlab',
+          full_name: 'GitLab.org / GitLab',
+          refs_url: '/gitlab-org/gitlab/refs',
+          forked: false,
+        },
+        triggered_by: null,
+        triggered: [
+          {
+            id: 1648216750,
+            iid: 3743358,
+            active: false,
+            name: null,
+            source: 'parent_pipeline',
+            user: {
+              id: 4713264,
+              username: 'mkaeppler',
+              public_email: 'mkaeppler@gitlab.com',
+              name: 'Matthias Käppler',
+              state: 'active',
+              locked: false,
+              avatar_url: 'https://gitlab.com/uploads/-/system/user/avatar/4713264/avatar.png',
+              web_url: 'https://gitlab.com/mkaeppler',
+              show_status: false,
+              path: '/mkaeppler',
+            },
+            source_job: {
+              name: 'rspec:predictive:trigger single-db',
+              retried: false,
+            },
+            path: '/gitlab-org/gitlab/-/pipelines/1648216750',
+            details: {
+              status: {
+                icon: 'status_success',
+                text: 'Passed',
+                label: 'passed',
+                group: 'success',
+                tooltip: 'passed',
+                has_details: true,
+                details_path: '/gitlab-org/gitlab/-/pipelines/1648216750',
+                illustration: null,
+                favicon:
+                  '/assets/ci_favicons/favicon_status_success-8451333011eee8ce9f2ab25dc487fe24a8758c694827a582f17f42b0a90446a2.png',
+              },
+            },
+            project: {
+              id: 278964,
+              name: 'GitLab',
+              full_path: '/gitlab-org/gitlab',
+              full_name: 'GitLab.org / GitLab',
+              refs_url: '/gitlab-org/gitlab/refs',
+              forked: false,
+            },
+          },
+          {
+            id: 1648216747,
+            iid: 3743356,
+            active: false,
+            name: null,
+            source: 'parent_pipeline',
+            user: {
+              id: 4713264,
+              username: 'mkaeppler',
+              public_email: 'mkaeppler@gitlab.com',
+              name: 'Matthias Käppler',
+              state: 'active',
+              locked: false,
+              avatar_url: 'https://gitlab.com/uploads/-/system/user/avatar/4713264/avatar.png',
+              web_url: 'https://gitlab.com/mkaeppler',
+              show_status: false,
+              path: '/mkaeppler',
+            },
+            source_job: {
+              name: 'rspec-ee:predictive:trigger',
+              retried: false,
+            },
+            path: '/gitlab-org/gitlab/-/pipelines/1648216747',
+            details: {
+              status: {
+                icon: 'status_success',
+                text: 'Passed',
+                label: 'passed',
+                group: 'success',
+                tooltip: 'passed',
+                has_details: true,
+                details_path: '/gitlab-org/gitlab/-/pipelines/1648216747',
+                illustration: null,
+                favicon:
+                  '/assets/ci_favicons/favicon_status_success-8451333011eee8ce9f2ab25dc487fe24a8758c694827a582f17f42b0a90446a2.png',
+              },
+            },
+            project: {
+              id: 278964,
+              name: 'GitLab',
+              full_path: '/gitlab-org/gitlab',
+              full_name: 'GitLab.org / GitLab',
+              refs_url: '/gitlab-org/gitlab/refs',
+              forked: false,
+            },
+          },
+          {
+            id: 1648216752,
+            iid: 3743359,
+            active: false,
+            name: null,
+            source: 'parent_pipeline',
+            user: {
+              id: 4713264,
+              username: 'mkaeppler',
+              public_email: 'mkaeppler@gitlab.com',
+              name: 'Matthias Käppler',
+              state: 'active',
+              locked: false,
+              avatar_url: 'https://gitlab.com/uploads/-/system/user/avatar/4713264/avatar.png',
+              web_url: 'https://gitlab.com/mkaeppler',
+              show_status: false,
+              path: '/mkaeppler',
+            },
+            source_job: {
+              name: 'rspec:predictive:trigger single-db-ci-connection',
+              retried: false,
+            },
+            path: '/gitlab-org/gitlab/-/pipelines/1648216752',
+            details: {
+              status: {
+                icon: 'status_success',
+                text: 'Passed',
+                label: 'passed',
+                group: 'success',
+                tooltip: 'passed',
+                has_details: true,
+                details_path: '/gitlab-org/gitlab/-/pipelines/1648216752',
+                illustration: null,
+                favicon:
+                  '/assets/ci_favicons/favicon_status_success-8451333011eee8ce9f2ab25dc487fe24a8758c694827a582f17f42b0a90446a2.png',
+              },
+            },
+            project: {
+              id: 278964,
+              name: 'GitLab',
+              full_path: '/gitlab-org/gitlab',
+              full_name: 'GitLab.org / GitLab',
+              refs_url: '/gitlab-org/gitlab/refs',
+              forked: false,
+            },
+          },
+          {
+            id: 1648197719,
+            iid: 1468815,
+            active: false,
+            name: 'Ruby 3.3.6 as-if-foss',
+            source: 'pipeline',
+            user: {
+              id: 4713264,
+              username: 'mkaeppler',
+              public_email: 'mkaeppler@gitlab.com',
+              name: 'Matthias Käppler',
+              state: 'active',
+              locked: false,
+              avatar_url: 'https://gitlab.com/uploads/-/system/user/avatar/4713264/avatar.png',
+              web_url: 'https://gitlab.com/mkaeppler',
+              show_status: false,
+              path: '/mkaeppler',
+            },
+            source_job: {
+              name: 'start-as-if-foss',
+              retried: false,
+            },
+            path: '/gitlab-org/gitlab-foss/-/pipelines/1648197719',
+            details: {
+              status: {
+                icon: 'status_success',
+                text: 'Passed',
+                label: 'passed',
+                group: 'success',
+                tooltip: 'passed',
+                has_details: true,
+                details_path: '/gitlab-org/gitlab-foss/-/pipelines/1648197719',
+                illustration: null,
+                favicon:
+                  '/assets/ci_favicons/favicon_status_success-8451333011eee8ce9f2ab25dc487fe24a8758c694827a582f17f42b0a90446a2.png',
+              },
+            },
+            project: {
+              id: 13083,
+              name: 'GitLab FOSS',
+              full_path: '/gitlab-org/gitlab-foss',
+              full_name: 'GitLab.org / GitLab FOSS',
+              refs_url: '/gitlab-org/gitlab-foss/refs',
+              forked: false,
+            },
+          },
+          {
+            id: 1648216743,
+            iid: 3743355,
+            active: false,
+            name: null,
+            source: 'parent_pipeline',
+            user: {
+              id: 4713264,
+              username: 'mkaeppler',
+              public_email: 'mkaeppler@gitlab.com',
+              name: 'Matthias Käppler',
+              state: 'active',
+              locked: false,
+              avatar_url: 'https://gitlab.com/uploads/-/system/user/avatar/4713264/avatar.png',
+              web_url: 'https://gitlab.com/mkaeppler',
+              show_status: false,
+              path: '/mkaeppler',
+            },
+            source_job: {
+              name: 'rspec:predictive:trigger',
+              retried: false,
+            },
+            path: '/gitlab-org/gitlab/-/pipelines/1648216743',
+            details: {
+              status: {
+                icon: 'status_success',
+                text: 'Passed',
+                label: 'passed',
+                group: 'success',
+                tooltip: 'passed',
+                has_details: true,
+                details_path: '/gitlab-org/gitlab/-/pipelines/1648216743',
+                illustration: null,
+                favicon:
+                  '/assets/ci_favicons/favicon_status_success-8451333011eee8ce9f2ab25dc487fe24a8758c694827a582f17f42b0a90446a2.png',
+              },
+            },
+            project: {
+              id: 278964,
+              name: 'GitLab',
+              full_path: '/gitlab-org/gitlab',
+              full_name: 'GitLab.org / GitLab',
+              refs_url: '/gitlab-org/gitlab/refs',
+              forked: false,
+            },
+          },
+          {
+            id: 1648216756,
+            iid: 3743360,
+            active: false,
+            name: null,
+            source: 'parent_pipeline',
+            user: {
+              id: 4713264,
+              username: 'mkaeppler',
+              public_email: 'mkaeppler@gitlab.com',
+              name: 'Matthias Käppler',
+              state: 'active',
+              locked: false,
+              avatar_url: 'https://gitlab.com/uploads/-/system/user/avatar/4713264/avatar.png',
+              web_url: 'https://gitlab.com/mkaeppler',
+              show_status: false,
+              path: '/mkaeppler',
+            },
+            source_job: {
+              name: 'rspec-ee:predictive:trigger single-db-ci-connection',
+              retried: false,
+            },
+            path: '/gitlab-org/gitlab/-/pipelines/1648216756',
+            details: {
+              status: {
+                icon: 'status_success',
+                text: 'Passed',
+                label: 'passed',
+                group: 'success',
+                tooltip: 'passed',
+                has_details: true,
+                details_path: '/gitlab-org/gitlab/-/pipelines/1648216756',
+                illustration: null,
+                favicon:
+                  '/assets/ci_favicons/favicon_status_success-8451333011eee8ce9f2ab25dc487fe24a8758c694827a582f17f42b0a90446a2.png',
+              },
+            },
+            project: {
+              id: 278964,
+              name: 'GitLab',
+              full_path: '/gitlab-org/gitlab',
+              full_name: 'GitLab.org / GitLab',
+              refs_url: '/gitlab-org/gitlab/refs',
+              forked: false,
+            },
+          },
+          {
+            id: 1648216749,
+            iid: 3743357,
+            active: false,
+            name: null,
+            source: 'parent_pipeline',
+            user: {
+              id: 4713264,
+              username: 'mkaeppler',
+              public_email: 'mkaeppler@gitlab.com',
+              name: 'Matthias Käppler',
+              state: 'active',
+              locked: false,
+              avatar_url: 'https://gitlab.com/uploads/-/system/user/avatar/4713264/avatar.png',
+              web_url: 'https://gitlab.com/mkaeppler',
+              show_status: false,
+              path: '/mkaeppler',
+            },
+            source_job: {
+              name: 'rspec-ee:predictive:trigger single-db',
+              retried: false,
+            },
+            path: '/gitlab-org/gitlab/-/pipelines/1648216749',
+            details: {
+              status: {
+                icon: 'status_success',
+                text: 'Passed',
+                label: 'passed',
+                group: 'success',
+                tooltip: 'passed',
+                has_details: true,
+                details_path: '/gitlab-org/gitlab/-/pipelines/1648216749',
+                illustration: null,
+                favicon:
+                  '/assets/ci_favicons/favicon_status_success-8451333011eee8ce9f2ab25dc487fe24a8758c694827a582f17f42b0a90446a2.png',
+              },
+            },
+            project: {
+              id: 278964,
+              name: 'GitLab',
+              full_path: '/gitlab-org/gitlab',
+              full_name: 'GitLab.org / GitLab',
+              refs_url: '/gitlab-org/gitlab/refs',
+              forked: false,
+            },
+          },
+        ],
+      },
+      {
+        id: 1648183454,
+        iid: 3743118,
+        user: {
+          id: 4713264,
+          username: 'mkaeppler',
+          public_email: 'mkaeppler@gitlab.com',
+          name: 'Matthias Käppler',
+          state: 'active',
+          locked: false,
+          avatar_url: 'https://gitlab.com/uploads/-/system/user/avatar/4713264/avatar.png',
+          web_url: 'https://gitlab.com/mkaeppler',
+          show_status: false,
+          path: '/mkaeppler',
+        },
+        active: false,
+        name: 'Ruby 3.3.6 MR [tier:N/A, types:code,rspec-predictive, opts:]',
+        source: 'merge_request_event',
+        created_at: '2025-01-30T09:50:04.703Z',
+        updated_at: '2025-01-30T09:58:19.114Z',
+        path: '/gitlab-org/gitlab/-/pipelines/1648183454',
+        flags: {
+          stuck: false,
+          auto_devops: false,
+          merge_request: true,
+          yaml_errors: false,
+          retryable: true,
+          cancelable: true,
+          failure_reason: false,
+          detached_merge_request_pipeline: false,
+          merge_request_pipeline: true,
+          merged_result_pipeline: true,
+          type: 'merged_result',
+          merge_train_pipeline: false,
+          latest: false,
+        },
+        details: {
+          status: {
+            icon: 'status_failed',
+            text: 'Failed',
+            label: 'failed',
+            group: 'failed',
+            tooltip: 'failed',
+            has_details: true,
+            details_path: '/gitlab-org/gitlab/-/pipelines/1648183454',
+            illustration: null,
+            favicon:
+              '/assets/ci_favicons/favicon_status_failed-41304d7f7e3828808b0c26771f0309e55296819a9beea3ea9fbf6689d9857c12.png',
+          },
+          stages: [
+            {
+              name: 'sync',
+              id: 3659864485,
+              title: 'sync: passed',
+              status: {
+                icon: 'status_success',
+                text: 'Passed',
+                label: 'passed',
+                group: 'success',
+                tooltip: 'passed',
+                has_details: true,
+                details_path: '/gitlab-org/gitlab/-/pipelines/1648183454#sync',
+                illustration: null,
+                favicon:
+                  '/assets/ci_favicons/favicon_status_success-8451333011eee8ce9f2ab25dc487fe24a8758c694827a582f17f42b0a90446a2.png',
+              },
+              path: '/gitlab-org/gitlab/-/pipelines/1648183454#sync',
+              dropdown_path: '/gitlab-org/gitlab/-/pipelines/1648183454/stage.json?stage=sync',
+            },
+            {
+              name: 'preflight',
+              id: 3659864489,
+              title: 'preflight: failed',
+              status: {
+                icon: 'status_failed',
+                text: 'Failed',
+                label: 'failed',
+                group: 'failed',
+                tooltip: 'failed',
+                has_details: true,
+                details_path: '/gitlab-org/gitlab/-/pipelines/1648183454#preflight',
+                illustration: null,
+                favicon:
+                  '/assets/ci_favicons/favicon_status_failed-41304d7f7e3828808b0c26771f0309e55296819a9beea3ea9fbf6689d9857c12.png',
+              },
+              path: '/gitlab-org/gitlab/-/pipelines/1648183454#preflight',
+              dropdown_path: '/gitlab-org/gitlab/-/pipelines/1648183454/stage.json?stage=preflight',
+            },
+            {
+              name: 'prepare',
+              id: 3659864505,
+              title: 'prepare: failed',
+              status: {
+                icon: 'status_failed',
+                text: 'Failed',
+                label: 'failed',
+                group: 'failed',
+                tooltip: 'failed',
+                has_details: true,
+                details_path: '/gitlab-org/gitlab/-/pipelines/1648183454#prepare',
+                illustration: null,
+                favicon:
+                  '/assets/ci_favicons/favicon_status_failed-41304d7f7e3828808b0c26771f0309e55296819a9beea3ea9fbf6689d9857c12.png',
+              },
+              path: '/gitlab-org/gitlab/-/pipelines/1648183454#prepare',
+              dropdown_path: '/gitlab-org/gitlab/-/pipelines/1648183454/stage.json?stage=prepare',
+            },
+            {
+              name: 'fixtures',
+              id: 3659864526,
+              title: 'fixtures: passed',
+              status: {
+                icon: 'status_success',
+                text: 'Passed',
+                label: 'passed',
+                group: 'success',
+                tooltip: 'passed',
+                has_details: true,
+                details_path: '/gitlab-org/gitlab/-/pipelines/1648183454#fixtures',
+                illustration: null,
+                favicon:
+                  '/assets/ci_favicons/favicon_status_success-8451333011eee8ce9f2ab25dc487fe24a8758c694827a582f17f42b0a90446a2.png',
+              },
+              path: '/gitlab-org/gitlab/-/pipelines/1648183454#fixtures',
+              dropdown_path: '/gitlab-org/gitlab/-/pipelines/1648183454/stage.json?stage=fixtures',
+            },
+            {
+              name: 'lint',
+              id: 3659864530,
+              title: 'lint: failed',
+              status: {
+                icon: 'status_failed',
+                text: 'Failed',
+                label: 'failed',
+                group: 'failed',
+                tooltip: 'failed',
+                has_details: true,
+                details_path: '/gitlab-org/gitlab/-/pipelines/1648183454#lint',
+                illustration: null,
+                favicon:
+                  '/assets/ci_favicons/favicon_status_failed-41304d7f7e3828808b0c26771f0309e55296819a9beea3ea9fbf6689d9857c12.png',
+              },
+              path: '/gitlab-org/gitlab/-/pipelines/1648183454#lint',
+              dropdown_path: '/gitlab-org/gitlab/-/pipelines/1648183454/stage.json?stage=lint',
+            },
+            {
+              name: 'test-frontend',
+              id: 3659864542,
+              title: 'test-frontend: canceled',
+              status: {
+                icon: 'status_canceled',
+                text: 'Canceled',
+                label: 'canceled',
+                group: 'canceled',
+                tooltip: 'canceled',
+                has_details: true,
+                details_path: '/gitlab-org/gitlab/-/pipelines/1648183454#test-frontend',
+                illustration: null,
+                favicon:
+                  '/assets/ci_favicons/favicon_status_canceled-ca35321a6cda9943ebdf6631c8057ffd54064f3ba20cfe0ebc4b0b992041c430.png',
+              },
+              path: '/gitlab-org/gitlab/-/pipelines/1648183454#test-frontend',
+              dropdown_path:
+                '/gitlab-org/gitlab/-/pipelines/1648183454/stage.json?stage=test-frontend',
+            },
+            {
+              name: 'test',
+              id: 3659864545,
+              title: 'test: canceled',
+              status: {
+                icon: 'status_canceled',
+                text: 'Canceled',
+                label: 'canceled',
+                group: 'canceled',
+                tooltip: 'canceled',
+                has_details: true,
+                details_path: '/gitlab-org/gitlab/-/pipelines/1648183454#test',
+                illustration: null,
+                favicon:
+                  '/assets/ci_favicons/favicon_status_canceled-ca35321a6cda9943ebdf6631c8057ffd54064f3ba20cfe0ebc4b0b992041c430.png',
+              },
+              path: '/gitlab-org/gitlab/-/pipelines/1648183454#test',
+              dropdown_path: '/gitlab-org/gitlab/-/pipelines/1648183454/stage.json?stage=test',
+            },
+            {
+              name: 'post-test',
+              id: 3659865004,
+              title: 'post-test: canceled',
+              status: {
+                icon: 'status_canceled',
+                text: 'Canceled',
+                label: 'canceled',
+                group: 'canceled',
+                tooltip: 'canceled',
+                has_details: true,
+                details_path: '/gitlab-org/gitlab/-/pipelines/1648183454#post-test',
+                illustration: null,
+                favicon:
+                  '/assets/ci_favicons/favicon_status_canceled-ca35321a6cda9943ebdf6631c8057ffd54064f3ba20cfe0ebc4b0b992041c430.png',
+              },
+              path: '/gitlab-org/gitlab/-/pipelines/1648183454#post-test',
+              dropdown_path: '/gitlab-org/gitlab/-/pipelines/1648183454/stage.json?stage=post-test',
+            },
+            {
+              name: 'benchmark',
+              id: 3659865052,
+              title: 'benchmark: skipped',
+              status: {
+                icon: 'status_skipped',
+                text: 'Skipped',
+                label: 'skipped',
+                group: 'skipped',
+                tooltip: 'skipped',
+                has_details: true,
+                details_path: '/gitlab-org/gitlab/-/pipelines/1648183454#benchmark',
+                illustration: null,
+                favicon:
+                  '/assets/ci_favicons/favicon_status_skipped-0b9c5e543588945e8c4ca57786bbf2d0c56631959c9f853300392d0315be829b.png',
+              },
+              path: '/gitlab-org/gitlab/-/pipelines/1648183454#benchmark',
+              dropdown_path: '/gitlab-org/gitlab/-/pipelines/1648183454/stage.json?stage=benchmark',
+            },
+          ],
+          duration: 474,
+          finished_at: '2025-01-30T09:58:19.090Z',
+          event_type_name: 'Merged results pipeline',
+          has_manual_actions: true,
+          has_scheduled_actions: false,
+        },
+        merge_request: {
+          iid: 179672,
+          path: '/gitlab-org/gitlab/-/merge_requests/179672',
+          title: 'Add post-deploy migration to drop cloud_connector_keys column',
+          source_branch: '515818-drop-cc-keys-setting',
+          source_branch_path: null,
+          target_branch: 'master',
+          target_branch_path: '/gitlab-org/gitlab/-/commits/master',
+        },
+        ref: {
+          name: 'refs/merge-requests/179672/merge',
+          path: '/gitlab-org/gitlab/-/commits/refs/merge-requests/179672/merge',
+          tag: false,
+          branch: false,
+          merge_request: true,
+        },
+        commit: {
+          id: '315ccc4863b8383d030db4245e5a0c91dd6b2cbb',
+          short_id: '315ccc48',
+          created_at: '2025-01-30T09:49:39.000+00:00',
+          parent_ids: [
+            'a03905fb915baa68d32f8a5b08646bc4c9a4a745',
+            '2829d51761e9568d8032b78fccb0fa16984bd62f',
+          ],
+          title: "Merge branch '515818-drop-cc-keys-setting' into 'master' ",
+          message:
+            "Merge branch '515818-drop-cc-keys-setting' into 'master' \n\nAdd post-deploy migration to drop cloud_connector_keys column\n\nSee merge request https://gitlab.com/gitlab-org/gitlab/-/merge_requests/179672\n\nMerged-by: Matthias Käppler <mkaeppler@gitlab.com>\n",
+          author_name: 'Matthias Käppler',
+          author_email: 'mkaeppler@gitlab.com',
+          authored_date: '2025-01-30T09:49:39.000+00:00',
+          committer_name: 'GitLab',
+          committer_email: 'noreply@gitlab.com',
+          committed_date: '2025-01-30T09:49:39.000+00:00',
+          trailers: {},
+          extended_trailers: {},
+          web_url:
+            'https://gitlab.com/gitlab-org/gitlab/-/commit/315ccc4863b8383d030db4245e5a0c91dd6b2cbb',
+          author: {
+            id: 4713264,
+            username: 'mkaeppler',
+            public_email: 'mkaeppler@gitlab.com',
+            name: 'Matthias Käppler',
+            state: 'active',
+            locked: false,
+            avatar_url: 'https://gitlab.com/uploads/-/system/user/avatar/4713264/avatar.png',
+            web_url: 'https://gitlab.com/mkaeppler',
+            show_status: false,
+            path: '/mkaeppler',
+          },
+          author_gravatar_url:
+            'https://secure.gravatar.com/avatar/3eb9cdc66ee7016a998ef09cdcc7486ddfa897956b5498b7acbd195813603713?s=80&d=identicon',
+          commit_url:
+            'https://gitlab.com/gitlab-org/gitlab/-/commit/315ccc4863b8383d030db4245e5a0c91dd6b2cbb',
+          commit_path: '/gitlab-org/gitlab/-/commit/315ccc4863b8383d030db4245e5a0c91dd6b2cbb',
+        },
+        merge_request_event_type: 'merged_result',
+        source_sha: '2829d51761e9568d8032b78fccb0fa16984bd62f',
+        target_sha: 'a03905fb915baa68d32f8a5b08646bc4c9a4a745',
+        retry_path: '/gitlab-org/gitlab/-/pipelines/1648183454/retry',
+        cancel_path: '/gitlab-org/gitlab/-/pipelines/1648183454/cancel',
+        failed_builds_count: 3,
+        pipeline_schedule: null,
+        project: {
+          id: 278964,
+          name: 'GitLab',
+          full_path: '/gitlab-org/gitlab',
+          full_name: 'GitLab.org / GitLab',
+          refs_url: '/gitlab-org/gitlab/refs',
+          forked: false,
+        },
+        triggered_by: null,
+        triggered: [
+          {
+            id: 1648187152,
+            iid: 1468774,
+            active: false,
+            name: 'Ruby 3.3.6 as-if-foss',
+            source: 'pipeline',
+            user: {
+              id: 4713264,
+              username: 'mkaeppler',
+              public_email: 'mkaeppler@gitlab.com',
+              name: 'Matthias Käppler',
+              state: 'active',
+              locked: false,
+              avatar_url: 'https://gitlab.com/uploads/-/system/user/avatar/4713264/avatar.png',
+              web_url: 'https://gitlab.com/mkaeppler',
+              show_status: false,
+              path: '/mkaeppler',
+            },
+            source_job: {
+              name: 'start-as-if-foss',
+              retried: false,
+            },
+            path: '/gitlab-org/gitlab-foss/-/pipelines/1648187152',
+            details: {
+              status: {
+                icon: 'status_failed',
+                text: 'Failed',
+                label: 'failed',
+                group: 'failed',
+                tooltip: 'failed',
+                has_details: true,
+                details_path: '/gitlab-org/gitlab-foss/-/pipelines/1648187152',
+                illustration: null,
+                favicon:
+                  '/assets/ci_favicons/favicon_status_failed-41304d7f7e3828808b0c26771f0309e55296819a9beea3ea9fbf6689d9857c12.png',
+              },
+            },
+            project: {
+              id: 13083,
+              name: 'GitLab FOSS',
+              full_path: '/gitlab-org/gitlab-foss',
+              full_name: 'GitLab.org / GitLab FOSS',
+              refs_url: '/gitlab-org/gitlab-foss/refs',
+              forked: false,
+            },
+          },
+        ],
+      },
+    ];
   }
 
   storeCount(count = {}) {

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 #515988

Edited by Anna Vovchenko

Merge request reports

Loading