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:
- Running a pipeline - pipelines are always stuck
- Adding an existing GKE cluster - part of the data is not accessible (token)
- Adding a new GKE cluster without an hack in the config file
- Registry table
- Security reports - all of them, both in Pipelines page and in MR widget
- Linked pipelines
- Deploy boards
- 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