Skip to content

Enable Cloud Run deploys

Sri Rang requested to merge incubation-5mp-enable-cloud-run into master

What does this MR do and why?

This commit enables the Cloud Run deployment method in the Project :: Infra :: Google Cloud section.

Minimal frontend changes that rename props and flip the disabled switch.

Backend changes introduces a service to enable the underlying Google Cloud services via their API. Then of course there's a controller method that responds to the user clicking the now enabled button.

Detailed changelist:

  • Frontend
    • Enable the relevant button in deployment service table
    • Rename the necessary props
    • Specs / tests
  • Backend
    • Rename @js_data attributes
    • Enable Cloud Run service
      • Service that enables cloud run, artifacts registry and cloud build for the logged in user's Google Cloud account
    • Google API -> Client
      • Methods that make the underlying calls to enable cloud run, artifacts registry and cloud build
    • Controller method to handle user selecting the Deploy Cloud Run button
      • Calls the newly created EnableCloudRunService
      • Calls the GeneratePipelineService
      • Redirects the user appropriately based on service responses
    • Specs / tests

Screenshots or screen recordings

image image

How to set up and validate locally

  1. Enable incubation_5mp_google_cloud feature flag for a test project
  2. In GitLab web ui, navigate to project
  3. Go to Infra :: Google Cloud page
  4. Switch to Deployments tab
  5. Press the Configure via MR for Cloud Run option

MR acceptance checklist

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

Edited by Sri Rang

Merge request reports