1717 - ' Makefile*'
1818 - ' .golangci.yaml'
1919 - ' !contrib/hello-finch/**'
20+ - ' .github/workflows/ci-release.yaml'
2021 - ' .github/workflows/release-automation.yaml'
2122 - ' .github/workflows/upload-installer-to-release.yaml'
2223 - ' .github/workflows/upload-msi-to-release.yaml'
2324 - ' .github/workflows/upload-deb-to-release.yaml'
24- - ' .github/workflows/build-and-test-msi.yaml'
2525 - ' .github/workflows/build-and-test-pkg.yaml'
26+ - ' .github/workflows/build-pkg.yaml'
27+ - ' .github/workflows/test-pkg.yaml'
28+ - ' .github/workflows/build-and-test-msi.yaml'
2629 - ' .github/workflows/build-and-test-deb.yaml'
27- - ' .github/workflows/build-linux.yaml'
30+ - ' .github/workflows/e2e-macos.yaml'
31+ - ' .github/workflows/e2e-windows.yaml'
32+ - ' .github/workflows/e2e-linux.yaml'
33+ - ' .github/workflows/e2e-ubuntu.yaml'
2834 - ' .github/workflows/get-version-and-tag-for-ref.yaml'
35+ # - '.github/workflows/build-linux.yaml'
2936 pull_request :
3037 branches :
3138 - main
3239 paths :
3340 - ' .github/workflows/ci-release.yaml'
3441 - ' .github/workflows/release-automation.yaml'
35- - ' .github/workflows/build-linux.yaml'
36- - ' .github/workflows/build-and-test-msi.yaml'
3742 - ' .github/workflows/build-and-test-pkg.yaml'
43+ - ' .github/workflows/build-pkg.yaml'
44+ - ' .github/workflows/test-pkg.yaml'
45+ - ' .github/workflows/build-and-test-msi.yaml'
3846 - ' .github/workflows/build-and-test-deb.yaml'
3947 - ' .github/workflows/get-version-and-tag-for-ref.yaml'
40- - ' deps/finch-core'
48+ - ' install-builder/**'
49+ - ' msi-builder/**'
50+ # - '.github/workflows/build-linux.yaml'
4151 workflow_dispatch :
4252
4353permissions :
@@ -52,194 +62,9 @@ concurrency:
5262 cancel-in-progress : true
5363
5464jobs :
55- git-secrets :
56- runs-on : ubuntu-latest
57- steps :
58- - name : Pull latest awslabs/git-secrets repo
59- uses : actions/checkout@8e8c483db84b4bee98b60c0593521ed34d9990e8 # v6.0.1
60- with :
61- repository : awslabs/git-secrets
62- ref : 1.3.0
63- fetch-tags : true
64- path : git-secrets
65- - name : Install git secrets from source
66- run : sudo make install
67- working-directory : git-secrets
68- - uses : actions/checkout@8e8c483db84b4bee98b60c0593521ed34d9990e8 # v6.0.1
69- - name : Scan repository for git secrets
70- run : |
71- git secrets --register-aws
72- git secrets --scan-history
73-
74- gen-code-no-diff :
75- strategy :
76- matrix :
77- os : [macos-latest, windows-latest, ubuntu-latest]
78- runs-on : ${{ matrix.os }}
79- steps :
80- - uses : actions/checkout@8e8c483db84b4bee98b60c0593521ed34d9990e8 # v6.0.1
81- - uses : actions/setup-go@4dc6199c7b1a012772edbd06daecab0f50c9053c # v6.1.0
82- with :
83- go-version-file : go.mod
84- cache : true
85- - run : make gen-code
86- - run : git diff --exit-code
87-
88- unit-tests :
89- strategy :
90- fail-fast : false
91- matrix :
92- os : [macos-latest, windows-latest, ubuntu-latest]
93- runs-on : ${{ matrix.os }}
94- steps :
95- - name : Configure git CRLF settings
96- run : |
97- git config --global core.autocrlf false
98- git config --global core.eol lf
99- - uses : actions/checkout@8e8c483db84b4bee98b60c0593521ed34d9990e8 # v6.0.1
100- - uses : actions/setup-go@4dc6199c7b1a012772edbd06daecab0f50c9053c # v6.1.0
101- with :
102- # Since this repository is not meant to be used as a library,
103- # we don't need to test the latest 2 major releases like Go does: https://go.dev/doc/devel/release#policy.
104- go-version-file : go.mod
105- cache : true
106- - run : make test-unit
107-
108- # It's recommended to run golangci-lint in a job separate from other jobs (go test, etc) because different jobs run in parallel.
109- go-linter :
110- name : lint
111- runs-on : ubuntu-latest
112- steps :
113- - uses : actions/checkout@8e8c483db84b4bee98b60c0593521ed34d9990e8 # v6.0.1
114- - uses : actions/setup-go@4dc6199c7b1a012772edbd06daecab0f50c9053c # v6.1.0
115- with :
116- go-version-file : go.mod
117- cache : false # caching can result in tar errors that files already exist
118- - name : set GOOS env to windows
119- run : |
120- echo "GOOS=windows" >> $GITHUB_ENV
121- - name : golangci-lint - windows
122- uses : golangci/golangci-lint-action@1e7e51e771db61008b38414a730f564565cf7c20 # v9.2.0
123- with :
124- # Pin the version in case all the builds start to fail at the same time.
125- # There may not be an automatic way (e.g., dependabot) to update a specific parameter of a GitHub Action,
126- # so we will just update it manually whenever it makes sense (e.g., a feature that we want is added).
127- version : v2.1.0
128- args : --fix=false --timeout=5m
129- - name : set GOOS env to darwin
130- run : |
131- echo "GOOS=darwin" >> $GITHUB_ENV
132- - name : golangci-lint - darwin
133- uses : golangci/golangci-lint-action@1e7e51e771db61008b38414a730f564565cf7c20 # v9.2.0
134- with :
135- # Pin the version in case all the builds start to fail at the same time.
136- # There may not be an automatic way (e.g., dependabot) to update a specific parameter of a GitHub Action,
137- # so we will just update it manually whenever it makes sense (e.g., a feature that we want is added).
138- version : v2.1.0
139- args : --fix=false --timeout=5m --skip-dirs="(^|/)deps($|/)"
140-
141- shellcheck :
142- name : ShellCheck
143- runs-on : ubuntu-latest
144- steps :
145- - uses : actions/checkout@8e8c483db84b4bee98b60c0593521ed34d9990e8 # v6.0.1
146- - name : Run ShellCheck
147- uses : ludeeus/action-shellcheck@00cae500b08a931fb5698e11e79bfbd38e612a38 # 2.0.0
148- with :
149- version : v0.9.0
150- continue-on-error : true
151-
152- go-mod-tidy-check :
153- runs-on : ubuntu-latest
154- steps :
155- - uses : actions/checkout@8e8c483db84b4bee98b60c0593521ed34d9990e8 # v6.0.1
156- - uses : actions/setup-go@4dc6199c7b1a012772edbd06daecab0f50c9053c # v6.1.0
157- with :
158- go-version-file : go.mod
159- cache : true
160- - run : go mod tidy -diff
161-
162- check-licenses :
163- runs-on : ubuntu-latest
164- steps :
165- - uses : actions/checkout@8e8c483db84b4bee98b60c0593521ed34d9990e8 # v6.0.1
166- - uses : actions/setup-go@4dc6199c7b1a012772edbd06daecab0f50c9053c # v6.1.0
167- with :
168- go-version-file : go.mod
169- cache : true
170- - run : make check-licenses
171-
172- macos-e2e-tests :
173- strategy :
174- fail-fast : false
175- matrix :
176- version : ['14', '15']
177- test-command : ['test-e2e-vm-serial', 'test-e2e-container', 'test-e2e-daemon']
178- arch : ['X64', 'arm64']
179- runner-type : ['test']
180- uses : ./.github/workflows/e2e-macos.yaml
65+ run-ci-checks :
66+ uses : ./.github/workflows/ci.yaml
18167 secrets : inherit
182- with :
183- arch : ${{ matrix.arch }}
184- version : ${{ matrix.version }}
185- runner-type : ${{ matrix.runner-type }}
186- test-command : ${{ matrix.test-command }}
187-
188- windows-e2e-tests :
189- strategy :
190- fail-fast : false
191- matrix :
192- test-command : ['test-e2e-vm-serial', 'test-e2e-container']
193- arch : ['amd64']
194- runner-type : ['test']
195- uses : ./.github/workflows/e2e-windows.yaml
196- secrets : inherit
197- with :
198- arch : ${{ matrix.arch }}
199- runner-type : ${{ matrix.runner-type }}
200- test-command : ${{ matrix.test-command }}
201-
202- linux-e2e-tests :
203- strategy :
204- fail-fast : false
205- matrix :
206- os : ['amazonlinux']
207- arch : ['X64', 'arm64']
208- version : ['2023', '2']
209- runner-type : ['test']
210- uses : ./.github/workflows/e2e-linux.yaml
211- secrets : inherit
212- with :
213- os : ${{ matrix.os }}
214- arch : ${{ matrix.arch }}
215- version : ${{ matrix.version }}
216- runner-type : ${{ matrix.runner-type }}
217-
218- ubuntu-e2e-tests :
219- strategy :
220- fail-fast : false
221- matrix :
222- arch : ['x86_64', 'arm64']
223- include :
224- - arch : ' x86_64'
225- output-arch : ' amd64'
226- - arch : ' arm64'
227- output-arch : ' arm64'
228- uses : ./.github/workflows/e2e-ubuntu.yaml
229- secrets : inherit
230- with :
231- arch : ${{ matrix.arch }}
232- output-arch : ${{ matrix.output-arch }}
233-
234- mdlint :
235- runs-on : ubuntu-latest
236- steps :
237- - uses : actions/checkout@d632683dd7b4114ad314bca15554477dd762a938 # v4.2.0
238- - uses : avto-dev/markdown-lint@04d43ee9191307b50935a753da3b775ab695eceb # v1.5.0
239- with :
240- args : ' **/*.md'
241- # CHANGELOG.md is only updated by release-please bot.
242- ignore : ' CHANGELOG.md'
24368
24469 get-intermediate-version :
24570 name : Get intermediate version
0 commit comments