|
14 | 14 | - src/Configuration/** |
15 | 15 | - src/Steeltoe.Configuration.slnf |
16 | 16 |
|
| 17 | +concurrency: |
| 18 | + group: ${{ github.workflow }}-${{ github.ref }} |
| 19 | + cancel-in-progress: true |
| 20 | + |
17 | 21 | jobs: |
18 | 22 | linux: |
19 | | - runs-on: ubuntu-latest |
20 | | - |
21 | | - env: |
22 | | - DOTNET_NOLOGO: true |
23 | | - DOTNET_CLI_TELEMETRY_OPTOUT: 1 |
| 23 | + uses: ./.github/workflows/component-shared-workflow.yml |
| 24 | + with: |
| 25 | + component: Configuration |
24 | 26 | OS: ubuntu |
25 | | - SolutionFile: src/Steeltoe.Configuration.slnf |
26 | | - CommonTestArgs: >- |
27 | | - --no-build --configuration Release --blame-crash --blame-hang-timeout 3m |
28 | | - --collect "XPlat Code Coverage" --settings coverlet.runsettings --logger trx --results-directory ${{ github.workspace }} |
29 | | - services: |
30 | | - configServer: |
31 | | - image: steeltoe.azurecr.io/config-server |
32 | | - env: |
33 | | - eureka.client.enabled: true |
34 | | - eureka.client.serviceUrl.defaultZone: http://eurekaServer:8761/eureka |
35 | | - eureka.instance.hostname: localhost |
36 | | - eureka.instance.instanceId: localhost:configserver:8888 |
37 | | - ports: |
38 | | - - 8888:8888 |
39 | | - |
40 | | - eurekaServer: |
41 | | - image: steeltoe.azurecr.io/eureka-server |
42 | | - ports: |
43 | | - - 8761:8761 |
44 | | - steps: |
45 | | - - name: Checkout repo |
46 | | - uses: actions/checkout@v4 |
47 | | - with: |
48 | | - fetch-depth: 0 |
49 | | - |
50 | | - - name: Setup .NET |
51 | | - uses: actions/setup-dotnet@v4 |
52 | | - with: |
53 | | - dotnet-version: | |
54 | | - 8.0.* |
55 | | - 9.0.* |
56 | | -
|
57 | | - - name: Set package version |
58 | | - run: nbgv cloud |
59 | | - |
60 | | - - name: Restore dependencies |
61 | | - run: dotnet restore ${{ env.SolutionFile }} --verbosity minimal --configfile nuget.config |
62 | | - |
63 | | - - name: Build solution |
64 | | - run: dotnet build ${{ env.SolutionFile }} --no-restore --configuration Release --verbosity minimal |
65 | | - |
66 | | - - name: Test (net8.0) |
67 | | - run: dotnet test ${{ env.SolutionFile }} --framework net8.0 ${{ env.CommonTestArgs }} |
68 | | - |
69 | | - - name: Test (net9.0) |
70 | | - run: dotnet test ${{ env.SolutionFile }} --framework net9.0 ${{ env.CommonTestArgs }} |
71 | | - |
72 | | - - name: Upload hang dumps (on failure) |
73 | | - if: failure() |
74 | | - uses: actions/upload-artifact@v4 |
75 | | - with: |
76 | | - name: FailedTestOutput-${{ env.OS }} |
77 | | - path: '**/*.dmp' |
78 | | - |
79 | | - - name: Publish test results |
80 | | - if: always() |
81 | | - uses: actions/upload-artifact@v4 |
82 | | - with: |
83 | | - name: TestResults-${{ env.OS }} |
84 | | - path: '**/*.trx' |
85 | | - |
86 | | - - name: Report test results |
87 | | - uses: dorny/test-reporter@v2 |
88 | | - with: |
89 | | - artifact: TestResults-${{ env.OS }} |
90 | | - name: ${{ env.OS }} test results |
91 | | - reporter: dotnet-trx |
92 | | - path: '*.trx' |
| 27 | + runConfigServer: true |
0 commit comments