Skip to content

Use GraphQL vulnerability list for pipeline security tab

Why are we doing this work

Currently, there are two components that show a vulnerability list with filters: a Vuex version used on the pipeline security tab, and a GraphQL version used on the vulnerability report page:

Vuex version on pipeline security tab GraphQL version on vulnerability report page
ksnip_20210201-234752 ksnip_20210201-234631

The Vuex version is no longer in development and all active work is being done on the GraphQL version. As such, we need to replace the Vuex version on the pipeline security tab with the GraphQL version.

Additional info

We will do this work behind a feature flag (disabled by default) and split it into two parts: showing the GraphQL vulnerability list, and show a modal when a vulnerability is clicked:

Peek_2021-02-02_00-02

This issue is just for the vulnerability list part, the modal will be a separate issue.

Relevant links

Epic &4969 (closed)
Design issue #227105 (closed)
Backend issue #298760 (closed)
Feature flag issue #300756 (closed)

Non-functional requirements

  • Documentation: screenshots need to be updated and text modified if necessary
  • Feature flag: a feature flag is needed to switch between the two versions until we're confident the GraphQL version is working properly
  • Testing: tests need to be updated

Implementation plan

  • frontend Create a feature flag to toggle between the current Vuex list and the GraphQL list. It should work for the project and user actors so we can toggle it by project or by user.
  • frontend Use the GraphQL vulnerability list for the pipeline security tab and pull data from the new pipeline GraphQL endpoint that will be created in the backend issue.
Edited by Savas Vedova