ci: repair release/stable/9.0 build against current SDKs & runner images #276
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
| name: Prism CI | ||
| on: | ||
| push: | ||
| branches: | ||
| - master | ||
| - release/stable/* | ||
| paths: | ||
| - .github/workflows/ci.yml | ||
| - Directory.Build.props | ||
| - Directory.Build.targets | ||
| - Directory.Packages.props | ||
| - xunit.runner.json | ||
| - version.json | ||
| - LICENSE | ||
| - global.json | ||
| - 'src/**' | ||
| pull_request: | ||
| branches: | ||
| - master | ||
| - release/stable/* | ||
| paths: | ||
| - .github/workflows/ci.yml | ||
| workflow_dispatch: | ||
| jobs: | ||
| build-prism-core: | ||
| uses: avantipoint/workflow-templates/.github/workflows/dotnet-build.yml@v1 | ||
| with: | ||
| name: Build Prism.Core | ||
| solution-path: PrismLibrary_Core.slnf | ||
| code-sign: true | ||
| artifact-name: Core | ||
| secrets: | ||
| codeSignKeyVault: ${{ secrets.CodeSignKeyVault }} | ||
| codeSignClientId: ${{ secrets.CodeSignClientId }} | ||
| codeSignTenantId: ${{ secrets.CodeSignTenantId }} | ||
| codeSignClientSecret: ${{ secrets.CodeSignClientSecret }} | ||
| codeSignCertificate: ${{ secrets.CodeSignCertificate }} | ||
| build-prism-wpf: | ||
| uses: avantipoint/workflow-templates/.github/workflows/dotnet-build.yml@v1 | ||
| with: | ||
| name: Build Prism.Wpf | ||
| solution-path: PrismLibrary_Wpf.slnf | ||
| code-sign: true | ||
| artifact-name: Wpf | ||
| secrets: | ||
| codeSignKeyVault: ${{ secrets.CodeSignKeyVault }} | ||
| codeSignClientId: ${{ secrets.CodeSignClientId }} | ||
| codeSignTenantId: ${{ secrets.CodeSignTenantId }} | ||
| codeSignClientSecret: ${{ secrets.CodeSignClientSecret }} | ||
| codeSignCertificate: ${{ secrets.CodeSignCertificate }} | ||
| build-prism-forms: | ||
| uses: avantipoint/workflow-templates/.github/workflows/msbuild-build.yml@v1 | ||
|
Check warning on line 56 in .github/workflows/ci.yml
|
||
| with: | ||
| # Prism.Forms builds the Xamarin.Android (MonoAndroid) target, whose language targets | ||
| # ship only with Visual Studio's Xamarin component. That component was dropped from | ||
| # windows-latest (VS 18) and windows-2025, so pin to windows-2022 which still includes it. | ||
| runs-on: windows-2022 | ||
| name: Build Prism.Forms | ||
| solution-path: PrismLibrary_Forms.slnf | ||
| code-sign: true | ||
| artifact-name: Forms | ||
| jdk-version: 13 | ||
| secrets: | ||
| codeSignKeyVault: ${{ secrets.CodeSignKeyVault }} | ||
| codeSignClientId: ${{ secrets.CodeSignClientId }} | ||
| codeSignTenantId: ${{ secrets.CodeSignTenantId }} | ||
| codeSignClientSecret: ${{ secrets.CodeSignClientSecret }} | ||
| codeSignCertificate: ${{ secrets.CodeSignCertificate }} | ||
| build-prism-uno: | ||
| uses: avantipoint/workflow-templates/.github/workflows/msbuild-build.yml@v1 | ||
|
Check warning on line 75 in .github/workflows/ci.yml
|
||
| with: | ||
| name: Build Prism.Uno | ||
| solution-path: PrismLibrary_Uno.slnf | ||
| windows-sdk-version: 18362 | ||
| dotnet-version: 8.0.300 | ||
| install-workload: ios android macos maccatalyst wasm-tools | ||
| uno-check: false | ||
| uno-check-version: 1.24.0 | ||
| uno-check-parameters: '--skip xcode --skip gtk3 --skip vswin --skip androidemulator --skip androidsdk --skip vsmac --skip dotnetnewunotemplates' | ||
| run-tests: false | ||
| code-sign: true | ||
| artifact-name: Uno | ||
| secrets: | ||
| codeSignKeyVault: ${{ secrets.CodeSignKeyVault }} | ||
| codeSignClientId: ${{ secrets.CodeSignClientId }} | ||
| codeSignTenantId: ${{ secrets.CodeSignTenantId }} | ||
| codeSignClientSecret: ${{ secrets.CodeSignClientSecret }} | ||
| codeSignCertificate: ${{ secrets.CodeSignCertificate }} | ||
| build-prism-maui: | ||
| uses: avantipoint/workflow-templates/.github/workflows/dotnet-build.yml@v1 | ||
| with: | ||
| name: Build Prism.Maui | ||
| solution-path: PrismLibrary_Maui.slnf | ||
| install-workload: maui maui-tizen | ||
| code-sign: true | ||
| artifact-name: Maui | ||
| secrets: | ||
| codeSignKeyVault: ${{ secrets.CodeSignKeyVault }} | ||
| codeSignClientId: ${{ secrets.CodeSignClientId }} | ||
| codeSignTenantId: ${{ secrets.CodeSignTenantId }} | ||
| codeSignClientSecret: ${{ secrets.CodeSignClientSecret }} | ||
| codeSignCertificate: ${{ secrets.CodeSignCertificate }} | ||
| generate-consolidated-artifacts: | ||
| needs: [build-prism-core, build-prism-wpf, build-prism-forms, build-prism-uno, build-prism-maui] | ||
| runs-on: windows-latest | ||
| steps: | ||
| - name: Checkout | ||
| uses: actions/checkout@v4 | ||
| - name: Download Core | ||
| uses: actions/download-artifact@v4 | ||
| with: | ||
| name: Core | ||
| path: artifacts\Core | ||
| - name: Download Wpf | ||
| uses: actions/download-artifact@v4 | ||
| with: | ||
| name: Wpf | ||
| path: artifacts\Wpf | ||
| - name: Download Forms | ||
| uses: actions/download-artifact@v4 | ||
| with: | ||
| name: Forms | ||
| path: artifacts\Forms | ||
| - name: Download Uno | ||
| uses: actions/download-artifact@v4 | ||
| with: | ||
| name: Uno | ||
| path: artifacts\Uno | ||
| - name: Download Maui | ||
| uses: actions/download-artifact@v4 | ||
| with: | ||
| name: Maui | ||
| path: artifacts\Maui | ||
| - name: Consolidate Artifacts | ||
| run: build\consolidate-artifacts.ps1 | ||
| shell: powershell | ||
| - name: Upload Consolidated NuGets | ||
| uses: actions/upload-artifact@v4 | ||
| with: | ||
| name: NuGet | ||
| path: .\artifacts\nuget | ||
| deploy-internal: | ||
| uses: avantipoint/workflow-templates/.github/workflows/deploy-nuget.yml@v1 | ||
| needs: generate-consolidated-artifacts | ||
| if: ${{ github.event_name == 'push' }} | ||
| with: | ||
| name: Deploy Internal | ||
| secrets: | ||
| feedUrl: ${{ secrets.IN_HOUSE_NUGET_FEED }} | ||
| apiKey: ${{ secrets.IN_HOUSE_API_KEY }} | ||
| deploy-commercial-plus: | ||
| uses: avantipoint/workflow-templates/.github/workflows/deploy-nuget.yml@v1 | ||
| needs: generate-consolidated-artifacts | ||
| if: ${{ github.event_name == 'push' }} | ||
| with: | ||
| name: Deploy Commercial Plus | ||
| secrets: | ||
| feedUrl: ${{ secrets.PRISM_NUGET_FEED }} | ||
| apiKey: ${{ secrets.PRISM_NUGET_TOKEN }} | ||