99 OS :
1010 required : true
1111 type : string
12- skipFilter :
13- required : false
14- type : string
15- runConfigServer :
12+ runDockerContainers :
1613 required : false
1714 type : boolean
1815 default : false
@@ -24,14 +21,10 @@ permissions:
2421env :
2522 DOTNET_CLI_TELEMETRY_OPTOUT : 1
2623 DOTNET_NOLOGO : true
27- SOLUTION_FILE : src/Steeltoe.${{ inputs.component }}.slnf
24+ SOLUTION_FILE : ' src/Steeltoe.${{ inputs.component }}.slnf'
2825 COMMON_TEST_ARGS : >-
2926 --no-build --configuration Release --collect "XPlat Code Coverage" --logger trx --results-directory ${{ github.workspace }}/dumps
3027 --settings coverlet.runsettings --blame-crash --blame-hang-timeout 3m
31- SKIP_FILTER_NO_MEMORY_DUMPS : >-
32- ${{ inputs.skipFilter && format('--filter "{0}&Category!=MemoryDumps"', inputs.skipFilter) || '--filter "Category!=MemoryDumps"' }}
33- SKIP_FILTER_WITH_MEMORY_DUMPS : >-
34- ${{ inputs.skipFilter && format('--filter "{0}&Category=MemoryDumps"', inputs.skipFilter) || '--filter "Category=MemoryDumps"' }}
3528
3629jobs :
3730 build :
@@ -41,11 +34,11 @@ jobs:
4134
4235 services :
4336 eurekaServer :
44- image : ${{ inputs.runConfigServer && 'steeltoe.azurecr.io/eureka-server' || null }}
37+ image : ${{ inputs.runDockerContainers && 'steeltoe.azurecr.io/eureka-server' || null }}
4538 ports :
4639 - 8761:8761
4740 configServer :
48- image : ${{ inputs.runConfigServer && 'steeltoe.azurecr.io/config-server' || null }}
41+ image : ${{ inputs.runDockerContainers && 'steeltoe.azurecr.io/config-server' || null }}
4942 env :
5043 eureka.client.enabled : true
5144 eureka.client.serviceUrl.defaultZone : http://eurekaServer:8761/eureka
@@ -71,12 +64,12 @@ jobs:
7164 # When that happens, select 'Always Allow' to grant 'dotnet' access to the certificate key in the future.
7265 # and the test run fails, but without indicating which test caused it. By setting this, the causing test fails with the next message:
7366 # Unable to configure HTTPS endpoint. No server certificate was specified, and the default developer certificate could not be found or is out of date.
74- # To prevent the causing test from failing the test run, disable it on macOS by adding [Trait("Category", "SkipOnMacOS")] .
67+ # To prevent the causing test from failing the test run, disable it on macOS using FactSkippedOnPlatform/TheorySkippedOnPlatform .
7568 shell : bash
7669 run : echo "DOTNET_GENERATE_ASPNET_CERTIFICATE=false" >> $GITHUB_ENV
7770
7871 - name : Git checkout
79- uses : actions/checkout@v4
72+ uses : actions/checkout@v6
8073 with :
8174 persist-credentials : false
8275
@@ -87,32 +80,31 @@ jobs:
8780 run : dotnet build ${{ env.SOLUTION_FILE }} --no-restore --configuration Release --verbosity minimal
8881
8982 - name : Test (net10.0)
90- run : dotnet test ${{ env.SOLUTION_FILE }} --framework net10.0 ${{ env.SKIP_FILTER_NO_MEMORY_DUMPS }} ${{ env.COMMON_TEST_ARGS }}
83+ run : dotnet test ${{ env.SOLUTION_FILE }} --framework net10.0 --filter "Category!=MemoryDumps" ${{ env.COMMON_TEST_ARGS }}
9184
9285 - name : Test (net10.0) (memory dumps)
9386 if : ${{ inputs.component == 'Management' }}
94- run : dotnet test ${{ env.SOLUTION_FILE }} --framework net10.0 ${{ env.SKIP_FILTER_WITH_MEMORY_DUMPS }} ${{ env.COMMON_TEST_ARGS }}
87+ run : dotnet test ${{ env.SOLUTION_FILE }} --framework net10.0 --filter "Category=MemoryDumps" ${{ env.COMMON_TEST_ARGS }}
9588
9689 - name : Test (net9.0)
97- run : dotnet test ${{ env.SOLUTION_FILE }} --framework net9.0 ${{ env.SKIP_FILTER_NO_MEMORY_DUMPS }} ${{ env.COMMON_TEST_ARGS }}
90+ run : dotnet test ${{ env.SOLUTION_FILE }} --framework net9.0 --filter "Category!=MemoryDumps" ${{ env.COMMON_TEST_ARGS }}
9891
9992 - name : Test (net9.0) (memory dumps)
10093 if : ${{ inputs.component == 'Management' }}
101- run : dotnet test ${{ env.SOLUTION_FILE }} --framework net9.0 ${{ env.SKIP_FILTER_WITH_MEMORY_DUMPS }} ${{ env.COMMON_TEST_ARGS }}
94+ run : dotnet test ${{ env.SOLUTION_FILE }} --framework net9.0 --filter "Category=MemoryDumps" ${{ env.COMMON_TEST_ARGS }}
10295
10396 - name : Test (net8.0)
104- run : dotnet test ${{ env.SOLUTION_FILE }} --framework net8.0 ${{ env.SKIP_FILTER_NO_MEMORY_DUMPS }} ${{ env.COMMON_TEST_ARGS }}
97+ run : dotnet test ${{ env.SOLUTION_FILE }} --framework net8.0 --filter "Category!=MemoryDumps" ${{ env.COMMON_TEST_ARGS }}
10598
10699 - name : Test (net8.0) (memory dumps)
107100 if : ${{ inputs.component == 'Management' }}
108- run : dotnet test ${{ env.SOLUTION_FILE }} --framework net8.0 ${{ env.SKIP_FILTER_WITH_MEMORY_DUMPS }} ${{ env.COMMON_TEST_ARGS }}
109-
101+ run : dotnet test ${{ env.SOLUTION_FILE }} --framework net8.0 --filter "Category=MemoryDumps" ${{ env.COMMON_TEST_ARGS }}
110102
111103 - name : Upload crash/hang dumps (on failure)
112104 if : ${{ failure() }}
113- uses : actions/upload-artifact@v4
105+ uses : actions/upload-artifact@v5
114106 with :
115- name : FailedTestOutput-${{ inputs.OS }}
107+ name : FailedTestOutput-${{ inputs.OS }}-latest
116108 path : |
117109 ${{ github.workspace }}/dumps/**/*.dmp
118110 ${{ github.workspace }}/dumps/**/Sequence_*.xml
@@ -122,7 +114,7 @@ jobs:
122114 if : ${{ !cancelled() }}
123115 uses : dorny/test-reporter@v2
124116 with :
125- name : ${{ inputs.OS }} test results
117+ name : ${{ inputs.OS }}-latest test results
126118 reporter : dotnet-trx
127119 path : ' **/*.trx'
128120 fail-on-empty : ' true'
0 commit comments