@@ -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