Move add_on_metrics from SeatLinkData to Separate Abstraction for Reuse
Background
We currently track add-on metrics as part of seat link records for online cloud licenses to provide visibility into Duo seat adoption for Self-Managed customers.
Now that offline cloud license customers can purchase Duo Enterprise, we will need to capture this same adoption data from these users and ensure these metrics are part of the offline license data sharing process.
In order to allow the offline cloud license usage export file to contain these add-on metrics, we will need to start tracking this as part of GitLab's historical license data.
Proposal
- Move the current
add_on_metricsmethod out of theSeatLinkDataclass and into a separate, appropriate abstraction (such as a concern or finder) so that it can be reused within theHistoricalDatamodel - Depending on the chosen abstraction (ex: if it will be a new concern included in the models), the method name may need to be renamed in order to avoid a conflict with the
add_on_metricsfield that will be added toHistoricalDatain #551159
Edited by 🤖 GitLab Bot 🤖