Skip to content

Commit 0a4e9ce

Browse files
author
Akash Satheesan
committed
chore(ci): add macos build, docker release
1 parent 78c3c97 commit 0a4e9ce

File tree

1 file changed

+47
-16
lines changed

1 file changed

+47
-16
lines changed

.github/workflows/ci.yaml

+47-16
Original file line numberDiff line numberDiff line change
@@ -118,19 +118,26 @@ jobs:
118118
name: npm-package
119119
path: ./package.tar.gz
120120

121-
linux-amd64:
121+
# We use Ubuntu 16.04 here, so that our build is more compatible
122+
# with older libc versions. We used to (Q1'20) use CentOS 7 here,
123+
# but it has a full update EOL of Q4'20 and a 'critical security'
124+
# update EOL of 2024. We're dropping our full support 3 quarters
125+
# early, but this gets us CI speed benefits on GH.
126+
127+
# TODO: cache building yarn --production
128+
# possibly 2m30s of savings(?)
129+
# this requires refactoring our release scripts
130+
131+
# TODO: cross-compile on arm64
132+
package:
122133
name: Linux x86-64 build
123134
needs: build
135+
runs-on: ${{ matrix.os }}
136+
strategy:
137+
matrix:
138+
os: [ubuntu-16.04, macos-latest]
139+
fail-fast: false
124140

125-
# We use Ubuntu 16.04 here, so that our build is more compatible
126-
# with older libc versions. We used to (Q1'20) use CentOS 7 here,
127-
# but it has a full update EOL of Q4'20 and a 'critical security'
128-
# update EOL of 2024. We're dropping our full support 3 quarters
129-
# early, but this gets us CI speed benefits on GH.
130-
131-
# TODO: cache building yarn --production
132-
# this requires refactoring our release scripts
133-
runs-on: ubuntu-16.04
134141
steps:
135142
- uses: actions/checkout@v2
136143

@@ -152,11 +159,14 @@ jobs:
152159
- name: Decompress npm package
153160
run: tar -xzf package.tar.gz
154161

155-
- name: Build and test yarn package
156-
run: |
157-
yarn release:standalone
158-
yarn test:standalone-release
159-
yarn package
162+
- name: Build standalone release
163+
run: yarn release:standalone
164+
165+
- name: Sanity test standalone release
166+
run: yarn test:standalone-release
167+
168+
- name: Build packages with nfpm
169+
run: yarn package
160170

161171
- name: Upload release artifacts
162172
uses: actions/upload-artifact@v2
@@ -166,7 +176,7 @@ jobs:
166176

167177
test-e2e:
168178
name: End-to-end tests
169-
needs: linux-amd64
179+
needs: package
170180
runs-on: ubuntu-latest
171181
env:
172182
PASSWORD: e45432jklfdsab
@@ -217,3 +227,24 @@ jobs:
217227

218228
- name: Remove release packages and test artifacts
219229
run: rm -rf ./release-packages ./test/e2e/videos
230+
231+
docker-amd64:
232+
runs-on: ubuntu-latest
233+
needs: package
234+
steps:
235+
- uses: actions/checkout@v2
236+
237+
- name: Download release package
238+
uses: actions/download-artifact@v2
239+
with:
240+
name: release-packages
241+
path: ./release-packages
242+
243+
- name: Run ./ci/steps/build-docker-image.sh
244+
run: ./ci/steps/build-docker-image.sh
245+
246+
- name: Upload release image
247+
uses: actions/upload-artifact@v2
248+
with:
249+
name: release-images
250+
path: ./release-images

0 commit comments

Comments
 (0)