From f2250e958e3d1230fe8041f7d0775daf5b805c4a Mon Sep 17 00:00:00 2001 From: Pierre Lataillade Date: Tue, 26 Mar 2024 20:11:33 +0100 Subject: [PATCH] Enable unity licensing server for Windows (#638) * Enable unity licensing server for windows * Clarify validating logic with explicit variables --- dist/index.js | Bin 22303227 -> 22303572 bytes dist/index.js.map | Bin 14796911 -> 14799215 bytes dist/platforms/windows/activate.ps1 | 24 ++++++++++++++++++ dist/platforms/windows/return_license.ps1 | 11 +++++++- src/model/docker.ts | 1 + .../platform-validation/validate-windows.ts | 11 +++++--- 6 files changed, 43 insertions(+), 4 deletions(-) diff --git a/dist/index.js b/dist/index.js index f8abda07c5c57c764a0d24523e2104e7935853c8..ea151c67a187477aceda8e5c55cc091164df72c1 100644 GIT binary patch delta 1734 zcmZ|PX;f5Y9LMo9I)gf*fQZ7Va6v@`WkwJ|5JbTp6(nt=peCryFe@uF zs@ra5*=Cky*{#i&l%@gVMb~KjaDcU2>GkRR+ANq2Fzf@C^zgaX|5uB z>*mDd!ewSK(DdI}eKc%FEq{!e1Fi1r(rb(|xAD&vXf|>(ng0JyJ#Fh#?cFhFlI`-i z(kfcRh8c`n;gA^(bXdWdVH*2C$O!&>LL*{@JFKwL9u68U?UAUl+~QHxXl7|on>W?Y z_qc|yY4ErZhkodf0dQj=;xPz=k$^-bVF;2j6e$=6?Ujl&crXGZF$(F(fPqY8VKl~I zEV3~UIT(*zt%&aTpFq1CGFvI0{F@#BwyE2^N~+#|i{+430$* zEeN3%$Ds{jL=Z(gI&eHrKny3M6J0n7C*u^X#Hm8n18?Fjyp4D8F81O*ypIp?AwI&#_ynKgGklIO@Fl*&*Z2nC z;yZkgAMhi7!q4~xzv4IS!|(V5f8wvT4IaljD1DT^ic@hZaY{d>zcN5^D+85yWsovh zNl+4%BxQ(_tPE9BlwrznB~?jN_Mc#c?nWx3lyoISF_cUtOBt<BjkP-ZGsO0_aenXSxG h<|^})`N{&NMp>vVQWh(w_qn=w^-PsUc0*k#YXH_?C$RF zI=>I!nVs2}ecDSavuuAZ%d#DwY>{l4oGr~NA;f$((8?kGN{E&Bee2HgCSMO{ zkU49G!P6XIG`Kl*PfAEMwTm+)#3h>Id-gFeFdAG_dk46h?NdDM#%3A~u!aq?BL{4u zT~62|7aZV-+;D<3@*pqr!3C~xgFB4Kj{+!&LNLJto+u126oEH<;ESRthT`ypKT03~ zfhdVmD2*}*LRkbO1mzHl@~D7{sDv<7MmQo+1(B$VYN(DVM56|3q84hS4q_0Cx~PZx zXn=-jgvMxsrf7!dXn~e!h1O_;wrGd;=zuuHqa!+@GrFKFx}iIIpeK5vH~Js}iAX|U z^h19Pz(5SbU<|=f48w4Yz(|ZjGDc$z#$p`CBLx#M5tA?(Q!o|NFdeCwfti>EGiGBB z=3*Y^V*wUo5f)@eSYc13&Q#zwrluCuABe zra-Y&vME-IL9teBltNLpOIfv z0i~c)NHHlMilGACrHT@%R8^`e)s-kETB)JbRB9=;l{!j{606iz>M8XtGI%K# HslopMnL~f0 diff --git a/dist/index.js.map b/dist/index.js.map index 9d25c910d6dbc8e8b5e3b5c011bd9b21c68547f3..c8ffcd06ad24d8713526fbca414d7e187a161ab4 100644 GIT binary patch delta 12853 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

-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 delta 10758 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 B`}zO? diff --git a/dist/platforms/windows/activate.ps1 b/dist/platforms/windows/activate.ps1 index 1f630983..74ffdb58 100644 --- a/dist/platforms/windows/activate.ps1 +++ b/dist/platforms/windows/activate.ps1 @@ -50,6 +50,30 @@ if ( ($null -ne ${env:UNITY_SERIAL}) -and ($null -ne ${env:UNITY_EMAIL}) -and ($ Start-Sleep -Seconds 3 } } +elseif( ($null -ne ${env:UNITY_LICENSING_SERVER})) +{ + # + # Custom Unity License Server + # + + Write-Output "Adding licensing server config" + + $ACTIVATION_OUTPUT = Start-Process -FilePath "$Env:UNITY_PATH\Editor\Data\Resources\Licensing\Client\Unity.Licensing.Client.exe" ` + -ArgumentList "--acquire-floating" ` + -NoNewWindow ` + -PassThru ` + -Wait ` + -RedirectStandardOutput "license.txt" + + $PARSEDFILE = (Get-Content "license.txt" | Select-String -AllMatches -Pattern '\".*?\"' | ForEach-Object { $_.Matches.Value }) -replace '"' + + $env:FLOATING_LICENSE = $PARSEDFILE[1] + $FLOATING_LICENSE_TIMEOUT = $PARSEDFILE[3] + + Write-Output "Acquired floating license: ""$env:FLOATING_LICENSE"" with timeout $FLOATING_LICENSE_TIMEOUT" + # Store the exit code from the verify command + $ACTIVATION_EXIT_CODE = $ACTIVATION_OUTPUT.ExitCode +} else { # diff --git a/dist/platforms/windows/return_license.ps1 b/dist/platforms/windows/return_license.ps1 index edf7ec2e..66099180 100644 --- a/dist/platforms/windows/return_license.ps1 +++ b/dist/platforms/windows/return_license.ps1 @@ -6,7 +6,16 @@ Write-Output "# Return License #" Write-Output "###########################" Write-Output "" -if (($null -ne ${env:UNITY_SERIAL}) -and ($null -ne ${env:UNITY_EMAIL}) -and ($null -ne ${env:UNITY_PASSWORD})) +if (($null -ne ${env:UNITY_LICENSING_SERVER})) +{ + Write-Output "Returning floating license: ""$env:FLOATING_LICENSE""" + Start-Process -FilePath "$Env:UNITY_PATH\Editor\Data\Resources\Licensing\Client\Unity.Licensing.Client.exe" ` + -ArgumentList "--return-floating ""$env:FLOATING_LICENSE"" " ` + -NoNewWindow ` + -Wait +} + +elseif (($null -ne ${env:UNITY_SERIAL}) -and ($null -ne ${env:UNITY_EMAIL}) -and ($null -ne ${env:UNITY_PASSWORD})) { # # SERIAL LICENSE MODE diff --git a/src/model/docker.ts b/src/model/docker.ts index 1beb4923..544540f7 100644 --- a/src/model/docker.ts +++ b/src/model/docker.ts @@ -113,6 +113,7 @@ class Docker { --volume "C:/ProgramData/Microsoft/VisualStudio":"C:/ProgramData/Microsoft/VisualStudio" \ --volume "${actionFolder}/default-build-script":"c:/UnityBuilderAction" \ --volume "${actionFolder}/platforms/windows":"c:/steps" \ + --volume "${actionFolder}/unity-config":"C:/ProgramData/Unity/config" \ --volume "${actionFolder}/BlankProject":"c:/BlankProject" \ --cpus=${dockerCpuLimit} \ --memory=${dockerMemoryLimit} \ diff --git a/src/model/platform-validation/validate-windows.ts b/src/model/platform-validation/validate-windows.ts index 6158c9f8..2a7b68df 100644 --- a/src/model/platform-validation/validate-windows.ts +++ b/src/model/platform-validation/validate-windows.ts @@ -4,9 +4,14 @@ import { BuildParameters } from '..'; class ValidateWindows { public static validate(buildParameters: BuildParameters) { ValidateWindows.validateWindowsPlatformRequirements(buildParameters.targetPlatform); - if (!(process.env.UNITY_EMAIL && process.env.UNITY_PASSWORD)) { - throw new Error(`Unity email and password must be set for Windows based builds to - authenticate the license. Make sure to set them inside UNITY_EMAIL + + const { unityLicensingServer } = buildParameters; + const hasLicensingCredentials = process.env.UNITY_EMAIL && process.env.UNITY_PASSWORD; + const hasValidLicensingStrategy = hasLicensingCredentials || unityLicensingServer; + + if (!hasValidLicensingStrategy) { + throw new Error(`Unity email and password or alternatively a Unity licensing server url must be set for + Windows based builds to authenticate the license. Make sure to set them inside UNITY_EMAIL and UNITY_PASSWORD in Github Secrets and pass them into the environment.`); } }