3
3
4
4
name : build
5
5
on :
6
+ workflow_dispatch :
6
7
push :
7
8
branches : [ main, dev, 'feature/*', 'rel/*' ]
9
+ paths-ignore :
10
+ - changelog.md
11
+ - code-of-conduct.md
12
+ - security.md
13
+ - support.md
8
14
pull_request :
9
15
types : [opened, synchronize, reopened]
10
16
@@ -46,20 +52,14 @@ jobs:
46
52
fetch-depth : 0
47
53
48
54
- name : 🙏 build
49
- run : dotnet build -m:1 -bl:build.binlog - p:VersionLabel="$GITHUB_REF.$GITHUB_RUN_NUMBER" -p:RepositoryBranch=${GITHUB_REF#refs/*/}
55
+ run : dotnet build -m:1 -p:VersionLabel="$GITHUB_REF.$GITHUB_RUN_NUMBER"
50
56
51
57
- name : 🧪 test
52
- run : dotnet test --no-build -m:1 --blame-hang --blame-hang-timeout 5m -d $GITHUB_WORKSPACE/logs/${{ matrix.os }}.txt -r $GITHUB_WORKSPACE/logs
58
+ run : dotnet test --no-build -m:1 --blame-hang --blame-hang-timeout 5m
53
59
54
60
- name : 📦 pack
55
- run : dotnet pack -m:1 -bl:pack.binlog - p:VersionLabel="$GITHUB_REF.$GITHUB_RUN_NUMBER" -p:RepositoryBranch=${GITHUB_REF#refs/*/}
61
+ run : dotnet pack -m:1 -p:VersionLabel="$GITHUB_REF.$GITHUB_RUN_NUMBER"
56
62
57
- - name : 🔼 packages
58
- uses : actions/upload-artifact@v2
59
- with :
60
- name : bin
61
- path : bin/*.nupkg
62
-
63
63
# Only push CI package to sleet feed if building on ubuntu (fastest)
64
64
- name : 🚀 sleet
65
65
env :
68
68
run : |
69
69
dotnet tool install -g --version 4.0.18 sleet
70
70
sleet push bin --config none -f --verbose -p "SLEET_FEED_CONTAINER=nuget" -p "SLEET_FEED_CONNECTIONSTRING=${{ secrets.SLEET_CONNECTION }}" -p "SLEET_FEED_TYPE=azure" || echo "No packages found"
71
-
72
- acceptance :
73
- name : acceptance-${{ matrix.os }}
74
- runs-on : ${{ matrix.os }}
75
- needs : build
76
- strategy :
77
- matrix :
78
- os : [ubuntu-latest, windows-latest, macOS-latest]
79
- steps :
80
- - name : 🤘 checkout
81
- uses : actions/checkout@v2
82
-
83
- - name : 🔽 packages
84
- uses : actions/download-artifact@v2
85
- with :
86
- name : bin
87
- path : bin
88
-
89
- - name : 🧪 test
90
- run : dotnet test -p:VersionLabel="$GITHUB_REF.$GITHUB_RUN_NUMBER"
91
- working-directory : src/Acceptance
92
-
93
- preview :
94
- defaults :
95
- run :
96
- shell : pwsh
97
- needs : dotnet-format
98
- runs-on : windows-latest
99
-
100
- steps :
101
- - name : 🤘 checkout
102
- uses : actions/checkout@v2
103
-
104
- # > VS Preview
105
- - name : 🔽 dotnet-vs
106
- run : dotnet tool update -g dotnet-vs
107
- - name : 🔽 vs preview
108
- run : vs install preview --quiet +Microsoft.VisualStudio.Component.ManagedDesktop.Core +Microsoft.NetCore.Component.DevelopmentTools
109
- - name : ≥ msbuild
110
- run : echo "$(vs where preview --prop=InstallationPath)\MSBuild\Current\Bin" >> $env:GITHUB_PATH
111
- # < VS Preview
112
-
113
- - name : ⚙ curl
114
- run : |
115
- iwr -useb get.scoop.sh | iex
116
- scoop install curl
117
- - name : 🔍 status for PR
118
- if : ${{ github.event.pull_request.head.sha }}
119
- run : echo "STATUS_SHA=${{ github.event.pull_request.head.sha }}" >> $env:GITHUB_ENV
120
-
121
- - name : 🔍 status for branch
122
- if : ${{ !github.event.pull_request.head.sha }}
123
- run : echo "STATUS_SHA=$($env:GITHUB_SHA)" >> $env:GITHUB_ENV
124
-
125
- - name : ⌛ wait on build
126
- env :
127
- CHECK : build-windows-latest
128
- SHA : ${{ env.STATUS_SHA }}
129
- TOKEN : ${{ secrets.GITHUB_TOKEN }}
130
- run : ./.github/workflows/wait-status.ps1
131
-
132
- - name : ⌛ wait on acceptance
133
- env :
134
- CHECK : acceptance-windows-latest
135
- SHA : ${{ env.STATUS_SHA }}
136
- TOKEN : ${{ secrets.GITHUB_TOKEN }}
137
- run : ./.github/workflows/wait-status.ps1
138
-
139
- - name : 🔽 packages
140
- uses : actions/download-artifact@v2
141
- with :
142
- name : bin
143
- path : bin
144
-
145
- - name : 🧪 test
146
- run : msbuild -r -t:build,test -p:TargetFramework=net472 -p:VersionLabel="$($env:GITHUB_REF).$($env:GITHUB_RUN_NUMBER)"
147
- working-directory : src/Acceptance
0 commit comments