Skip to content

Commit 575a5e7

Browse files
authored
chore: swap makefile for justfile (#641)
# Description <!-- Please provide a general summary of your PR changes and link any related issues or other pull requests. --> # Testing <!-- Please provide details on how you tested this code. See below. - All pull requests must be tested (unit tests where possible with accompanying cassettes, or provide a screenshot of end-to-end testing when unit tests are not possible) - New features must get a new unit test - Bug fixes/refactors must re-record existing cassettes --> # Pull Request Type Please select the option(s) that are relevant to this PR. - [ ] Bug fix (non-breaking change which fixes an issue) - [ ] New feature (non-breaking change which adds functionality) - [ ] Breaking change (fix or feature that would cause existing functionality to not work as expected) - [ ] Improvement (fixing a typo, updating readme, renaming a variable name, etc)
1 parent 35620bf commit 575a5e7

5 files changed

Lines changed: 205 additions & 243 deletions

File tree

.github/workflows/ci.yml

Lines changed: 68 additions & 79 deletions
Original file line numberDiff line numberDiff line change
@@ -10,90 +10,85 @@ jobs:
1010
lint:
1111
runs-on: windows-latest
1212
steps:
13-
- uses: actions/checkout@v5
14-
15-
- name: Install .NET SDK
16-
uses: actions/setup-dotnet@v5
13+
- uses: actions/checkout@v6
14+
- uses: extractions/setup-just@v3
15+
- uses: actions/setup-dotnet@v5
1716
with:
1817
dotnet-version: 10.x.x
1918

2019
- name: Set up dotnet tools
21-
run: make install install-styleguide
20+
run: just install install-styleguide
2221

2322
- name: Check style with dotnet-format
24-
run: make lint
23+
run: just lint
2524

2625
Roslyn_Static_Analysis:
2726
runs-on: windows-latest
2827
steps:
29-
- uses: actions/checkout@v5
30-
31-
- name: Install .NET SDK
32-
uses: actions/setup-dotnet@v5
28+
- uses: actions/checkout@v6
29+
- uses: extractions/setup-just@v3
30+
- uses: actions/setup-dotnet@v5
3331
with:
3432
dotnet-version: 10.x.x
3533

3634
- name: Set up dotnet tools
37-
run: make install install-styleguide
35+
run: just install install-styleguide
3836

3937
- name: Restore NuGet Packages
40-
run: make restore
38+
run: just restore
4139

4240
# This Make step is configured to treat all warnings as errors, so it will fail if any warnings are found
4341
- name: Run static analysis
44-
run: make analyze
42+
run: just analyze
4543

4644
Security_Code_Scan:
4745
runs-on: windows-latest
4846
steps:
49-
- uses: actions/checkout@v5
50-
51-
- name: Install .NET SDK
52-
uses: actions/setup-dotnet@v5
47+
- uses: actions/checkout@v6
48+
- uses: extractions/setup-just@v3
49+
- uses: actions/setup-dotnet@v5
5350
with:
5451
# v6 is needed for the tool to run
5552
dotnet-version: |
5653
10.x.x
5754
6.x.x
5855
5956
- name: Set up dotnet tools and dependencies
60-
run: make install
57+
run: just install
6158

6259
- name: Run security analysis
63-
run: make scan
60+
run: just scan
6461

6562
Coverage_Requirements:
6663
runs-on: ubuntu-latest
6764
steps:
68-
- uses: actions/checkout@v5
69-
70-
- name: Install .NET SDK
71-
uses: actions/setup-dotnet@v5
65+
- uses: actions/checkout@v6
66+
- uses: extractions/setup-just@v3
67+
- uses: actions/setup-dotnet@v5
7268
with:
7369
dotnet-version: 10.x.x
7470

7571
- name: Set up dotnet tools and dependencies
76-
run: make install
72+
run: just install
7773

7874
- name: Check if test suite coverage meets requirements
79-
run: make coverage-check
75+
run: just coverage-check
8076

8177
Upload_Coverage_Report:
8278
if: github.ref == 'refs/heads/master'
8379
runs-on: ubuntu-latest
8480
steps:
85-
- uses: actions/checkout@v5
86-
87-
- name: Install .NET SDK
88-
uses: actions/setup-dotnet@v5
81+
- uses: actions/checkout@v6
82+
- uses: extractions/setup-just@v3
83+
- uses: actions/setup-dotnet@v5
8984
with:
9085
dotnet-version: 10.x.x
9186

9287
- name: Set up dotnet tools and dependencies
93-
run: make install
88+
run: just install
9489

9590
- name: Generate coverage report
96-
run: make coverage
91+
run: just coverage
9792

9893
- name: Upload lcov coverage report to Coveralls
9994
uses: coverallsapp/github-action@master
@@ -105,18 +100,17 @@ jobs:
105100
if: github.ref == 'refs/heads/master'
106101
runs-on: ubuntu-latest
107102
steps:
108-
- uses: actions/checkout@v5
109-
110-
- name: Install .NET SDK
111-
uses: actions/setup-dotnet@v5
103+
- uses: actions/checkout@v6
104+
- uses: extractions/setup-just@v3
105+
- uses: actions/setup-dotnet@v5
112106
with:
113107
dotnet-version: 10.x.x
114108

115109
- name: Install docfx
116-
run: make install-tools
110+
run: just install-tools
117111

118112
- name: Generate docs
119-
run: make docs
113+
run: just docs
120114

121115
- name: Deploy docs
122116
uses: peaceiris/actions-gh-pages@v3
@@ -128,11 +122,11 @@ jobs:
128122
# derived from https://dev.to/felipetofoli/github-actions-for-net-full-framework-build-and-test-299h
129123
runs-on: windows-latest
130124
env:
131-
EASYPOST_TEST_API_KEY: "123"
132-
EASYPOST_PROD_API_KEY: "123"
125+
EASYPOST_TEST_API_KEY: '123'
126+
EASYPOST_PROD_API_KEY: '123'
133127
strategy:
134128
matrix:
135-
name: ["Net60", "Net70", "Net80", "Net90", "Net100"]
129+
name: ['Net60', 'Net70', 'Net80', 'Net90', 'Net100']
136130
include:
137131
- name: Net60
138132
framework: net6.0
@@ -150,20 +144,19 @@ jobs:
150144
framework: net10.0
151145
dotnet-version: 10.x.x
152146
steps:
153-
- uses: actions/checkout@v5
147+
- uses: actions/checkout@v6
154148
with:
155149
submodules: true
156-
157-
- name: Install .NET SDK
158-
uses: actions/setup-dotnet@v5
150+
- uses: extractions/setup-just@v3
151+
- uses: actions/setup-dotnet@v5
159152
with:
160153
dotnet-version: |
161154
10.x.x
162155
${{ matrix.dotnet-version }}
163156
164157
- name: Specify .NET SDK version to use since GitHub runners have multiple installed
165158
run: |
166-
echo '{"sdk":{"version": "${{ matrix.dotnet-version }}"}}' > ./global.json
159+
echo '{"sdk":{"version": "${{ matrix.dotnet-version }}"}}' > ./global.json
167160
168161
- name: Setup MSBuild
169162
uses: microsoft/setup-msbuild@v2
@@ -180,25 +173,24 @@ jobs:
180173
${{ runner.os }}-nuget-
181174
182175
- name: Restore NuGet Packages
183-
run: make restore
176+
run: just restore
184177

185178
# Pull in fixtures submodule
186179
- name: Set up dotnet tools and dependencies
187-
run: make install
180+
run: just install
188181

189182
# Run the unit tests in a specific framework (verify that the library works in that framework)
190183
- name: Run Tests
191-
run: make unit-test FW=${{ matrix.framework }}
184+
run: just unit-test ${{ matrix.framework }}
192185

193186
Integration_Tests:
194187
runs-on: windows-latest
195188
steps:
196-
- uses: actions/checkout@v5
189+
- uses: actions/checkout@v6
197190
with:
198191
submodules: true
199-
200-
- name: Install .NET SDK
201-
uses: actions/setup-dotnet@v5
192+
- uses: extractions/setup-just@v3
193+
- uses: actions/setup-dotnet@v5
202194
with:
203195
dotnet-version: 10.x.x
204196

@@ -212,15 +204,15 @@ jobs:
212204
uses: darenm/Setup-VSTest@v1.3
213205

214206
- name: Restore NuGet Packages
215-
run: make restore
207+
run: just restore
216208

217209
# Pull in fixtures submodule
218210
- name: Set up dotnet tools and dependencies
219-
run: make install
211+
run: just install
220212

221213
# Run the integration tests
222214
- name: Run Tests
223-
run: make integration-test
215+
run: just integration-test
224216

225217
# .NET Standard notes:
226218
# - NET Standard 2.0 is compatible with minimum .NET Framework 4.6.1: https://docs.microsoft.com/en-us/dotnet/standard/net-standard?tabs=net-standard-2-0
@@ -235,19 +227,18 @@ jobs:
235227
# Need windows-2022 for .NET Framework 4.7.2 support
236228
runs-on: windows-2022
237229
steps:
238-
- uses: actions/checkout@v5
230+
- uses: actions/checkout@v6
239231
with:
240232
submodules: true
241-
242-
- name: Install .NET SDK
243-
uses: actions/setup-dotnet@v5
233+
- uses: extractions/setup-just@v3
234+
- uses: actions/setup-dotnet@v5
244235
id: setupid
245236
with:
246237
dotnet-version: 10.x.x
247238

248239
- name: Specify .NET SDK version to use since GitHub runners have multiple installed
249240
run: |
250-
echo '{"sdk":{"version": "${{ steps.setupid.outputs.dotnet-version }}"}}' > ./global.json
241+
echo '{"sdk":{"version": "${{ steps.setupid.outputs.dotnet-version }}"}}' > ./global.json
251242
252243
- name: Setup MSBuild
253244
uses: microsoft/setup-msbuild@v2
@@ -260,31 +251,30 @@ jobs:
260251

261252
# Pull in fixtures submodule
262253
- name: Set up dotnet tools and dependencies
263-
run: make install
254+
run: just install
264255

265256
- name: Restore NuGet Packages
266-
run: make restore build
257+
run: just restore build
267258

268259
# Run the compatibility tests
269260
- name: Run Tests
270-
run: make netstandard-compat-test FW=net472
261+
run: just netstandard-compat-test net472
271262

272263
FSharp_Compatibility_Tests:
273264
runs-on: windows-latest
274265
steps:
275-
- uses: actions/checkout@v5
266+
- uses: actions/checkout@v6
276267
with:
277268
submodules: true
278-
279-
- name: Install .NET SDK
280-
uses: actions/setup-dotnet@v5
269+
- uses: extractions/setup-just@v3
270+
- uses: actions/setup-dotnet@v5
281271
id: setupid
282272
with:
283273
dotnet-version: 10.x.x
284274

285275
- name: Specify .NET SDK version to use since GitHub runners have multiple installed
286276
run: |
287-
echo '{"sdk":{"version": "${{ steps.setupid.outputs.dotnet-version }}"}}' > ./global.json
277+
echo '{"sdk":{"version": "${{ steps.setupid.outputs.dotnet-version }}"}}' > ./global.json
288278
289279
- name: Setup MSBuild
290280
uses: microsoft/setup-msbuild@v2
@@ -296,32 +286,31 @@ jobs:
296286
uses: darenm/Setup-VSTest@v1.3
297287

298288
- name: Restore NuGet Packages
299-
run: make restore
289+
run: just restore
300290

301291
# Pull in fixtures submodule
302292
- name: Set up dotnet tools and dependencies
303-
run: make install
293+
run: just install
304294

305295
# Run the compatibility tests
306296
- name: Run Tests
307-
run: make fs-compat-test
297+
run: just fs-compat-test
308298

309299
Visual_Basic_Compatibility_Test:
310300
runs-on: windows-latest
311301
steps:
312-
- uses: actions/checkout@v5
302+
- uses: actions/checkout@v6
313303
with:
314304
submodules: true
315-
316-
- name: Install .NET SDK
317-
uses: actions/setup-dotnet@v5
305+
- uses: extractions/setup-just@v3
306+
- uses: actions/setup-dotnet@v5
318307
id: setupid
319308
with:
320309
dotnet-version: 10.x.x
321310

322311
- name: Specify .NET SDK version to use since GitHub runners have multiple installed
323312
run: |
324-
echo '{"sdk":{"version": "${{ steps.setupid.outputs.dotnet-version }}"}}' > ./global.json
313+
echo '{"sdk":{"version": "${{ steps.setupid.outputs.dotnet-version }}"}}' > ./global.json
325314
326315
- name: Setup MSBuild
327316
uses: microsoft/setup-msbuild@v2
@@ -333,12 +322,12 @@ jobs:
333322
uses: darenm/Setup-VSTest@v1.3
334323

335324
- name: Restore NuGet Packages
336-
run: make restore
325+
run: just restore
337326

338327
# Pull in fixtures submodule
339328
- name: Set up dotnet tools and dependencies
340-
run: make install
329+
run: just install
341330

342331
# Run the compatibility tests
343332
- name: Run Tests
344-
run: make vb-compat-test
333+
run: just vb-compat-test

.github/workflows/release.yml

Lines changed: 6 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -10,11 +10,9 @@ jobs:
1010
name: Publish to NuGet
1111
runs-on: windows-latest
1212
steps:
13-
- name: Checkout repository
14-
uses: actions/checkout@v5
15-
16-
- name: Install .NET SDK
17-
uses: actions/setup-dotnet@v5
13+
- uses: actions/checkout@v6
14+
- uses: extractions/setup-just@v3
15+
- uses: actions/setup-dotnet@v5
1816
with:
1917
dotnet-version: |
2018
6.x.x
@@ -27,10 +25,10 @@ jobs:
2725
uses: NuGet/setup-nuget@v2
2826

2927
- name: Restore NuGet Packages
30-
run: make restore
28+
run: just restore
3129

3230
- name: Set up dotnet tools and dependencies
33-
run: make install
31+
run: just install
3432

3533
- name: Set up authenticity certificate
3634
run: |
@@ -69,7 +67,7 @@ jobs:
6967
shell: cmd
7068

7169
- name: Publish to NuGet
72-
run: make publish key=${{ secrets.NUGET_API_KEY }}
70+
run: just publish key=${{ secrets.NUGET_API_KEY }}
7371

7472
- name: Upload NuGet package to release
7573
uses: AButler/upload-release-assets@v3.0.1

0 commit comments

Comments
 (0)