-
Notifications
You must be signed in to change notification settings - Fork 2.1k
130 lines (118 loc) · 3.09 KB
/
go.yml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
name: Go Tests
on:
push:
branches:
- main
- 'feat-**'
pull_request:
branches:
- main
- 'feat-**'
jobs:
full-test:
name: Full SDK and tools test
# Tests for actively maintained Go versions.
runs-on: ${{ matrix.os }}
strategy:
matrix:
os: [ubuntu-latest, macos-latest, windows-latest]
go-version:
- 1.19.x
- 1.20.x
steps:
- name: Checkout
uses: actions/checkout@v3
with:
fetch-depth: 1
- name: Setup Go
uses: actions/setup-go@v4
with:
go-version: ${{ matrix.go-version }}
- name: Test
shell: bash
# SDK is currently being released with go 1.18, this cannot perform
# ci-tests task until the release system is updated to go 1.19.
run: make unit-no-verify
deprecated-go-module-tests:
needs: full-test
name: Deprecated Go versions with module support
# Tests for deprecated Go versions with module support
runs-on: ${{ matrix.os }}
strategy:
matrix:
os: [ubuntu-latest, macos-latest, windows-latest]
go-version:
- 1.12.x
- 1.13.x
- 1.14.x
- 1.15.x
- 1.16.x
- 1.17.x
- 1.18.x
exclude:
- os: macos-latest
go-version: 1.12.x
- os: macos-latest
go-version: 1.13.x
- os: macos-latest
go-version: 1.14.x
- os: macos-latest
go-version: 1.15.x
- os: macos-latest
go-version: 1.16.x
steps:
- name: Checkout
uses: actions/checkout@v3
with:
fetch-depth: 1
- name: Setup Go
uses: actions/setup-go@v4
with:
go-version: ${{ matrix.go-version }}
- name: Test
shell: bash
run: make unit-old-go-race-cover
deprecated-pre-go-module-tests:
needs: full-test
name: Deprecated Go versions without module support
# Tests for deprecated Go versions without module support
#
# setup-go doesn't play well with old Go versions that need GOPATH
# * https://github.com/actions/setup-go/issues/14
# * https://github.com/actions/setup-go/issues/12
runs-on: ${{ matrix.os }}
strategy:
matrix:
os: [ubuntu-latest]
go-version:
- 1.5.x
- 1.6.x
- 1.7.x
- 1.8.x
- 1.9.x
- 1.10.x
- 1.11.x
- 1.12.x
include:
- os: windows-latest
go-version: 1.12.x
steps:
- name: Checkout
uses: actions/checkout@v3
with:
fetch-depth: 1
path: go/src/github.com/aws/aws-sdk-go
- name: Setup Go
uses: actions/setup-go@v4
with:
go-version: ${{ matrix.go-version }}
cache: false
- name: Setup Go env
shell: bash
run: |
echo "GOPATH=${{ github.workspace }}/go" >> $GITHUB_ENV
echo "${{ github.workspace }}/go/bin" >> $GITHUB_PATH
- name: Test
shell: bash
working-directory: go/src/github.com/aws/aws-sdk-go
run: make get-deps unit-old-go-race-cover