Skip to content

[Engineering] When pipeline fails due to cc verification failure, email the user with instructions

UX issue: https://gitlab.com/gitlab-org/growth/team-tasks/-/issues/463

Problem

Currently GitLab requires that users verify a credit card before a user can utilize Verify pipelines. Because that requirement was put in place as a stop gap measure to decrease abuse of our pipelines the user experience around that requirement is not ideal. The users pipeline fails and they have to click into the pipeline in order to see how to fix the issue:

image

image

Hypothesis

If we email the user when a pipeline fails for this reason we would a better experience to verify a credit card it will increase initial verify usage.

Requirements

  1. Email the user who initiated the pipeline when their pipeline fails because they have not validated a cc
  2. Email should include explicit instructions on how to validate their cc and get their pipeline passing
  3. Email should go out as soon as the pipeline fails for this reason and can go alongside the generic pipeline failure email.

Proposed Solution

Email Subject Line: Fix your pipelines by validating your account

Email Header: Looks like you’ll need to validate your account to use free pipeline minutes

Email Body Copy:

In order to use free pipeline minutes on shared runners, you'll need to validate your account with a credit or debit card. If you prefer not to provide one, you can run pipelines by bringing your own runners and disabling shared runners for your project.

This is required to discourage and reduce the abuse on GitLab infrastructure. GitLab will not charge or store your card, it will only be used for validation. Learn more.

Main CTA: Validate your account -> Links to Validation Modal

Secondary CTA: I'll bring my own runners -> Links to https://docs.gitlab.com/runner/install/

Icon: https://gitlab.com/gitlab-org/gitlab/-/blob/master/app/assets/images/mailers/in_product_marketing/verify-2.png

Email Visual
Screen_Shot_2021-10-27_at_8.49.50_AM

Design File

Implementation

  • Create mailer action and views (!75080 (merged))
  • Implement send email logic when pipeline fails because of unverified account (!75183 (merged))
  • Implement tracking
Edited by Eugie Limpin