Create API to make Gitlab aware of auto-renew status

Overview

Gitlab does not currently understand the auto-renew status of a subscription/license, which prevents us from customizing messaging for auto-renew vs. non-auto-renew customers.

Proposal

Enable the ability for Gitlab to know the auto-renew status and keep it up-to-date in order to ensure accurate and tailored messaging for the customer based on their auto-renew status. This issue will create the data and API capabilities. The job to notify the gitlab in the customers app will be created in #1441 (closed)

Requirements

  • The Gitlab.com UI/app is aware of whether or not the corresponding subscription is currently set to auto-renew
  • Self-managed gitlab instances are aware of whether or not the corresponding subscription is currently set to auto-renew

Suggested approach

When auto-renew is toggled on or off by a customer (in the customers application), we should kick off a background job that can update the gitlab_subscription table in gitlab (via an API call) to reflect the auto-renew status of that subscription.

Edited by Michael Karampalas