Skip to content

Commit 19eaa83

Browse files
committed
Upgrade workflow templates to v2 and configure explicit test execution
Updates all build, CI, and release workflows to use version `v2` of the shared `avantipoint/workflow-templates`. This change standardizes how unit tests are executed by replacing the `run-tests` flag with a new `test-projects` input, allowing explicit definition of test project paths for each platform (Core, WPF, Uno, MAUI, Avalonia). Additionally, Uno platform builds are updated to target .NET 10.0.100 and related tooling versions, including Uno.Check version 1.33.1 and `tvos` workload installation.
1 parent 7b352d9 commit 19eaa83

8 files changed

Lines changed: 65 additions & 26 deletions

File tree

.github/workflows/build_avalonia.yml

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -19,8 +19,11 @@ on:
1919

2020
jobs:
2121
build-prism-avalonia:
22-
uses: avantipoint/workflow-templates/.github/workflows/dotnet-build.yml@v1
22+
uses: avantipoint/workflow-templates/.github/workflows/dotnet-build.yml@v2
2323
with:
2424
name: Build Prism.Avalonia
2525
solution-path: PrismLibrary_Avalonia.slnf
26+
test-projects: |
27+
tests/Avalonia/Prism.Avalonia.Tests/Prism.Avalonia.Tests.csproj
28+
tests/Avalonia/Prism.DryIoc.Avalonia.Tests/Prism.DryIoc.Avalonia.Tests.csproj
2629
dotnet-version: 10.0.100

.github/workflows/build_core.yml

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -17,8 +17,10 @@ on:
1717

1818
jobs:
1919
build-prism-core:
20-
uses: avantipoint/workflow-templates/.github/workflows/dotnet-build.yml@v1
20+
uses: avantipoint/workflow-templates/.github/workflows/dotnet-build.yml@v2
2121
with:
2222
name: Build Prism.Core
2323
solution-path: PrismLibrary_Core.slnf
24+
test-projects: |
25+
tests/Prism.Core.Tests/Prism.Core.Tests.csproj
2426
dotnet-version: 10.0.100

.github/workflows/build_maui.yml

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -20,9 +20,12 @@ on:
2020

2121
jobs:
2222
build-prism-maui:
23-
uses: avantipoint/workflow-templates/.github/workflows/dotnet-build.yml@v1
23+
uses: avantipoint/workflow-templates/.github/workflows/dotnet-build.yml@v2
2424
with:
2525
name: Build Prism.Maui
2626
solution-path: PrismLibrary_Maui.slnf
2727
install-workload: maui maui-tizen
28+
test-projects: |
29+
tests/Maui/Prism.Maui.Tests/Prism.Maui.Tests.csproj
30+
tests/Maui/Prism.DryIoc.Maui.Tests/Prism.DryIoc.Maui.Tests.csproj
2831
dotnet-version: 10.0.100

.github/workflows/build_uno.yml

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -21,7 +21,7 @@ on:
2121

2222
jobs:
2323
build-prism-uno:
24-
uses: avantipoint/workflow-templates/.github/workflows/msbuild-build.yml@v1
24+
uses: avantipoint/workflow-templates/.github/workflows/msbuild-build.yml@v2
2525
with:
2626
name: Build Prism.Uno
2727
solution-path: PrismLibrary_Uno.slnf
@@ -31,4 +31,6 @@ jobs:
3131
uno-check: false
3232
uno-check-version: 1.33.1
3333
uno-check-parameters: '--skip xcode --skip gtk3 --skip vswin --skip androidemulator --skip androidsdk --skip vsmac --skip dotnetnewunotemplates'
34-
run-tests: true
34+
test-projects: |
35+
tests/Uno/Prism.Uno.WinUI.Tests/Prism.Uno.WinUI.Tests.csproj
36+
tests/Uno/Prism.DryIoc.Uno.WinUI.Tests/Prism.DryIoc.Uno.WinUI.Tests.csproj

.github/workflows/build_wpf.yml

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -19,8 +19,12 @@ on:
1919

2020
jobs:
2121
build-prism-wpf:
22-
uses: avantipoint/workflow-templates/.github/workflows/dotnet-build.yml@v1
22+
uses: avantipoint/workflow-templates/.github/workflows/dotnet-build.yml@v2
2323
with:
2424
name: Build Prism.Wpf
2525
solution-path: PrismLibrary_Wpf.slnf
26+
test-projects: |
27+
tests/Wpf/Prism.Wpf.Tests/Prism.Wpf.Tests.csproj
28+
tests/Wpf/Prism.DryIoc.Wpf.Tests/Prism.DryIoc.Wpf.Tests.csproj
29+
tests/Wpf/Prism.Unity.Wpf.Tests/Prism.Unity.Wpf.Tests.csproj
2630
dotnet-version: 10.0.100

.github/workflows/ci.yml

Lines changed: 22 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -25,10 +25,12 @@ on:
2525

2626
jobs:
2727
build-prism-core:
28-
uses: avantipoint/workflow-templates/.github/workflows/dotnet-build.yml@v1
28+
uses: avantipoint/workflow-templates/.github/workflows/dotnet-build.yml@v2
2929
with:
3030
name: Build Prism.Core
3131
solution-path: PrismLibrary_Core.slnf
32+
test-projects: |
33+
tests/Prism.Core.Tests/Prism.Core.Tests.csproj
3234
code-sign: false
3335
artifact-name: Core
3436
dotnet-version: 10.0.100
@@ -40,10 +42,14 @@ jobs:
4042
codeSignCertificate: ${{ secrets.CodeSignCertificate }}
4143

4244
build-prism-wpf:
43-
uses: avantipoint/workflow-templates/.github/workflows/dotnet-build.yml@v1
45+
uses: avantipoint/workflow-templates/.github/workflows/dotnet-build.yml@v2
4446
with:
4547
name: Build Prism.Wpf
4648
solution-path: PrismLibrary_Wpf.slnf
49+
test-projects: |
50+
tests/Wpf/Prism.Wpf.Tests/Prism.Wpf.Tests.csproj
51+
tests/Wpf/Prism.DryIoc.Wpf.Tests/Prism.DryIoc.Wpf.Tests.csproj
52+
tests/Wpf/Prism.Unity.Wpf.Tests/Prism.Unity.Wpf.Tests.csproj
4753
code-sign: false
4854
artifact-name: Wpf
4955
dotnet-version: 10.0.100
@@ -55,7 +61,7 @@ jobs:
5561
codeSignCertificate: ${{ secrets.CodeSignCertificate }}
5662

5763
build-prism-uno:
58-
uses: avantipoint/workflow-templates/.github/workflows/msbuild-build.yml@v1
64+
uses: avantipoint/workflow-templates/.github/workflows/msbuild-build.yml@v2
5965
with:
6066
name: Build Prism.Uno
6167
solution-path: PrismLibrary_Uno.slnf
@@ -65,7 +71,9 @@ jobs:
6571
uno-check: false
6672
uno-check-version: 1.33.1
6773
uno-check-parameters: '--skip xcode --skip gtk3 --skip vswin --skip androidemulator --skip androidsdk --skip vsmac --skip dotnetnewunotemplates'
68-
run-tests: true
74+
test-projects: |
75+
tests/Uno/Prism.Uno.WinUI.Tests/Prism.Uno.WinUI.Tests.csproj
76+
tests/Uno/Prism.DryIoc.Uno.WinUI.Tests/Prism.DryIoc.Uno.WinUI.Tests.csproj
6977
code-sign: false
7078
artifact-name: Uno
7179
secrets:
@@ -76,11 +84,14 @@ jobs:
7684
codeSignCertificate: ${{ secrets.CodeSignCertificate }}
7785

7886
build-prism-maui:
79-
uses: avantipoint/workflow-templates/.github/workflows/dotnet-build.yml@v1
87+
uses: avantipoint/workflow-templates/.github/workflows/dotnet-build.yml@v2
8088
with:
8189
name: Build Prism.Maui
8290
solution-path: PrismLibrary_Maui.slnf
8391
install-workload: maui maui-tizen
92+
test-projects: |
93+
tests/Maui/Prism.Maui.Tests/Prism.Maui.Tests.csproj
94+
tests/Maui/Prism.DryIoc.Maui.Tests/Prism.DryIoc.Maui.Tests.csproj
8495
code-sign: false
8596
artifact-name: Maui
8697
dotnet-version: 10.0.100
@@ -92,10 +103,13 @@ jobs:
92103
codeSignCertificate: ${{ secrets.CodeSignCertificate }}
93104

94105
build-prism-avalonia:
95-
uses: avantipoint/workflow-templates/.github/workflows/dotnet-build.yml@v1
106+
uses: avantipoint/workflow-templates/.github/workflows/dotnet-build.yml@v2
96107
with:
97108
name: Build Prism.Avalonia
98109
solution-path: PrismLibrary_Avalonia.slnf
110+
test-projects: |
111+
tests/Avalonia/Prism.Avalonia.Tests/Prism.Avalonia.Tests.csproj
112+
tests/Avalonia/Prism.DryIoc.Avalonia.Tests/Prism.DryIoc.Avalonia.Tests.csproj
99113
code-sign: false
100114
artifact-name: Avalonia
101115
dotnet-version: 10.0.100
@@ -154,7 +168,7 @@ jobs:
154168
path: .\artifacts\nuget
155169

156170
deploy-internal:
157-
uses: avantipoint/workflow-templates/.github/workflows/deploy-nuget.yml@v1
171+
uses: avantipoint/workflow-templates/.github/workflows/deploy-nuget.yml@v2
158172
needs: generate-consolidated-artifacts
159173
if: ${{ github.event_name == 'push' }}
160174
with:
@@ -164,7 +178,7 @@ jobs:
164178
apiKey: ${{ secrets.IN_HOUSE_API_KEY }}
165179

166180
deploy-commercial-plus:
167-
uses: avantipoint/workflow-templates/.github/workflows/deploy-nuget.yml@v1
181+
uses: avantipoint/workflow-templates/.github/workflows/deploy-nuget.yml@v2
168182
needs: generate-consolidated-artifacts
169183
if: ${{ github.event_name == 'push' }}
170184
with:

.github/workflows/publish-release.yml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -6,13 +6,13 @@ on:
66

77
jobs:
88
publish-internal:
9-
uses: avantipoint/workflow-templates/.github/workflows/deploy-nuget-from-release.yml@v1
9+
uses: avantipoint/workflow-templates/.github/workflows/deploy-nuget-from-release.yml@v2
1010
secrets:
1111
feedUrl: ${{ secrets.IN_HOUSE_NUGET_FEED }}
1212
apiKey: ${{ secrets.IN_HOUSE_API_KEY }}
1313

1414
publish-commercial-plus:
15-
uses: avantipoint/workflow-templates/.github/workflows/deploy-nuget-from-release.yml@v1
15+
uses: avantipoint/workflow-templates/.github/workflows/deploy-nuget-from-release.yml@v2
1616
secrets:
1717
feedUrl: ${{ secrets.PRISM_NUGET_FEED }}
1818
apiKey: ${{ secrets.PRISM_NUGET_TOKEN }}

.github/workflows/start-release.yml

Lines changed: 21 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -5,10 +5,12 @@ on:
55

66
jobs:
77
build-prism-core:
8-
uses: avantipoint/workflow-templates/.github/workflows/dotnet-build.yml@v1
8+
uses: avantipoint/workflow-templates/.github/workflows/dotnet-build.yml@v2
99
with:
1010
name: Build Prism.Core
1111
solution-path: PrismLibrary_Core.slnf
12+
test-projects: |
13+
tests/Prism.Core.Tests/Prism.Core.Tests.csproj
1214
code-sign: true
1315
artifact-name: Core
1416
build-args: /p:OfficialRelease=true
@@ -20,10 +22,14 @@ jobs:
2022
codeSignCertificate: ${{ secrets.CodeSignCertificate }}
2123

2224
build-prism-wpf:
23-
uses: avantipoint/workflow-templates/.github/workflows/dotnet-build.yml@v1
25+
uses: avantipoint/workflow-templates/.github/workflows/dotnet-build.yml@v2
2426
with:
2527
name: Build Prism.Wpf
2628
solution-path: PrismLibrary_Wpf.slnf
29+
test-projects: |
30+
tests/Wpf/Prism.Wpf.Tests/Prism.Wpf.Tests.csproj
31+
tests/Wpf/Prism.DryIoc.Wpf.Tests/Prism.DryIoc.Wpf.Tests.csproj
32+
tests/Wpf/Prism.Unity.Wpf.Tests/Prism.Unity.Wpf.Tests.csproj
2733
code-sign: true
2834
artifact-name: Wpf
2935
build-args: /p:OfficialRelease=true
@@ -35,17 +41,19 @@ jobs:
3541
codeSignCertificate: ${{ secrets.CodeSignCertificate }}
3642

3743
build-prism-uno:
38-
uses: avantipoint/workflow-templates/.github/workflows/msbuild-build.yml@v1
44+
uses: avantipoint/workflow-templates/.github/workflows/msbuild-build.yml@v2
3945
with:
4046
name: Build Prism.Uno
4147
solution-path: PrismLibrary_Uno.slnf
4248
windows-sdk-version: 18362
43-
dotnet-version: 8.0.300
44-
install-workload: ios android macos maccatalyst wasm-tools
49+
dotnet-version: 10.0.100
50+
install-workload: ios android macos maccatalyst wasm-tools tvos
4551
uno-check: false
46-
uno-check-version: 1.25.1
52+
uno-check-version: 1.33.1
4753
uno-check-parameters: '--skip xcode --skip gtk3 --skip vswin --skip androidemulator --skip androidsdk --skip vsmac --skip dotnetnewunotemplates'
48-
run-tests: false
54+
test-projects: |
55+
tests/Uno/Prism.Uno.WinUI.Tests/Prism.Uno.WinUI.Tests.csproj
56+
tests/Uno/Prism.DryIoc.Uno.WinUI.Tests/Prism.DryIoc.Uno.WinUI.Tests.csproj
4957
code-sign: true
5058
artifact-name: Uno
5159
build-args: /p:OfficialRelease=true
@@ -57,12 +65,15 @@ jobs:
5765
codeSignCertificate: ${{ secrets.CodeSignCertificate }}
5866

5967
build-prism-maui:
60-
uses: avantipoint/workflow-templates/.github/workflows/dotnet-build.yml@v1
68+
uses: avantipoint/workflow-templates/.github/workflows/dotnet-build.yml@v2
6169
with:
6270
name: Build Prism.Maui
6371
solution-path: PrismLibrary_Maui.slnf
6472
dotnet-version: 8.0.x
6573
install-workload: maui maui-tizen
74+
test-projects: |
75+
tests/Maui/Prism.Maui.Tests/Prism.Maui.Tests.csproj
76+
tests/Maui/Prism.DryIoc.Maui.Tests/Prism.DryIoc.Maui.Tests.csproj
6677
code-sign: true
6778
artifact-name: Maui
6879
build-args: /p:OfficialRelease=true
@@ -74,7 +85,7 @@ jobs:
7485
codeSignCertificate: ${{ secrets.CodeSignCertificate }}
7586

7687
generate-consolidated-artifacts:
77-
needs: [build-prism-core, build-prism-wpf, build-prism-uno]
88+
needs: [build-prism-core, build-prism-wpf, build-prism-uno, build-prism-maui]
7889
runs-on: windows-latest
7990
steps:
8091
- name: Checkout
@@ -115,7 +126,7 @@ jobs:
115126
path: .\artifacts\nuget
116127

117128
release:
118-
uses: avantipoint/workflow-templates/.github/workflows/generate-release.yml@v1
129+
uses: avantipoint/workflow-templates/.github/workflows/generate-release.yml@v2
119130
needs: [generate-consolidated-artifacts]
120131
permissions:
121132
contents: write

0 commit comments

Comments
 (0)