-
-
Notifications
You must be signed in to change notification settings - Fork 3
131 lines (99 loc) · 2.53 KB
/
ci.yaml
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
131
name: ci
on:
pull_request:
merge_group:
concurrency:
group: ci-${{ github.ref }}
cancel-in-progress: true
jobs:
compile-provider:
runs-on: ubuntu-22.04
permissions:
contents: read
steps:
- name: Checkout
uses: actions/[email protected]
- name: Setup Go
uses: actions/[email protected]
with:
go-version-file: 'go.mod'
check-latest: true
cache: true
- name: Download modules
run: go mod download
- name: Compile
run: go build -trimpath .
check-docs:
runs-on: ubuntu-22.04
permissions:
contents: read
steps:
- name: Checkout
uses: actions/[email protected]
- name: Setup Go
uses: actions/[email protected]
with:
go-version-file: 'go.mod'
check-latest: true
cache: true
- name: Download modules
run: go mod download
- name: Check docs updated
run: |
make provider-docs
git diff --exit-code
- name: Print failure message
if: failure()
run: |
cat <<EOF >>"$GITHUB_STEP_SUMMARY"
## Documentation
The documentation is outdated, please ensure to run following command to update the documentation:
\`\`\`shell
make provider-docs
\`\`\`
Now commit the documentation and push the changes.
EOF
test-provider:
runs-on: ubuntu-22.04
needs: [compile-provider]
permissions:
contents: read
steps:
- name: Checkout
uses: actions/[email protected]
- name: Setup Go
uses: actions/[email protected]
with:
go-version-file: 'go.mod'
check-latest: true
cache: true
- name: Download modules
run: go mod download
- name: Test
run: make test
acceptancetest-provider:
runs-on: ${{ matrix.os }}
needs: [compile-provider]
permissions:
contents: read
strategy:
fail-fast: false
matrix:
os:
- ubuntu-22.04
# Kind action seems not to implement these os accordingly
# - windows-2022
# - macos-12
steps:
- name: Checkout
uses: actions/[email protected]
- name: Setup Go
uses: actions/[email protected]
with:
go-version-file: 'go.mod'
check-latest: true
cache: true
- name: Download modules
run: go mod download
- name: Acceptance test
run: make acc-test