Failed to add license from environment variable

Resolved

Failed to add license from environment variable

avatar

Hallo zusammen,

ich versuche PSU (2026.2.5.0) automatisiert zu installieren und scheitere bisher an dem Punkt der Lizensierung.
Laut docs:

You can use the PSULICENSE environment variable to set a license. The value of this environment variable needs to be the contents of the license file.


da habe ich versucht:

$licenseFile = 'E:\Install\bin\PowerShell Universal\PSULizenz.txt'
$license = (Get-Content -LiteralPath $licenseFile -Raw).Trim() 
[Environment]::SetEnvironmentVariable( 'PSULICENSE', $license, [EnvironmentVariableTarget]::Machine ) 
----
[Environment]::GetEnvironmentVariable('PSULICENSE',[EnvironmentVariableTarget]::Machine)
<License>GANZZVIELLLLDAZWISCHENNNNNN</License>


Nach erneutem Start steht im Log aber :

[ERR][UniversalAutomation.StartupService] Failed to add license from environment variable.
System.ArgumentException: Invalid license specified. (Parameter 'license')
at Universal.Server.Services.LicenseService.Add(License license, Boolean ignoreExisting) in D:\a\powershell-universal\powershell-universal\src\Universal.Server\Services\LicenseService.cs:line 306
at UniversalAutomation.StartupService.LoadAuthenticationMethodsFromConfig() in D:\a\powershell-universal\powershell-universal\src\Universal.Server\Services\StartupService.cs:line 127


Wo ist mein Fehler oder kennt jemand einen anderen Weg der Lizensierung?

Gruß
Michael

avatar

Recommended Answer

Hallo zusammen,

der Support hat mir eine aktuelle Lizenzdatei zukommen lassen.
Damit hat das Einspielen über die Umgebungsvariable einwandfrei geklappt
Die vorhandene war noch im alten Format und diese wird durch die aktuelle 2026.2-Version von PSU abgewiesen.

$license = Get-Content -LiteralPath $licenseFile -Raw
[Environment]::SetEnvironmentVariable(
     'PSULICENSE',
     $license,
     [EnvironmentVariableTarget]::Machine
)

Invoke-RestMethod 'http://localhost:5000/api/v1/license/status' -Headers @{ Authorization = "Bearer $($token.token)" }
True


Vielen Dank an dieser Stelle auch nochmal an die schnelle und kompetente Hilfe durch den Support.

Gruß
Michael

All Comments (4)

avatar

Hallo Michael,

funktioniert die Lizenz, wenn du sie von der UI aus hinzufügst? Verfügt der Server über eine Internetverbindung?
Könntest du uns die Lizenz eventuell per DM zur Verfügung stellen?

Vielen Dank!

Mit besten Grüßen

Gerhard Ryznar

avatar

Hallo,

ich muss offline lizensieren und habe, nachdem ich alle Wege

  • Upload der Lizenzdatei über die Weboberfläche
  • Set-PSULicense
  • Setzen der Umgebungsvariable PSULICENSE
  • direkter Aufruf der REST-API über POST /api/v1/license
  • Upload der Datei über POST /api/v1/license/upload


ausprobiert habe, einen Supportcase bei euch aufgemacht.
Dem habe ich schon alle Informationen zukommen lassen und nun harre ich der Dinge ;)
Ich denke mal, es liegt an einer mit eurer neusten Version nicht kompatiblen Lizenzdatei.

Ich kann den Forumsbeitrag auch schließen, da die Kommunikation ja nun über den Support direkt läuft.
Trotzdem danke für die schnelle Rückmeldung hier im Forum ;)


Gruß
Michael

avatar

Hallo Michael,

alles klar, danke für die Information!

Dann fahren wir über den Case fort und posten die Lösung hier, sobald wir das Verhalten geklärt haben. 😉

Mit besten Grüßen

Gerhard Ryznar

avatar

Hallo zusammen,

der Support hat mir eine aktuelle Lizenzdatei zukommen lassen.
Damit hat das Einspielen über die Umgebungsvariable einwandfrei geklappt
Die vorhandene war noch im alten Format und diese wird durch die aktuelle 2026.2-Version von PSU abgewiesen.

$license = Get-Content -LiteralPath $licenseFile -Raw
[Environment]::SetEnvironmentVariable(
     'PSULICENSE',
     $license,
     [EnvironmentVariableTarget]::Machine
)

Invoke-RestMethod 'http://localhost:5000/api/v1/license/status' -Headers @{ Authorization = "Bearer $($token.token)" }
True


Vielen Dank an dieser Stelle auch nochmal an die schnelle und kompetente Hilfe durch den Support.

Gruß
Michael