-
Notifications
You must be signed in to change notification settings - Fork 0
unity-uwp-builder@v2.0.0 #7
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Open
StephenHodgson
wants to merge
122
commits into
main
Choose a base branch
from
development
base: main
Could not load branches
Branch not found: {{ refName }}
Loading
Could not load tags
Nothing to show
Loading
Are you sure you want to change the base?
Some commits from the old base branch may be removed from the timeline,
and old review comments may become outdated.
Open
Changes from 120 commits
Commits
Show all changes
122 commits
Select commit
Hold shift + click to select a range
8d4d835
unity-uwp-builder@v1.0.5
StephenHodgson a270b59
refactor cert handling
StephenHodgson 0fb219c
add certificate-password input
StephenHodgson b0e337f
remove unused method
StephenHodgson 0b52d2f
Update src/index.ts
StephenHodgson 391968e
crs
StephenHodgson fdd0f7b
disable concurrency
StephenHodgson 3721766
updated dependencies
StephenHodgson 7e03259
add package format
StephenHodgson 9b3097a
expand tests
StephenHodgson 5a75d34
specify windows sdk
StephenHodgson 01552d1
remove comment
StephenHodgson 89394fb
tweaks and fixes
StephenHodgson 45b827a
set unity arch
StephenHodgson 17e8cfb
set subtarget
StephenHodgson 6c1b126
set windows sdk
StephenHodgson 10d4d73
explicit vs versions
StephenHodgson 15ebac7
tweaks
StephenHodgson d330004
try something new
StephenHodgson ef1286e
fix
StephenHodgson e8c031a
fix file permissions
StephenHodgson 16c887c
fix names
StephenHodgson 486967e
quotes
StephenHodgson 568ec2b
idk
StephenHodgson a51a06f
add strategy
StephenHodgson d2a97cf
remove strategy
StephenHodgson 46a484e
format
StephenHodgson b123707
same same but different
StephenHodgson a372c43
update matrix logic
StephenHodgson 2c78ca0
fix json array join
StephenHodgson b0806af
pretty print?
StephenHodgson 6803f5c
update strategy
StephenHodgson 622a80d
quote me
StephenHodgson 0922a95
remove wrapper
StephenHodgson 8db2625
fix
StephenHodgson 601f7d6
tweak
StephenHodgson 8dd0e00
idk
StephenHodgson 78b593f
refactor again
StephenHodgson 55e8654
update excludes
StephenHodgson e114368
revert
StephenHodgson 1dd59e4
remove excludes
StephenHodgson 2ca65e9
reorder
StephenHodgson ba5f125
add some logging
StephenHodgson 19f1b31
tweak
StephenHodgson e5e3306
its already in json
StephenHodgson 5c20854
remove matrix
StephenHodgson b50ade6
fix
StephenHodgson 5bab3a5
don't be so nice to fall back. throw an error
StephenHodgson d65f4d4
debugging
StephenHodgson 8100ed1
more infos
StephenHodgson d711483
fix artifacts
StephenHodgson 5d46aaf
only build 2021 to speed things up
StephenHodgson 03ad03a
update excludes
StephenHodgson 819cc53
update signature check
StephenHodgson d59b931
remove the dups
StephenHodgson 93c2cdc
give me what I want
StephenHodgson edf7310
version with changeset
StephenHodgson bc85f75
fix reading var
StephenHodgson 4228ff2
add /p:UseMsixTool=false
StephenHodgson 146cea2
remove package format
StephenHodgson e53a15e
change how we find executable
StephenHodgson 12a3428
group by version
StephenHodgson dfbae8d
drop
StephenHodgson e457061
remove top level array
StephenHodgson 43b8171
compact
StephenHodgson 5253c74
hmm
StephenHodgson acf07c3
use job builder
StephenHodgson 11df653
permissions
StephenHodgson 1df4e99
more permissions
StephenHodgson 842966b
show csproj info
StephenHodgson 503b89b
remove globber
StephenHodgson 1c0bf73
fix typo
StephenHodgson 8d23c5a
upload build artifacts
StephenHodgson 67cb52f
setup unity build cache
StephenHodgson c01d058
remove dup
StephenHodgson ec065f9
list build output dir
StephenHodgson e792e23
test dir exists
StephenHodgson 2fbe90b
fix path
StephenHodgson 2d1ec73
update cache actions
StephenHodgson b36a7fd
rename cache step id
StephenHodgson 663eb14
update workflow
StephenHodgson 8670ac7
no cache
StephenHodgson b0ad4e1
add input `publisher-display-name`
StephenHodgson 691ca9e
Revert "add input `publisher-display-name`"
StephenHodgson 3bd01c9
refactor all the things
StephenHodgson 371e185
remove semver
StephenHodgson 1cc187c
recursive search
StephenHodgson 932b448
remove package format in action yaml
StephenHodgson 69e0d80
don't fail if we don't find
StephenHodgson 66a0945
bump major to v2
StephenHodgson 73652f4
fix output directory path
StephenHodgson 4e1f9ac
find app packages
StephenHodgson 5e62c04
try different globber
StephenHodgson a0e23ed
remove `architecture` input
StephenHodgson ccb3767
format
StephenHodgson f7b80f3
quotes
StephenHodgson 51e6d41
refactor
StephenHodgson af9e9b3
revert
StephenHodgson 1578ffe
fix var
StephenHodgson 3e29b7d
update cert validation
StephenHodgson dd6124f
allValid is true until it isn't
StephenHodgson 7f74f9d
add `store-association-path` input
StephenHodgson edb79ca
update info
StephenHodgson ec7ee75
update vcxproj lookup
StephenHodgson 9f1c7c7
log
StephenHodgson 2a37b11
update logging and vcxproj lookup
StephenHodgson 9205c29
updated logging
StephenHodgson a0adf2c
update vsxproj lookup
StephenHodgson c4b04ff
print contents
StephenHodgson 7d1bcc9
file name
StephenHodgson 128ffa4
regex
StephenHodgson 17c5a68
patch up appx correctly
StephenHodgson a90ed21
fix tag
StephenHodgson c67b432
regex for display name update in appxpackage
StephenHodgson 8beea03
use reservedNameMatch
StephenHodgson 65e0762
docs
StephenHodgson 1046bd1
update regex
StephenHodgson 71667fb
print contents
StephenHodgson f4703cc
update var name
StephenHodgson a3ee6a2
refactor
StephenHodgson ba99e7e
.
StephenHodgson 96be129
remove access check before copy
StephenHodgson File filter
Filter by extension
Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
There are no files selected for viewing
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,45 @@ | ||
| { | ||
| "os": [ | ||
| "windows-latest" | ||
| ], | ||
| "build-target": [ | ||
| "WSAPlayer" | ||
| ], | ||
| "unity-version": [ | ||
| "6000.0.49f1 (840e0a9776d9)" | ||
| ], | ||
| "uwp-arch": [ | ||
| "x64", | ||
| "ARM64" | ||
| ], | ||
| "uwp-subtarget": [ | ||
| "PC", | ||
| "HoloLens" | ||
| ], | ||
| "uwp-package-type": [ | ||
| "sideload", | ||
| "upload" | ||
| ], | ||
| "certificate-type": [ | ||
| "default", | ||
| "custom" | ||
| ], | ||
| "windows-sdk-version": [ | ||
| "10.0.22621.0", | ||
| "10.0.26100.0" | ||
| ], | ||
| "exclude": [ | ||
| { | ||
| "uwp-package-type": "upload", | ||
| "certificate-type": "custom" | ||
| }, | ||
| { | ||
| "uwp-subtarget": "PC", | ||
| "uwp-arch": "ARM64" | ||
| }, | ||
| { | ||
| "uwp-subtarget": "HoloLens", | ||
| "uwp-arch": "x64" | ||
| } | ||
| ] | ||
| } |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,204 @@ | ||
| name: build | ||
| permissions: | ||
| contents: read | ||
| on: | ||
| workflow_call: | ||
| inputs: | ||
| matrix: | ||
| required: true | ||
| type: string | ||
| secrets: | ||
| UNITY_USERNAME: | ||
| required: true | ||
| UNITY_PASSWORD: | ||
| required: true | ||
| jobs: | ||
| build: | ||
| name: ${{ matrix.name }} | ||
| strategy: | ||
| matrix: ${{ fromJSON(inputs.matrix) }} | ||
| fail-fast: false | ||
| runs-on: ${{ matrix.os }} | ||
| permissions: | ||
| contents: read | ||
| env: | ||
| BUILD_OUTPUT_PATH: ${{ github.workspace }}/Builds/${{ matrix.build-target }} | ||
| TEMPLATE_PATH: '' | ||
| UNITY_PROJECT_PATH: '' # set by unity-setup action | ||
| steps: | ||
| - uses: actions/checkout@v4 | ||
| - run: 'npm install -g openupm-cli' | ||
| - uses: buildalon/unity-setup@v1 | ||
| with: | ||
| version-file: 'None' | ||
| build-targets: ${{ matrix.build-target }} | ||
| unity-version: ${{ matrix.unity-version }} | ||
| - name: Find Unity Template Path | ||
| run: | | ||
| $rootPath = $env:UNITY_EDITOR_PATH -replace "Editor.*", "" | ||
| Write-Host "ROOT_PATH=$rootPath" | ||
| $templatePath = Get-ChildItem -Recurse -Filter "com.unity.template.3d*.tgz" -Path $rootPath | Select-Object -First 1 | Select-Object -ExpandProperty FullName | ||
| Write-Host "TEMPLATE_PATH=$templatePath" | ||
| echo "TEMPLATE_PATH=$templatePath" >> $env:GITHUB_ENV | ||
| $projectPath = "${{ github.workspace }}/Test Project" | ||
| echo "UNITY_PROJECT_PATH=$projectPath" >> $env:GITHUB_ENV | ||
| shell: pwsh | ||
| - uses: buildalon/activate-unity-license@v1 | ||
|
StephenHodgson marked this conversation as resolved.
Dismissed
|
||
| with: | ||
| license: 'Personal' | ||
| username: ${{ secrets.UNITY_USERNAME }} | ||
| password: ${{ secrets.UNITY_PASSWORD }} | ||
| - uses: buildalon/unity-action@v1 | ||
|
StephenHodgson marked this conversation as resolved.
Dismissed
|
||
| name: Create Test Project | ||
| with: | ||
| log-name: 'create-test-project' | ||
| args: '-quit -nographics -batchmode -createProject "${{ env.UNITY_PROJECT_PATH }}" -cloneFromTemplate "${{ env.TEMPLATE_PATH }}"' | ||
| - run: 'openupm add com.virtualmaker.buildalon' | ||
| name: Add Build Pipeline Package | ||
| working-directory: ${{ env.UNITY_PROJECT_PATH }} | ||
| - uses: buildalon/unity-action@v1 | ||
|
StephenHodgson marked this conversation as resolved.
Dismissed
|
||
| name: '${{ matrix.build-target }}-Validate' | ||
| with: | ||
| build-target: ${{ matrix.build-target }} | ||
| log-name: '${{ matrix.build-target }}-Validate' | ||
| args: '-quit -nographics -batchmode -executeMethod Buildalon.Editor.BuildPipeline.UnityPlayerBuildTools.ValidateProject -importTMProEssentialsAsset' | ||
| - uses: buildalon/unity-action@v1 | ||
|
StephenHodgson marked this conversation as resolved.
Dismissed
|
||
| name: '${{ matrix.build-target }}-Build' | ||
| with: | ||
| build-target: ${{ matrix.build-target }} | ||
| log-name: '${{ matrix.build-target }}-Build' | ||
| args: '-quit -nographics -batchmode -executeMethod Buildalon.Editor.BuildPipeline.UnityPlayerBuildTools.StartCommandLineBuild -buildOutputDirectory ${{ env.BUILD_OUTPUT_PATH }} -sceneList Assets/Scenes/SampleScene.unity -arch ${{ matrix.uwp-arch }} -wsaSubtarget ${{ matrix.uwp-subtarget }} -wsaUWPSDK ${{ matrix.windows-sdk-version }}' | ||
| - name: Enumerate Build Directory | ||
| shell: bash | ||
| run: | | ||
| if [ -z "${{ env.BUILD_OUTPUT_PATH }}" ]; then | ||
| echo "::error::Failed to find build output path!" | ||
| exit 1 | ||
| fi | ||
| if [ ! -d "${{ env.BUILD_OUTPUT_PATH }}" ]; then | ||
| echo "::error::Build output directory does not exist: ${{ env.BUILD_OUTPUT_PATH }}" | ||
| exit 1 | ||
| fi | ||
| echo "::group::Build Artifacts" | ||
| ls -R "${{ env.BUILD_OUTPUT_PATH }}" | ||
| echo "::endgroup::" | ||
| - uses: microsoft/setup-msbuild@v2 | ||
|
StephenHodgson marked this conversation as resolved.
Dismissed
|
||
| with: | ||
| vs-version: '[15.0, )' | ||
| - name: Create Test Certificate | ||
| if: matrix.certificate-type == 'custom' | ||
| shell: pwsh | ||
| run: | | ||
| $certPath = "${{ github.workspace }}/TestCert.pfx" | ||
| $certPassword = "TestPassword123" | ||
|
|
||
| # Create a self-signed certificate for testing | ||
| $cert = New-SelfSignedCertificate -Type Custom -Subject "CN=TestPublisher" -KeyUsage DigitalSignature -FriendlyName "Test UWP Certificate" -CertStoreLocation "Cert:\CurrentUser\My" -TextExtension @("2.5.29.37={text}1.3.6.1.5.5.7.3.3", "2.5.29.19={text}") | ||
|
|
||
| # Export the certificate to a PFX file | ||
| $pwd = ConvertTo-SecureString -String $certPassword -Force -AsPlainText | ||
| Export-PfxCertificate -cert "Cert:\CurrentUser\My\$($cert.Thumbprint)" -FilePath $certPath -Password $pwd | ||
|
|
||
| # Import the certificate into Trusted Root Certification Authorities so it is trusted for validation | ||
| Import-PfxCertificate -FilePath $certPath -CertStoreLocation "Cert:\LocalMachine\Root" -Password $pwd | Out-Null | ||
| Write-Host "Test certificate imported to Trusted Root Certification Authorities." | ||
|
|
||
| Write-Host "Test certificate created at: $certPath" | ||
| - uses: ./ # buildalon/unity-uwp-builder | ||
| id: uwp-build | ||
| with: | ||
| platform: ${{ matrix.uwp-arch }} | ||
| project-path: ${{ env.BUILD_OUTPUT_PATH }} | ||
| package-type: ${{ matrix.uwp-package-type }} | ||
| certificate-path: ${{ matrix.certificate-type == 'custom' && format('{0}/TestCert.pfx', github.workspace) || '' }} | ||
| certificate-password: ${{ matrix.certificate-type == 'custom' && 'TestPassword123' || '' }} | ||
| windows-sdk-version: ${{ matrix.windows-sdk-version }} | ||
| - name: Validate Outputs | ||
| shell: bash | ||
| run: | | ||
| set -e | ||
| OUTPUT_DIR="${{ steps.uwp-build.outputs.output-directory }}" | ||
| if [ -z "${OUTPUT_DIR}" ]; then | ||
| echo "❌ No output directory found at ${OUTPUT_DIR}" | ||
| else | ||
| echo "✅ Output Directory: ${OUTPUT_DIR}" | ||
| fi | ||
|
|
||
| ls -R "${OUTPUT_DIR}" | ||
| - name: Validate Certificate Usage | ||
| if: matrix.certificate-type == 'custom' && matrix.uwp-package-type == 'sideload' | ||
| shell: pwsh | ||
| run: | | ||
| $output_dir="${{ steps.uwp-build.outputs.output-directory }}" | ||
|
|
||
| if (-not (Test-Path $output_dir)) { | ||
| Write-Host "❌ Output directory does not exist: $output_dir" | ||
| exit 1 | ||
| } | ||
|
|
||
| # get .appx, .appxbundle, .appxupload, .msix, .msixbundle, .msixupload files | ||
| $bundles = Get-ChildItem -Path $output_dir -Recurse -Include *.appx, *.appxbundle, *.appxupload, *.msix, *.msixbundle, *.msixupload | Select-Object -ExpandProperty FullName | ||
| if ($bundles.Count -eq 0) { | ||
| Write-Host "❌ No bundles found in output directory: $output_dir" | ||
| exit 1 | ||
| } | ||
|
|
||
| $allValid = $true | ||
|
|
||
| foreach ($bundle in $bundles) { | ||
| # Skip Microsoft dependency packages | ||
| if ($bundle -match "Microsoft\.VCLibs\..*\.appx$") { | ||
| Write-Host "⏭️ Skipping Microsoft dependency package: $bundle" | ||
| continue | ||
| } | ||
|
|
||
| Write-Host "::group::🔍 Validating certificate for bundle: $bundle" | ||
|
|
||
| if (-not (Test-Path $bundle)) { | ||
| Write-Host "❌ Bundle not found: $bundle" | ||
| Write-Host "::endgroup::" | ||
| $allValid = $false | ||
| continue | ||
| } | ||
|
|
||
| $signature = Get-AuthenticodeSignature -FilePath $bundle | ||
| if ($signature.Status -eq "Valid") { | ||
| Write-Host "✅ Bundle is properly signed" | ||
| Write-Host "📜 Certificate Subject: $($signature.SignerCertificate.Subject)" | ||
| Write-Host "👤 Certificate Issuer: $($signature.SignerCertificate.Issuer)" | ||
| Write-Host "📅 Certificate Valid From: $($signature.SignerCertificate.NotBefore)" | ||
| Write-Host "📅 Certificate Valid To: $($signature.SignerCertificate.NotAfter)" | ||
| Write-Host "🔑 Certificate Thumbprint: $($signature.SignerCertificate.Thumbprint)" | ||
|
|
||
| if ($signature.SignerCertificate.Subject -like "*TestPublisher*") { | ||
| Write-Host "✅✅ Confirmed: Custom test certificate was used successfully!" | ||
| } else { | ||
| Write-Host "❌ Warning: Certificate subject doesn't match expected test certificate" | ||
| $allValid = $false | ||
| } | ||
| } elseif ($signature.Status -eq "NotSigned") { | ||
| Write-Host "❌ Bundle is not signed" | ||
| $allValid = $false | ||
| } else { | ||
| Write-Host "❌ Bundle signature status: $($signature.Status)" | ||
| $allValid = $false | ||
| } | ||
|
|
||
| Write-Host "📝 Signature details: $($signature.StatusMessage)" | ||
| Write-Host "::endgroup::" | ||
| } | ||
| if (-not $allValid) { | ||
| Write-Host "❌ One or more bundles failed certificate validation." | ||
| exit 1 | ||
| } else { | ||
| Write-Host "✅ All bundles passed certificate validation." | ||
| } | ||
| - uses: actions/upload-artifact@v4 | ||
| if: always() || cancelled() | ||
| with: | ||
| retention-days: 1 | ||
| overwrite: true | ||
| name: ${{ matrix.unity-version }} ${{ matrix.name }} | ||
| path: | | ||
| ${{ github.workspace }}/**/*.log | ||
| ${{ env.BUILD_OUTPUT_PATH }} | ||
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,15 @@ | ||
| name: Update Release Tags | ||
| on: | ||
| push: | ||
| tags: ['*'] | ||
| workflow_dispatch: | ||
| jobs: | ||
| update-release-tags: | ||
| runs-on: ubuntu-latest | ||
| permissions: | ||
| contents: write | ||
| steps: | ||
| - uses: actions/checkout@v4 | ||
| with: | ||
| fetch-depth: 0 | ||
| - uses: RageAgainstThePixel/update-action-release-tags@v1 | ||
|
StephenHodgson marked this conversation as resolved.
Dismissed
|
||
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -1,97 +1,38 @@ | ||
| name: validate | ||
| on: | ||
| push: | ||
| branches: | ||
| - 'main' | ||
| branches: ['main'] | ||
| pull_request: | ||
| branches: | ||
| - '*' | ||
| # Allows you to run this workflow manually from the Actions tab | ||
| branches: ['*'] | ||
| workflow_dispatch: | ||
| concurrency: | ||
| group: ${{ github.workflow }}-${{ github.ref }} | ||
| cancel-in-progress: true | ||
| jobs: | ||
| unity-build: | ||
| name: '(${{ matrix.unity-version }}) ${{ matrix.build-target }} - ${{ matrix.uwp-package-type }}' | ||
| env: | ||
| TEMPLATE_PATH: '' | ||
| UNITY_PROJECT_PATH: '' # set by unity-setup action | ||
| runs-on: ${{ matrix.os }} | ||
| strategy: | ||
| fail-fast: false | ||
| matrix: | ||
| os: [windows-latest] | ||
| build-target: [WSAPlayer] | ||
| unity-version: [2021.x, 2022.x, 6000.x] | ||
| uwp-package-type: [sideload, upload] | ||
| setup: | ||
| runs-on: ubuntu-latest | ||
| permissions: | ||
| contents: read | ||
| steps: | ||
| - uses: actions/checkout@v4 | ||
| - run: 'npm install -g openupm-cli' | ||
| # Installs the Unity Editor based on your project version text file | ||
| # sets -> env.UNITY_EDITOR_PATH | ||
| # sets -> env.UNITY_PROJECT_PATH | ||
| - uses: buildalon/unity-setup@v1 | ||
| with: | ||
| version-file: 'None' | ||
| build-targets: ${{ matrix.build-target }} | ||
| unity-version: ${{ matrix.unity-version }} | ||
| - name: Find Unity Template Path | ||
| run: | | ||
| $rootPath = $env:UNITY_EDITOR_PATH -replace "Editor.*", "" | ||
| Write-Host "ROOT_PATH=$rootPath" | ||
| $templatePath = Get-ChildItem -Recurse -Filter "com.unity.template.3d*.tgz" -Path $rootPath | Select-Object -First 1 | Select-Object -ExpandProperty FullName | ||
| Write-Host "TEMPLATE_PATH=$templatePath" | ||
| echo "TEMPLATE_PATH=$templatePath" >> $env:GITHUB_ENV | ||
| $projectPath = "${{ github.workspace }}/Test Project" | ||
| echo "UNITY_PROJECT_PATH=$projectPath" >> $env:GITHUB_ENV | ||
| shell: pwsh | ||
| # Activates the installation with the provided credentials | ||
| - uses: buildalon/activate-unity-license@v1 | ||
| with: | ||
| license: 'Personal' | ||
| username: ${{ secrets.UNITY_USERNAME }} | ||
| password: ${{ secrets.UNITY_PASSWORD }} | ||
| - uses: buildalon/unity-action@v1 | ||
| name: Create Test Project | ||
| with: | ||
| log-name: 'create-test-project' | ||
| args: '-quit -nographics -batchmode -createProject "${{ env.UNITY_PROJECT_PATH }}" -cloneFromTemplate "${{ env.TEMPLATE_PATH }}"' | ||
| - run: 'openupm add com.virtualmaker.buildalon' | ||
| name: Add Build Pipeline Package | ||
| working-directory: ${{ env.UNITY_PROJECT_PATH }} | ||
| - uses: buildalon/unity-action@v1 | ||
| name: '${{ matrix.build-target }}-Validate' | ||
| with: | ||
| build-target: ${{ matrix.build-target }} | ||
| log-name: '${{ matrix.build-target }}-Validate' | ||
| args: '-quit -nographics -batchmode -executeMethod Buildalon.Editor.BuildPipeline.UnityPlayerBuildTools.ValidateProject -importTMProEssentialsAsset' | ||
| - uses: buildalon/unity-action@v1 | ||
| name: '${{ matrix.build-target }}-Build' | ||
| sparse-checkout: .github/ | ||
| - uses: RageAgainstThePixel/job-builder@v1 | ||
|
StephenHodgson marked this conversation as resolved.
Dismissed
|
||
| id: setup-jobs | ||
| with: | ||
| build-target: ${{ matrix.build-target }} | ||
| log-name: '${{ matrix.build-target }}-Build' | ||
| args: '-quit -nographics -batchmode -executeMethod Buildalon.Editor.BuildPipeline.UnityPlayerBuildTools.StartCommandLineBuild -sceneList Assets/Scenes/SampleScene.unity -arch ARM64' | ||
| - uses: microsoft/setup-msbuild@v2 | ||
|
|
||
| # builds visual studio project for UWP and packages it as an appx | ||
| - uses: ./ # buildalon/unity-uwp-builder | ||
| id: uwp-build | ||
| with: | ||
| project-path: ${{ env.UNITY_PROJECT_PATH }}/Builds/WSAPlayer | ||
| package-type: ${{ matrix.uwp-package-type }} | ||
|
|
||
| - name: print outputs | ||
| shell: bash | ||
| run: | | ||
| echo "Executable: ${{ steps.uwp-build.outputs.executable }}" | ||
| echo "Output Directory: ${{ steps.uwp-build.outputs.output-directory }}" | ||
| ls -R "${{ steps.uwp-build.outputs.output-directory }}" | ||
|
|
||
| - uses: actions/upload-artifact@v4 | ||
| with: | ||
| retention-days: 1 | ||
| name: ${{ github.run_number }}.${{ github.run_attempt }} ${{ matrix.unity-version }}-${{ matrix.build-target }}-${{ matrix.uwp-package-type }} | ||
| path: | | ||
| ${{ github.workspace }}/**/*.log | ||
| ${{ steps.uwp-build.outputs.output-directory }} | ||
| build-options: ./.github/workflows/build-options.json | ||
| group-by: 'unity-version' | ||
| outputs: | ||
| jobs: ${{ steps.setup-jobs.outputs.jobs }} | ||
| validate: | ||
| if: ${{ needs.setup.outputs.jobs }} | ||
| needs: setup | ||
| name: ${{ matrix.jobs.name }} | ||
| permissions: | ||
| contents: read | ||
| strategy: | ||
| matrix: ${{ fromJSON(needs.setup.outputs.jobs) }} | ||
| secrets: inherit | ||
| uses: ./.github/workflows/build.yml | ||
| with: | ||
| matrix: ${{ toJSON(matrix.jobs.matrix) }} | ||
Oops, something went wrong.
Oops, something went wrong.
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Uh oh!
There was an error while loading. Please reload this page.