unity-builder
unity-builder copied to clipboard
Support Multiple License Products when using Unity Licensing Server
Context
The unity licensing server supports registering multiple products which effectively means you can multiple pools of licenses on a licensing server - https://docs.unity.com/licensing/en-us/manual/ServerSetup-test#Support_for_multiple_product_licenses. By default, the server only serves licenses from a single pool (product). Unity clients need to specify that they want to request licenses from multiple pools by setting the toolset
param in their services-config.json
file with values being a comma separated list of product ids:
Docs including toolset param - https://docs.unity.com/licensing/en-us/manual/ClientConfig
The server serves one product license at a time to clients. You can supply a comma-separated string, in order of preferred licenses. To view all available product identifiers, go to the Server Administration Status Page and view the list under licenseEntitlementGroupId. The server processes each license in the order you specify. If a license isn't available, the server goes to the next license in the list. If you don't specify a toolset value, the server serves the default toolset.
Suggested solution
We can add a parameter to the action to specify this value and update the services-config.json.template
that is used already to request floating licenses to set this value to the toolset
param.
Additional details
I've already forked this repo and implemented my proposed solution and we are currently using this in our existing workflows. PRs:
- https://github.com/game-ci/unity-builder/pull/661
- https://github.com/game-ci/unity-test-runner/pull/282
- https://github.com/game-ci/documentation/pull/472