Handling trials and extensions for GitLab Self-Managed
Overview
Self-managed trials and grace periods cannot be extended - a trial license must be issued and applied to the instance in order to “extend” a license. Requests for grace period extensions, temporary keys, temporary extensions, temporary licenses, and trial extensions all require generating a trial License.
Sales will often request through an Internal Request / Zendesk Ticket that we extend the duration of Self-Managed trials on behalf of their prospects. These tickets will always be raised from the GitLab Support End User gitlab_support@example.com
, with the submitter cc’d on the ticket. The following workflow should be followed to service them.
If any fields when opening the ticket were filled out incorrectly, send a public reply in the ticket asking the submitter to supply the missing information.
NOTE: Non-trial licenses are required to match an existing subscription and these licenses generally have a span of 1 year. There is an ongoing discussion on how to support complex subscription models.
Support tries as much as possible to refrain from issuing non-trial licenses. We are allowed to issue trial licenses because they:
- Have no grace period
- Do not affect historical data tracking
- Are not tied to any subscriptions for revenue purposes
How to extend an expired or soon to expire license
Note: Unlike SaaS, a Self-managed extension does not require a pre-existing Trial license. Instead, start with the current almost-expired license, or most-recent expired license.
- Open the expired or soon to expire license.
- Confirm that:
- The license is a non-trial license and:
- If the license expires within the next 15 days, redirect the salesperson to use the SFDC feature by using the
Deviation from SM License Extension Workflow
macro and close the ticket. - If it expires more than 15 days later, the salesperson should wait until the expiry is within 15 days and then use the SFDC feature. Redirect the salesperson to use the SFDC feature by using the
Deviation from SM License Extension Workflow
macro and close the ticket. - If the license expiry has passed, then proceed with step 2 (2).
- If the license expires within the next 15 days, redirect the salesperson to use the SFDC feature by using the
- The customer does not have a valid temporary extension:
- Go to https://customers.gitlab.com/admin/temporary_extension_history
- Search using the
Subscription Name
that was in the license. - If a temp extension exists and its expiry date is not within 5 days, tell the salesperson to open the request when the license will expire within 5 days and close the ticket.
- If a temp extension exists and its expiry date is in 5 days or less, proceed to step 2 (3).
- If a temp extension does not exist, proceed to step 2 (3).
- The ticket type is
Extend an (almost) expired subscription
.- If the salesperson selects a different form (e.g. the IR
Other
), then redirect them to submit a new ticket by using theDeviation from SM License Extension Workflow
macro and close the ticket. - If the ticket type is correct and the license expiry has passed, then proceed with step 3.
- If the salesperson selects a different form (e.g. the IR
- The license is a non-trial license and:
- Select
Duplicate License
. - Set the
License type
toLegacy License
. - Delete the contents of
Zuora subscription ID
field if present. - Set the
Users count
number to what is requested. - Set the
Previous users count
number to the previous license if there are trueups OR if the requestedUser Count
is less than thePrevious User Count
. Otherwise, delete the contents. - Set the
Trueup count
number if present. - Set the
Plan code
to what is requested. - Ensure the
Trial
checkbox is checked. - Set
Starts at
to today’s date. - Set
Expires at
to the requested date (Expires at 0:00 on this date). - Set
Notes
to the ticket or issue URL. - Click
Save
. The license will be automatically sent to the email specified in theEmail
field.
If you need to send a trial license to another contact,
use the Forward license email
tab after saving the new license.
How to create a new trial license
Users should initiate a request on their own by clicking on the following link: https://about.gitlab.com/free-trial/?hosted=self-managed
Emergency Weekend Licenses
If you’re on call and you need a license generated, but don’t have access to the CustomersDot interface, follow the Weekend Emergencies - License Request workflow.
SFDC generated trial license extensions
Account Executives (AEs) can now use SalesForce.com (SFDC) to issue a self-managed 21-day license extension to a customer when the renewal opportunity is taking longer than expected to close. When an AE uses this functionality, the license code is automatically generated and sent to the customer without any L&R Support involvement. The Temporary renewal extensions handbook entry documents this approach. Note that there are guardrails in place to prevent abuse of this ability, and that as a result only one license extension can be generated per renewal event. Therefore on occasions L&R Support will still be required to generate further license extensions.
Sales AE requests for a manual temporary extension
An AE is expected to use the SFDC process first when a customer requires a self-managed license extension. However, if an extension has elapsed then an AE can use the Internal Request Form to request a license extension directly from L&R support. Use the GitLab Support Internal Requests for Global customers request option, and Extend an (almost) expired subscription for the internal request type. There are some caveats to this process which are listed below:
- If the AE selects a different form (e.g. the IR
other
), then the L&R Support engineer should redirect the AE to submit a new ticket by using theDeviation from SM License Extension Workflow
macro and close the ticket. - If the AE has not first utilized the SFDC process, then the L&R Support engineer should direct them there by using the
Deviation from SM License Extension Workflow
macro and close the ticket.
The Deviation from SM License Extension Workflow
macro is to be used to record an instance where there has been a deviation from the process for creating a self-managed license extension for a customer. When a customer needs a short-term extension for a self-managed subscription, the assigned account executive should initially utilize the SFDC process to automatically produce a temporary self-managed license, valid for 21 days. This enables the client to maintain access to GitLab while their subscription is being renewed. This macro should be used in situations such as the following:
- Sales/CSM has selected the incorrect form
- Sales/CSM approached Support out of Zendesk, via issues or Slack
- Sales/CSM provided incorrect or incomplete information
- Sales/CSM raised an IR instead of first using SFDC to generate a license extension
Customer requests for a license extension
For tracking customer requests for a license extension, we rely on the SE to review the problem type and fix it if it’s wrong. When a customer submits a ticket requesting a license extension, we should apply the macro Customer Request for SM License Extension
to redirect the customer to their AE. In this scenario, we need to modify the template text to provide the customer with their AE’s email address.
This macro will automatically add the tag lnr_sm_extension_customer_request
to track these instances.
Licensing pathways for handling customer renewals and new sales that have become delayed
In certain scenarios where customer renewals or new customer sales are experiencing delays, the L&R Support process workflows provide flexibility to address these challenges. The following table outlines the options available to issue temporary trial licenses based on specific use cases:
Use Case | Pathway |
---|---|
Customer renewal is taking longer than expected | The sales AE (Account Executive) generates a one-off 21 day temporary renewal extension via SFDC |
Customer renewal exceeds the additional 21 days | The sales AE can open a new Internal Request (IR) ticket with L&R support and request a trial license extension for up to 1 month |
Customer renewal exceeds the additional 21 days + 1 month | The sales AE can open a new Internal Request (IR) ticket with L&R support who request approval via the ticket from the senior director of revenue @andrew_murray |
New customer potential sale | The sales AE can request up to 1 month trial extension via an IR with L&R support. |
New customer sale taking longer than 1 month | The sales AE generates a $0 dollar opportunity in SFDC, then opens a new IR ticket with L&R support who request approval via the ticket from the senior director of revenue @andrew_murray |
aff4f6e5
)