feat(cli): mirror unityLicensingToolset across CLI surface#24
feat(cli): mirror unityLicensingToolset across CLI surface#24frostebite wants to merge 1 commit into
Conversation
Surface unityLicensingToolset alongside unityLicensingServer so users on Unity floating-license servers with multiple toolsets can target the correct one. Companion to the unity-builder change for game-ci/unity-builder#739. - BuildParameters: new field, initialized empty - OrchestratorConfig: new optional field - CLI input mapper: new optional field - build and activate yargs commands: new --unity-licensing-toolset flag - CLI plugin adapter: pass through to BuildParameters Opt-in and backwards compatible. When unset, no behavior change. The entrypoint.sh used by the orchestrator's build workflow is copied from unity-builder/dist/platforms/ubuntu/, so the runAsHostUser HOME/USER fix in the companion unity-builder PR applies automatically — no orchestrator change required for that half.
|
Warning Rate limit exceeded
To continue reviewing without waiting, purchase usage credits in the billing tab. ⌛ How to resolve this issue?After the wait time has elapsed, a review can be triggered using the We recommend that you space out your commits to avoid hitting the rate limit. 🚦 How do rate limits work?CodeRabbit enforces hourly rate limits for each developer per organization. Our paid plans have higher rate limits than the trial, open-source and free plans. In all cases, we re-allow further reviews after a brief timeout. Please see our FAQ for further information. ℹ️ Review info⚙️ Run configurationConfiguration used: defaults Review profile: CHILL Plan: Pro Run ID: 📒 Files selected for processing (6)
✨ Finishing Touches🧪 Generate unit tests (beta)
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
|
Superseded by #26. Architectural review (tracked in #25) concluded that orchestrator should not carry any Unity-specific licensing fields on its typed surfaces — its domain is dispatch + providers, not engine-specific licensing. PR #26 rips out the Unity licensing fields entirely, which makes adding User-facing support for the toolset lives where the licensing concern actually belongs:
Orchestrator forwards the value opaquely via the existing |
What this is
Companion to game-ci/unity-builder#838 — adds
unityLicensingToolsetalongside the existingunityLicensingServerso users on Unity floating-license servers with multiple toolsets can target the correct one.Background and the original investigation are in unity-builder#739: floating-license servers can host multiple toolsets, and without a
toolsetfield inservices-config.jsonthe Licensing Client relies on the server-side default — which if missing or misconfigured causes Unity to silently fall through to a license that lacks the requested build target.Changes
BuildParameters: new field, initialized emptyOrchestratorConfig(interfaces): new optional fieldbuildandactivateyargs commands: new--unity-licensing-toolsetflagBuildParametersThe actual injection into
services-config.jsonlives in unity-builder (SetupShared). This PR is purely the CLI/config surface.Are these opt-in? Backwards compatible?
Yes to both — the field defaults to empty everywhere, and is plumbed through unconditionally as an empty string when not provided. No behavior change for any existing flow.
entrypoint.sh — no change needed here
The companion
runAsHostUserHOME/USER fix in unity-builder#838 is indist/platforms/ubuntu/entrypoint.sh. The orchestrator'sbuild-automation-workflow.tscopies that file from unity-builder'sdist/(ubuntuPlatformsFolder), so the fix flows through automatically once unity-builder is rebuilt.Test plan
yarn buildclean (tsc passes)yarn test:ci— 887 passed, 4 pre-existing CLI integration timeouts unrelated to these changes (test names assert presence of existing flags only)--unity-licensing-toolsetflag🤖 Generated with Claude Code