* refactor(ci): only run ts jobs on ts changes
This modifies the `style-lint-typescript` and `test-js` jobs to only run
when there are changes in `site`.
* refactor(ci): only run lint-shellcheck on sh changes
* refactor(ci): only run go jobs on go changes
* refactor(ci): only run style-fmt when needed
This adds a new item to `changes` for `**.tf` changes. Now it will only
run `style-fmt` if PR includes changes to `site/**`, `**.tf`, or
`**.ts`.
* refactor(ci): run e2e on go, ts or tf changes
* refactor(ci): run gen on gen changes
* refactor(ci): delete old comments
* fixup: try moving if step inside test-go job
* fixup: try if all steps
* fixup!: refactor(ci): run gen on gen changes
* Revert "refactor(ci): run gen on gen changes"
This reverts commit d0a5ba1c4b.
* chore: build, sign and notarize darwin binaries on linux
* chore: download rcodesign during release
* chore: change nfpm install to be a download instead of compile
* chore: delete apple cert secrets after build
* fix: fix dependencies in archive.sh and build_go.sh
* chore: reduce output from rcodesign
This was breaking the release process. Namely it was running
the `gen` targets due to the dependency tree, which was failing
on macOS and Linux runners. This revert can be reverted once
we fix that up.
This caused the following issues:
- Slim binaries weren't being updated.
- The coder.tar.ztd was misplaced.
- There is no coder.sha1 file with proper filenames.
This should be reintroduced in a future change with those fixes.
* fix: don't use adduser and addgroup for docker images
* Revert "fix: Remove alternative image architectures until we virtualize (#3336)"
This reverts commit 00c5116a2e.
With the addition of a command being executed inside the Docker build,
we could no longer build non-amd64 images on amd64. They will be added
back, but to allow for releases this temporarily removes them.
* fix: Remove explicit coverpkg github.com/coder/coder/codersdk
This package is already covered by ./...
* fix: Ignore test utils in coverage (clitest, coderdtest, ptytest)
This PR introduces many CI optimizations:
1. The `[ci-skip]` PR body directive to skip the Postgres and end to end tests
2. Improved caching that cuts the Go test matrix in half
3. Increasing Go test parallelism for ~20% gains
4. Enable caching in webpack (4x frontend build)