Nearly completely replace the original GitHub actions workflow.
Changes:
- Move from `.sh` files in `ci/steps` to steps in the workflow.
- Move from using docker images for environment to manual setup.
- Upgrade nfpm to v2.3.1
BREAKING CHANGE: official arm64 builds no longer support CentOS 7.
If you need to use CentOS 7 on arm64, build `code-server` locally.
For docs, see the yarn/npm section in `docs/install.md`.
* Run builds when changes are pushed to the main branch, or for pull
requests opened against the main branch. This is a subtle change
in behavior because, previously, builds would've run on pushes to
any branch, regardless if a pull request is open yet.
* Update to GitHub actions/checkout v2, which performs a shallow
clone by default, and should speed up the build.
Closes: #2559
Before this commit, if the tests fail then the artifacts don't get uploaded.
This makes it harder to debug failing e2e tests.
To prevent this, this commit adds an "if" condition which says always run this
step.
Source: https://stackoverflow.com/a/58859404/3015595
We only want to use an old version for glibc which the centos:7
image takes care of.
The old version of git used in debian:8 was causing problems
with the uid/gid passthrough with no user in passwd.
- Instead we now use CentOS 7 for the static build to guarantee
that we only depend on libc v2.17
- For macOS we now pull in a static node binary and bundle that instead.