Make CI/CD features easier to test in GDK

It's very hard to test almost any feature in CI/CD in GDK. This leads to bugs and poor UX

It's also very hard to configure certain features locally without having to bother a member of CI/CD team. Often I end up mocking data on the frontend to make something work.

Here's a list of features that are not possible to test locally with GDK without extra set up:

  1. Running a pipeline - pipelines are always stuck
  2. Adding an existing GKE cluster - part of the data is not accessible (token)
  3. Adding a new GKE cluster without an hack in the config file
  4. Registry table
  5. Security reports - all of them, both in Pipelines page and in MR widget
  6. Linked pipelines
  7. Deploy boards
  8. A pipeline with all the empty states for job details page

(Some of the above features, I've done FE code without ever having them run locally. I always have to mock everything on the FE, making it impossible to test an entire flow. This is true for numbers: 4, 5, 6, 7 and 8)

@markpundsack @ayufan Fixing this requires dev time, can we schedule time to fix this in order to make development & review process easier?

I feel that if we had this a lot of bugs could be avoided and a lot more people could start working on CI/CD faster


EDIT:

Create a project in GDK with:

  • a registry table
  • deploy boards - EE
  • linked pipelines - EE (multi project pipelines)
  • all security reports - EE
  • a running pipeline
  • a merge request with a running pipeline
  • a merge request with a successfull pipeline
  • a merge request with a failed pipeline
  • a project with all empty states of a job - one mocked pipeline with a job in each state: :success, :failed, :canceled, :skipped, :running, :manual, :created, :pending
  • a project with a GKE cluster set up
  • a working runner
Edited Jun 15, 2022 by Annabel Dunstone Gray
Assignee Loading
Time tracking Loading