4
4
name : build
5
5
on :
6
6
workflow_dispatch :
7
+ inputs :
8
+ configuration :
9
+ type : choice
10
+ description : Configuration
11
+ options :
12
+ - Release
13
+ - Debug
7
14
push :
8
15
branches : [ main, dev, 'dev/*', 'feature/*', 'rel/*' ]
9
16
paths-ignore :
10
17
- changelog.md
11
- - code-of-conduct.md
12
- - security.md
13
- - support.md
14
18
- readme.md
15
19
pull_request :
16
20
types : [opened, synchronize, reopened]
17
21
18
22
env :
19
23
DOTNET_NOLOGO : true
20
- VersionPrefix : 42.42.${{ github.run_number }}
21
- VersionLabel : ${{ github.ref }}
22
24
PackOnBuild : true
23
25
GeneratePackageOnBuild : true
24
-
26
+ VersionPrefix : 42.42.${{ github.run_number }}
27
+ VersionLabel : ${{ github.ref }}
28
+ GH_TOKEN : ${{ secrets.GH_TOKEN }}
29
+ MSBUILDTERMINALLOGGER : auto
30
+ Configuration : ${{ github.event.inputs.configuration || 'Release' }}
31
+
25
32
defaults :
26
33
run :
27
34
shell : bash
33
40
matrix : ${{ steps.lookup.outputs.matrix }}
34
41
steps :
35
42
- name : 🤘 checkout
36
- uses : actions/checkout@v2
43
+ uses : actions/checkout@v4
37
44
38
45
- name : 🔎 lookup
39
46
id : lookup
@@ -52,37 +59,39 @@ jobs:
52
59
os : ${{ fromJSON(needs.os-matrix.outputs.matrix) }}
53
60
steps :
54
61
- name : 🤘 checkout
55
- uses : actions/checkout@v2
62
+ uses : actions/checkout@v4
56
63
with :
57
64
submodules : recursive
58
65
fetch-depth : 0
59
66
60
67
- name : 🙏 build
61
- run : dotnet build -m:1
68
+ run : dotnet build -m:1 -bl:build.binlog
62
69
63
- - name : ⚙ GNU grep
64
- if : matrix.os == 'macOS-latest'
70
+ - name : 🧪 test
65
71
run : |
66
- brew install grep
67
- echo 'export PATH="/usr/local/opt/grep/libexec/gnubin:$PATH"' >> .bash_profile
72
+ dotnet tool update -g dotnet-retest
73
+ dotnet retest -- --no-build
68
74
69
- - name : 🧪 test
70
- uses : ./.github/workflows/test
75
+ - name : 🐛 logs
76
+ uses : actions/upload-artifact@v3
77
+ if : runner.debug && always()
78
+ with :
79
+ name : logs
80
+ path : ' *.binlog'
71
81
72
- # Only push CI package to sleet feed if building on ubuntu (fastest)
73
82
- name : 🚀 sleet
74
83
env :
75
84
SLEET_CONNECTION : ${{ secrets.SLEET_CONNECTION }}
76
85
if : env.SLEET_CONNECTION != ''
77
86
run : |
78
- dotnet tool install -g --version 4.0.18 sleet
87
+ dotnet tool update sleet -g --allow-downgrade -- version $(curl -s --compressed ${{ vars.SLEET_FEED_URL }} | jq '.[" sleet:version"]' -r)
79
88
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"
80
89
81
90
dotnet-format :
82
91
runs-on : ubuntu-latest
83
92
steps :
84
93
- name : 🤘 checkout
85
- uses : actions/checkout@v2
94
+ uses : actions/checkout@v4
86
95
with :
87
96
submodules : recursive
88
97
fetch-depth : 0
0 commit comments