Skip to content

Create Empty States for Deployment Details Page

Problem

While developing Deployment Detail Page MVC - Deploy Approval (#374538 - closed) it came to our attention that we need to provide users with a few empty-states for the Deployment Details Page. These empty-states include the following:

  • Free users to prompt upgrades (within the deployment approval table).
  • Users without deployment approvals configured (within the deployment approval table).

This issue will capture these designs.

Proposal

No Subscription header
Screenshot_2024-02-13_at_2.30.33_PM Screenshot_2024-02-14_at_9.42.32_AM
Learn More: https://docs.gitlab.com/ee/ci/environments/deployment_approvals.html Set up Deployment Approvals: CI/CD Settings (If they have permissions)
Learn more: https://docs.gitlab.com/ee/ci/environments/deployment_approvals.html
Leave feedback: TBD

As per Pajamas:

A banner can always be dismissed. It doesn't reappear by default, but in rare circumstances the banner can reappear after 7 days have passed.

Banners that are dismissed will re-appear after 7 days (we can revisit when the page has a bit more detail).

Technical Proposal

  • Add the No Subscription empty state to app/assets/javascripts/deployments/components with the static data presented.
  • Add the Setup empty state to ee/app/assets/javascripts/deployments/components with the static data shown.
  • Use ee_else_ce to import the correct state into the main app.
  • Pass the result of project.licensed_feature_available?(:protected_environments) to the frontend to use in the ee empty state to choose to show the ce one if the user is not a Premium customer.
  • Use the UserCallout GraphQL API to track whether or not the banner has been dismissed, and display it if 7 days has passed.
  • The user feedback banner links Feedback issue for deployment details (#450700)
Edited by Andrew Fontaine