Skip to content

Commit a45c1fc

Browse files
authored
Merge pull request #74 from OpenVPN/dependabot/github_actions/github-actions-167a898cab
Bump actions/setup-go from 5 to 6 in the github-actions group
2 parents 3b244f1 + afc4991 commit a45c1fc

File tree

6 files changed

+56
-16
lines changed

6 files changed

+56
-16
lines changed

.github/workflows/coverage.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -26,7 +26,7 @@ jobs:
2626
${{ runner.os }}-go-coverage-
2727
2828
- name: Set up Go
29-
uses: actions/setup-go@v5
29+
uses: actions/setup-go@v6
3030
with:
3131
go-version: "1.23"
3232
cache: false

.github/workflows/go.yml

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -24,11 +24,12 @@ jobs:
2424
environment: TestingEnv
2525
runs-on: ubuntu-latest
2626
strategy:
27+
fail-fast: false
2728
matrix:
2829
go:
29-
- "1.22"
3030
- "1.23"
3131
- "1.24"
32+
- "1.25"
3233

3334
steps:
3435
- uses: actions/checkout@v5
@@ -44,7 +45,7 @@ jobs:
4445
${{ runner.os }}-go-
4546
4647
- name: Set up Go
47-
uses: actions/setup-go@v5
48+
uses: actions/setup-go@v6
4849
with:
4950
go-version: ${{ matrix.go }}
5051
cache: false

.github/workflows/lint.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -16,7 +16,7 @@ jobs:
1616
- uses: actions/checkout@v5
1717

1818
- name: Set up Go
19-
uses: actions/setup-go@v5
19+
uses: actions/setup-go@v6
2020
with:
2121
go-version: "1.23"
2222

.github/workflows/release.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -17,7 +17,7 @@ jobs:
1717
fetch-depth: 0
1818

1919
- name: Set up Go
20-
uses: actions/setup-go@v5
20+
uses: actions/setup-go@v6
2121
with:
2222
go-version: "1.23"
2323

.github/workflows/security.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -18,7 +18,7 @@ jobs:
1818
- uses: actions/checkout@v5
1919

2020
- name: Set up Go
21-
uses: actions/setup-go@v5
21+
uses: actions/setup-go@v6
2222
with:
2323
go-version: "1.23"
2424

e2e/client_test.go

Lines changed: 49 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -292,16 +292,34 @@ func TestCreateNetwork(t *testing.T) {
292292
Connectors: []cloudconnexa.NetworkConnector{connector},
293293
TunnelingProtocol: "OPENVPN",
294294
}
295-
response, err := c.Networks.Create(network)
296-
require.NoError(t, err)
295+
296+
// Create network with 429 retry/backoff
297+
var response *cloudconnexa.Network
298+
var lastErr error
299+
for backoff, attempts := 200*time.Millisecond, 0; attempts < 8; attempts++ {
300+
response, err = c.Networks.Create(network)
301+
if err == nil {
302+
break
303+
}
304+
lastErr = err
305+
var apiErr *cloudconnexa.ErrClientResponse
306+
if errors.As(err, &apiErr) && apiErr.StatusCode() == 429 {
307+
time.Sleep(backoff)
308+
backoff *= 2
309+
continue
310+
}
311+
require.NoError(t, err)
312+
}
313+
require.NoError(t, lastErr)
314+
require.NotNil(t, response)
297315
fmt.Printf("created %s network\n", response.ID)
298316
// Ensure cleanup even if subsequent steps fail
299317
defer func() { _ = c.Networks.Delete(response.ID) }()
300318

301319
// Attempt to create a non-overlapping route with retries to avoid CI matrix collisions
302320
var testRoute *cloudconnexa.Route
303-
var lastErr error
304-
for attempts := 0; attempts < 20; attempts++ {
321+
lastErr = nil
322+
for backoff, attempts := 200*time.Millisecond, 0; attempts < 20; attempts++ {
305323
subnet, serr := findAvailableIPv4Subnet(c)
306324
require.NoError(t, serr)
307325
route := cloudconnexa.Route{
@@ -317,13 +335,16 @@ func TestCreateNetwork(t *testing.T) {
317335
lastErr = err
318336
var apiErr *cloudconnexa.ErrClientResponse
319337
if errors.As(err, &apiErr) {
320-
if apiErr.StatusCode() == 400 {
321-
// Overlap or validation error, refresh and retry
322-
time.Sleep(500 * time.Millisecond)
338+
if apiErr.StatusCode() == 400 { // overlap/validation
339+
time.Sleep(300 * time.Millisecond)
340+
continue
341+
}
342+
if apiErr.StatusCode() == 429 { // rate limit
343+
time.Sleep(backoff)
344+
backoff *= 2
323345
continue
324346
}
325347
}
326-
// Unexpected error
327348
require.NoError(t, err)
328349
}
329350
require.NoError(t, lastErr)
@@ -345,8 +366,26 @@ func TestCreateNetwork(t *testing.T) {
345366
Config: &serviceConfig,
346367
Routes: []*cloudconnexa.IPServiceRoute{&ipServiceRoute},
347368
}
348-
s, err := c.NetworkIPServices.Create(&service)
349-
require.NoError(t, err)
369+
370+
// Create IP service with 429 retry/backoff
371+
var s *cloudconnexa.NetworkIPServiceResponse
372+
lastErr = nil
373+
for backoff, attempts := 200*time.Millisecond, 0; attempts < 8; attempts++ {
374+
s, err = c.NetworkIPServices.Create(&service)
375+
if err == nil {
376+
break
377+
}
378+
lastErr = err
379+
var apiErr *cloudconnexa.ErrClientResponse
380+
if errors.As(err, &apiErr) && apiErr.StatusCode() == 429 {
381+
time.Sleep(backoff)
382+
backoff *= 2
383+
continue
384+
}
385+
require.NoError(t, err)
386+
}
387+
require.NoError(t, lastErr)
388+
require.NotNil(t, s)
350389
fmt.Printf("created %s service\n", s.ID)
351390
err = c.Networks.Delete(response.ID)
352391
require.NoError(t, err)

0 commit comments

Comments
 (0)