Skip to content

Commit 11573f0

Browse files
committed
Update actions, add linting, tweak runners
Signed-off-by: Neil Twigg <[email protected]>
1 parent beb30fb commit 11573f0

File tree

1 file changed

+53
-49
lines changed

1 file changed

+53
-49
lines changed

.github/workflows/tests.yaml

+53-49
Original file line numberDiff line numberDiff line change
@@ -3,13 +3,28 @@ name: NATS Server Tests
33
on: [push]
44

55
env:
6-
GO_VERSION: "^1.21"
6+
GO_VERSION: "1.21"
77

88
concurrency:
99
group: ${{ github.workflow }}-${{ github.ref }}
1010
cancel-in-progress: true
1111

1212
jobs:
13+
lint:
14+
name: Lint
15+
runs-on: ubuntu-latest
16+
steps:
17+
- name: Checkout
18+
uses: actions/checkout@v4
19+
20+
- name: Install Go ${{ env.GO_VERSION }}
21+
uses: actions/setup-go@v5
22+
with:
23+
go-version: ${{ env.GO_VERSION }}
24+
25+
- name: Run golangci-lint
26+
uses: golangci/golangci-lint-action@v4
27+
1328
build:
1429
name: Build (${{ matrix.os }})
1530
strategy:
@@ -19,102 +34,90 @@ jobs:
1934
runs-on: ${{ matrix.os }}
2035
steps:
2136
- name: Checkout
22-
uses: actions/checkout@v3
37+
uses: actions/checkout@v4
2338

2439
- name: Install Go ${{ env.GO_VERSION }}
25-
uses: actions/setup-go@v4
40+
uses: actions/setup-go@v5
2641
with:
2742
go-version: ${{ env.GO_VERSION }}
2843

2944
- name: Build NATS Server
3045
run: go build
3146

32-
lint:
33-
name: Lint
34-
runs-on: ubuntu-latest
35-
steps:
36-
- name: Checkout
37-
uses: actions/checkout@v3
38-
39-
- name: Install Go ${{ env.GO_VERSION }}
40-
uses: actions/setup-go@v4
41-
with:
42-
go-version: ${{ env.GO_VERSION }}
43-
4447
js-no-cluster:
4548
name: JetStream tests
4649
needs: [build, lint]
47-
runs-on: ubuntu-latest
50+
runs-on: ubuntu-latest-8-cores
4851
steps:
4952
- name: Checkout
50-
uses: actions/checkout@v3
53+
uses: actions/checkout@v4
5154

5255
- name: Install Go ${{ env.GO_VERSION }}
53-
uses: actions/setup-go@v4
56+
uses: actions/setup-go@v5
5457
with:
5558
go-version: ${{ env.GO_VERSION }}
5659

5760
- name: Run unit tests
5861
run: go test -race -v -run=TestJetStream ./server/... -tags=skip_js_cluster_tests,skip_js_cluster_tests_2,skip_js_cluster_tests_3,skip_js_super_cluster_tests -count=1 -vet=off -timeout=30m -failfast
5962

6063
js-cluster-1:
61-
name: JetStream cluster tests (1)
64+
name: JetStream Cluster tests (1)
6265
needs: [build, lint]
63-
runs-on: ubuntu-latest
66+
runs-on: ubuntu-latest-8-cores
6467
steps:
6568
- name: Checkout
66-
uses: actions/checkout@v3
69+
uses: actions/checkout@v4
6770

6871
- name: Install Go ${{ env.GO_VERSION }}
69-
uses: actions/setup-go@v4
72+
uses: actions/setup-go@v5
7073
with:
7174
go-version: ${{ env.GO_VERSION }}
7275

7376
- name: Run unit tests
7477
run: go test -race -v -run=TestJetStreamCluster ./server/... -tags=skip_js_cluster_tests_2,skip_js_cluster_tests_3 -count=1 -vet=off -timeout=30m -failfast
7578

7679
js-cluster-2:
77-
name: JetStream cluster tests (2)
80+
name: JetStream Cluster tests (2)
7881
needs: [build, lint]
79-
runs-on: ubuntu-latest
82+
runs-on: ubuntu-latest-8-cores
8083
steps:
8184
- name: Checkout
82-
uses: actions/checkout@v3
85+
uses: actions/checkout@v4
8386

8487
- name: Install Go ${{ env.GO_VERSION }}
85-
uses: actions/setup-go@v4
88+
uses: actions/setup-go@v5
8689
with:
8790
go-version: ${{ env.GO_VERSION }}
8891

8992
- name: Run unit tests
9093
run: go test -race -v -run=TestJetStreamCluster ./server/... -tags=skip_js_cluster_tests,skip_js_cluster_tests_3 -count=1 -vet=off -timeout=30m -failfast
9194

9295
js-cluster-3:
93-
name: JetStream cluster tests (3)
96+
name: JetStream Cluster tests (3)
9497
needs: [build, lint]
95-
runs-on: ubuntu-latest
98+
runs-on: ubuntu-latest-8-cores
9699
steps:
97100
- name: Checkout
98-
uses: actions/checkout@v3
101+
uses: actions/checkout@v4
99102

100103
- name: Install Go ${{ env.GO_VERSION }}
101-
uses: actions/setup-go@v4
104+
uses: actions/setup-go@v5
102105
with:
103106
go-version: ${{ env.GO_VERSION }}
104107

105108
- name: Run unit tests
106109
run: go test -race -v -run=TestJetStreamCluster ./server/... -tags=skip_js_cluster_tests,skip_js_cluster_tests_2 -count=1 -vet=off -timeout=30m -failfast
107110

108111
js-supercluster:
109-
name: JetStream supercluster tests
112+
name: JetStream Supercluster tests
110113
needs: [build, lint]
111-
runs-on: ubuntu-latest
114+
runs-on: ubuntu-latest-8-cores
112115
steps:
113116
- name: Checkout
114-
uses: actions/checkout@v3
117+
uses: actions/checkout@v4
115118

116119
- name: Install Go ${{ env.GO_VERSION }}
117-
uses: actions/setup-go@v4
120+
uses: actions/setup-go@v5
118121
with:
119122
go-version: ${{ env.GO_VERSION }}
120123

@@ -124,13 +127,13 @@ jobs:
124127
no-race:
125128
name: No-race tests
126129
needs: [build, lint]
127-
runs-on: ubuntu-latest
130+
runs-on: ubuntu-latest-8-cores
128131
steps:
129132
- name: Checkout
130-
uses: actions/checkout@v3
133+
uses: actions/checkout@v4
131134

132135
- name: Install Go ${{ env.GO_VERSION }}
133-
uses: actions/setup-go@v4
136+
uses: actions/setup-go@v5
134137
with:
135138
go-version: ${{ env.GO_VERSION }}
136139

@@ -139,14 +142,15 @@ jobs:
139142

140143
js-chaos:
141144
name: JetStream chaos tests
145+
if: ${{ false }} # Don't run for now
142146
needs: [build, lint]
143-
runs-on: ubuntu-latest
147+
runs-on: ubuntu-latest-8-cores
144148
steps:
145149
- name: Checkout
146-
uses: actions/checkout@v3
150+
uses: actions/checkout@v4
147151

148152
- name: Install Go ${{ env.GO_VERSION }}
149-
uses: actions/setup-go@v4
153+
uses: actions/setup-go@v5
150154
with:
151155
go-version: ${{ env.GO_VERSION }}
152156

@@ -156,13 +160,13 @@ jobs:
156160
mqtt:
157161
name: MQTT tests
158162
needs: [build, lint]
159-
runs-on: ubuntu-latest
163+
runs-on: ubuntu-latest-4-cores
160164
steps:
161165
- name: Checkout
162-
uses: actions/checkout@v3
166+
uses: actions/checkout@v4
163167

164168
- name: Install Go ${{ env.GO_VERSION }}
165-
uses: actions/setup-go@v4
169+
uses: actions/setup-go@v5
166170
with:
167171
go-version: ${{ env.GO_VERSION }}
168172

@@ -172,13 +176,13 @@ jobs:
172176
server-pkg-non-js:
173177
name: Non-JetStream/MQTT tests
174178
needs: [build, lint]
175-
runs-on: ubuntu-latest
179+
runs-on: ubuntu-latest-8-cores
176180
steps:
177181
- name: Checkout
178-
uses: actions/checkout@v3
182+
uses: actions/checkout@v4
179183

180184
- name: Install Go ${{ env.GO_VERSION }}
181-
uses: actions/setup-go@v4
185+
uses: actions/setup-go@v5
182186
with:
183187
go-version: ${{ env.GO_VERSION }}
184188

@@ -188,13 +192,13 @@ jobs:
188192
non-server-pkg:
189193
name: Tests from all other packages
190194
needs: [build, lint]
191-
runs-on: ubuntu-latest
195+
runs-on: ubuntu-latest-4-cores
192196
steps:
193197
- name: Checkout
194-
uses: actions/checkout@v3
198+
uses: actions/checkout@v4
195199

196200
- name: Install Go ${{ env.GO_VERSION }}
197-
uses: actions/setup-go@v4
201+
uses: actions/setup-go@v5
198202
with:
199203
go-version: ${{ env.GO_VERSION }}
200204

0 commit comments

Comments
 (0)