Provision Orbit promo add-on from legacy licenses

What does this MR do and why?

Provisioning of self-managed add-on purchases only handled cloud licenses, so a legacy license that carries the Orbit promo add-on never got an add-on purchase. This provisions that add-on from legacy licenses on upload, on the provisioning schedule, and in the daily worker. Other add-ons on legacy licenses behave as before.

How to set up and validate locally

  1. Upload a legacy license whose restrictions include add_on_products.orbit_promo.
  2. Check that a self-managed Orbit promo add-on purchase exists.
  3. Run the specs listed below.

MR acceptance checklist

  • I have evaluated the MR acceptance checklist for this MR.
Agent context
  • Base#license_type_supported? keeps the cloud-license check; OrbitPromo overrides it to accept any current license.
  • License#schedule_add_on_purchases_provisioning and the worker now skip only online cloud licenses.
  • Upload service and worker run ProvisionServices::AddOns for offline cloud licenses and only ProvisionServices::OrbitPromo otherwise.
  • No migration, no feature flag, worker name unchanged.
  • Ran on Caproni: provision services, upload license service, provision worker, license_spec.rb, licenses/destroy_service_spec.rb: 553 examples, 0 failures. RuboCop clean on the 9 touched files.

Merge request reports

Loading
Loading