1818 - Debug
1919 - Release
2020
21+ permissions :
22+ contents : read
23+
2124jobs :
2225 build :
2326 name : 🛠️ Build
24- runs-on : ubuntu-22 .04
27+ runs-on : ubuntu-24 .04
2528 timeout-minutes : 15
2629 strategy :
2730 matrix :
6366
6467 pack :
6568 name : 📦 Pack
66- runs-on : ubuntu-22 .04
69+ runs-on : ubuntu-24 .04
6770 timeout-minutes : 15
6871 strategy :
6972 matrix :
8891 strategy :
8992 fail-fast : false
9093 matrix :
91- os : [ubuntu-22 .04, windows-2022]
94+ os : [ubuntu-24 .04, windows-2022]
9295 configuration : [Debug, Release]
9396 runs-on : ${{ matrix.os }}
9497 timeout-minutes : 15
@@ -111,97 +114,40 @@ jobs:
111114 buildSwitches : -p:SkipSignAssembly=true
112115
113116 sonarcloud :
114- name : 🔬 Code Quality Analysis
117+ name : call-sonarcloud
115118 needs : [build,test]
116- runs-on : ubuntu-22.04
117- timeout-minutes : 15
118- steps :
119- - name : Checkout
120- uses : codebeltnet/git-checkout@v1
121-
122- - name : Install .NET
123- uses : codebeltnet/install-dotnet@v1
124- with :
125- includePreview : true
126-
127- - name : Install .NET Tool - Sonar Scanner
128- uses : codebeltnet/dotnet-tool-install-sonarscanner@v1
129-
130- - name : Restore Dependencies
131- uses : codebeltnet/dotnet-restore@v2
132-
133- - name : Run SonarCloud Analysis
134- uses : codebeltnet/sonarcloud-scan@v1
135- with :
136- token : ${{ secrets.SONAR_TOKEN }}
137- organization : geekle
138- projectKey : unitify
139- version : ${{ needs.build.outputs.version }}
140-
141- - name : Build
142- uses : codebeltnet/dotnet-build@v2
143- with :
144- buildSwitches : -p:SkipSignAssembly=true
145- uploadBuildArtifact : false
146-
147- - name : Finalize SonarCloud Analysis
148- uses : codebeltnet/sonarcloud-scan-finalize@v1
149- with :
150- token : ${{ secrets.SONAR_TOKEN }}
119+ uses : codebeltnet/jobs-sonarcloud/.github/workflows/default.yml@v1
120+ with :
121+ organization : geekle
122+ projectKey : unitify
123+ version : ${{ needs.build.outputs.version }}
124+ secrets : inherit
151125
152126 codecov :
153- name : 📊 Code Coverage Analysis
127+ name : call-codecov
154128 needs : [build,test]
155- runs-on : ubuntu-22.04
156- timeout-minutes : 15
157- steps :
158- - name : Checkout
159- uses : codebeltnet/git-checkout@v1
160-
161- - name : Run CodeCov Analysis
162- uses : codebeltnet/codecov-scan@v1
163- with :
164- token : ${{ secrets.CODECOV_TOKEN }}
165- repository : codebeltnet/unitify
129+ uses : codebeltnet/jobs-codecov/.github/workflows/default.yml@v1
130+ with :
131+ repository : codebeltnet/unitify
132+ secrets : inherit
166133
167134 codeql :
168- name : 🛡️ Security Analysis
135+ name : call-codeql
169136 needs : [build,test]
170- runs-on : ubuntu-22.04
171- timeout-minutes : 15
172- steps :
173- - name : Checkout
174- uses : codebeltnet/git-checkout@v1
175-
176- - name : Install .NET
177- uses : codebeltnet/install-dotnet@v1
178- with :
179- includePreview : true
180-
181- - name : Restore Dependencies
182- uses : codebeltnet/dotnet-restore@v2
183-
184- - name : Prepare CodeQL SAST Analysis
185- uses : codebeltnet/codeql-scan@v1
186-
187- - name : Build
188- uses : codebeltnet/dotnet-build@v2
189- with :
190- buildSwitches : -p:SkipSignAssembly=true
191- uploadBuildArtifact : false
192-
193- - name : Finalize CodeQL SAST Analysis
194- uses : codebeltnet/codeql-scan-finalize@v1
137+ uses : codebeltnet/jobs-codeql/.github/workflows/default.yml@v1
138+ permissions :
139+ security-events : write
195140
196141 deploy :
197142 if : github.event_name != 'pull_request'
198- name : 🚀 Deploy v${{ needs.build.outputs.version }}
199- runs-on : ubuntu-22.04
200- timeout-minutes : 15
201- needs : [build, pack, test, sonarcloud, codecov, codeql]
202- environment : Production
203- steps :
204- - uses : codebeltnet/nuget-push@v1
205- with :
206- token : ${{ secrets.NUGET_TOKEN }}
207- configuration : ${{ inputs.configuration == '' && 'Release' || inputs.configuration }}
143+ name : call-nuget
144+ needs : [build,pack,test,sonarcloud,codecov,codeql]
145+ uses : codebeltnet/jobs-nuget/.github/workflows/default.yml@v1
146+ with :
147+ version : ${{ needs.build.outputs.version }}
148+ environment : Production
149+ configuration : ${{ inputs.configuration == '' && 'Release' || inputs.configuration }}
150+ permissions :
151+ contents : write
152+ packages : write
153+ secrets : inherit
0 commit comments