Skip to content

Remove true-up validation for cloud licenses

What does this MR do and why?

Part of Remove true-up validation for cloud licenses (customers-gitlab-com#5483 - closed)

Prior to this change, when a cloud license subscription was renewed with an insufficient true-up count, the renewal license (either by applying a new offline license key or by activating/syncing an online cloud subscription) couldn't be applied on the SM instance.

This change removes the true-up validation for cloud licenses in order to reduce disruption after a renewal.

MR acceptance checklist

Please evaluate this MR against the MR acceptance checklist. It helps you analyze changes to reduce risks in quality, performance, reliability, security, and maintainability.

Screenshots or screen recordings

Expand for screenshots
Context Before After Initial License Renewal license
Legacy license before_-_legacy after_legacy initial_legacy_license renewal_legacy_license
Offline cloud license before_offline after_offline initial_offline_license renewal_offline_license
Online cloud license (seat link sync) Screenshot_2024-01-18_at_2.34.24_PM Screenshot_2024-01-18_at_2.35.19_PM after_online (after reloading the page for the new license to display) initial_online_license renewal_online_license
Online cloud license (activation of renewal subscription) activation_-_before activation_-_after initial_online_license renewal_online_license

How to set up and validate locally

Quick and easiest way to test this:

  1. Create a new online cloud subscription in Zuora that
    • has expired yesterday
    • has a user count of the current users count of your GL instance
  2. Renew the subscription in Zuora by
    • editing the contract effective date to be yesterday's date
    • keeping the quantity the same as before
    • adding an annual true-up product with same amount of main plan's quantity
  3. Create a new HistoricalData record in your GitLab rails console by
    • setting recorded_at to a date during the initial subscription's term (e.g. a week ago)
    • setting active_user_count to the sum of your current users count on the instance * 2 + current users count * 0.1 (10% overage threshold) + 1 😅 Example: My GL instance currently has 31 users, the historical max during the initial subscription's term was 64 (30 * 2 + 3*0.1 + 1) to be higher than the overage threshold.
  4. Activate the (renewal) subscription on your GL instance without this change and with this change to see the difference.
Edited by Corinna Gogolok

Merge request reports