Skip to content

Draft: Technical Demo Entire changes MR

David Fernandez requested to merge 433514-demo into master

🔭 Context

This adds all the necessary layers for the technical demo described in #433514:

  1. A client class to interact with an API.
    • Additionally, this client has specific needs in authentication. We have to use JWTs with specific claims. A class is dedicated to that.
  2. A service class to leverage the function exposed by the client.
  3. A pair of rails controllers and haml pages to use setup and use that service.

(1.) and (2.) will be re-used outside of the technical demo. (3.) will be only for the technical demo.

The technical demo is gated behind the following guards:

  • Only executable on gitlab.com.
  • Users are required to have read_container_image on the target project.
  • The project has to be private.
  • The related feature flag must be enabled.

🔍 What does this MR do and why?

Add the GCP technical demo

Add GCP Artifact Registry client. Single function: list docker images. Add JWT class to generate the tokens with the proper claims. Add GCP Artifact Registry list docker images service.

For demo purposes, add 2 pages that show how these objects work to pull docker images out of a Artifact Registry repository.

Screenshots or screen recordings

Screenshots are required for UI changes, and strongly recommended for all other merge requests.

Before After

How to set up and validate locally

Numbered steps to set up and validate the change are strongly suggested.

MR acceptance checklist

This checklist encourages us to confirm any changes have been analyzed to reduce risks in quality, performance, reliability, security, and maintainability.

Related to #433514

Edited by David Fernandez

Merge request reports