Bundle macOS smoke app

This commit is contained in:
geruipu committed 2026-06-21 02:46:19 +08:00
1 parent 6fc0177b0d
commit 2db7a80ae6
1 file changed
+46
@@ -301,6 +301,52 @@ jobs:
} }
Get-ChildItem -Path $publishDir -Recurse -File | ForEach-Object { $_.FullName } Get-ChildItem -Path $publishDir -Recurse -File | ForEach-Object { $_.FullName }
- name: Bundle macOS smoke app
if: ${{ startsWith(matrix.rid, 'osx-') }}
shell: pwsh
run: |
$ErrorActionPreference = "Stop"
$publishDir = Resolve-Path "artifacts/smoke-${{ matrix.rid }}"
$bundleRoot = Join-Path $publishDir "AvaloniaStaticLinkSmoke.app"
$contentsDir = Join-Path $bundleRoot "Contents"
$macosDir = Join-Path $contentsDir "MacOS"
New-Item -ItemType Directory -Path $macosDir -Force | Out-Null
Get-ChildItem -Path $publishDir -Force | Where-Object { $_.Name -ne "AvaloniaStaticLinkSmoke.app" } | ForEach-Object {
Move-Item -LiteralPath $_.FullName -Destination $macosDir -Force
}
@"
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "https://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<key>CFBundleExecutable</key>
<string>AvaloniaStaticLinkSmoke</string>
<key>CFBundleIdentifier</key>
<string>com.shiroka.avalonia-staticlink-smoke</string>
<key>CFBundleName</key>
<string>AvaloniaStaticLinkSmoke</string>
<key>CFBundleDisplayName</key>
<string>Avalonia StaticLink Smoke</string>
<key>CFBundlePackageType</key>
<string>APPL</string>
<key>CFBundleShortVersionString</key>
<string>1.0</string>
<key>CFBundleVersion</key>
<string>${{ github.run_number }}</string>
<key>LSMinimumSystemVersion</key>
<string>12.0</string>
<key>NSHighResolutionCapable</key>
<true/>
<key>NSPrincipalClass</key>
<string>NSApplication</string>
</dict>
</plist>
"@ | Set-Content -Path (Join-Path $contentsDir "Info.plist") -Encoding UTF8
Get-ChildItem -Path $publishDir -Recurse -File | ForEach-Object { $_.FullName }
- name: Upload Avalonia smoke app - name: Upload Avalonia smoke app
uses: actions/upload-artifact@v4 uses: actions/upload-artifact@v4
with: with: