game-ci / unity-builder

Build Unity projects for different platforms
https://github.com/marketplace/actions/unity-builder
MIT License
822 stars 231 forks source link

Application not signed #650

Closed nlsui closed 1 month ago

nlsui commented 1 month ago

Bug description

I am using the game-ci/unity-builder@v4 on github workflows with a personal unity license to build my unity project. The resulting .exe file is not signed and I'm getting warnings that the publisher is unknown.

How to reproduce

This is the part of the workflow

uses: game-ci/unity-builder@v4
id: build
env:
  UNITY_LICENSE: ${{ secrets.UNITY_LICENSE }}
  UNITY_EMAIL: ${{ secrets.UNITY_EMAIL }}
  UNITY_PASSWORD: ${{ secrets.UNITY_PASSWORD }}
with:
  customImage: unityci/editor:${{ matrix.targetImage }}
  targetPlatform: ${{ matrix.targetPlatform }}
  customParameters: -target ${{ matrix.target }}
  buildMethod: BuildScript.Build

I copied my own personal license as described in the docs in secrets.

These are the relevant logs

User *** logged in successfully
[LicensingClient] Channel doesn't exist: "LicenseClient-root"
[Licensing::Module] Successfully launched the LicensingClient (PId: 38)
[SignatureVerifier] Application signature verification not supported on this platform.
[LicensingClient] Handshaking with LicensingClient: 
    version: 1.10.0-rc.1+0c717dc
    Session Id: de5b4c034b5d443ea0456b8218b49027
    Machine Id: j6bT3DmylWNQWQ6f3fzOYk3+Xlw=
[Licensing::Module] Successfully connected to LicensingClient on channel: "LicenseClient-root" (connect: 1.30s, validation: 0.07s, handshake: 0.00s)
[Licensing::Module] Connected to LicensingClient (PId: 38, launch time: 0.00, total connection time: 1.37s)
Entitlement-based licensing initiated
[LicensingClient] Successfully updated the access token
[Licensing::Module] Successfully updated the access token ObKfcfbLBuQwK6ya8ncHx_jHV21tuQu1qG36R5eqBo8008f
[LicensingClient] Successfully processed license management request
[Licensing::Module] Successfully activated the entitlement license
[LicensingClient] Successfully queried for the EntitlementGroupsDetails
[LicensingClient] Successfully activated ULF license
[Licensing::Module] Serial number assigned to (masked): "***"
[LicensingClient] Successfully resolved entitlements
Pro License: NO

When trying to open the application windows warns me that their is no publisher

Get-AuthenticodeSignature -FilePath .\StandaloneWindows64.exe returns Status:NotSigned as well

Expected behavior

The application should be signed

davidmfinol commented 1 month ago

Generally, Unity doesn't sign the .exe, so you would have to sign it yourself. You could try using this Microsoft SignTool. But instead of that, it may be better to distribute through a platform like Steam.

nlsui commented 1 month ago

Thanks for your help, I thought the license was needed for signature.