diff --git a/.github/workflows/ci.yaml b/.github/workflows/ci.yaml index 9f238ad30e3d9..7373e10744b61 100644 --- a/.github/workflows/ci.yaml +++ b/.github/workflows/ci.yaml @@ -31,15 +31,16 @@ env: jobs: lint: - runs-on: ${{ github.repository_owner == 'coder' && 'ubuntu-latest-8-cores' || 'ubuntu-latest' }} + runs-on: ${{ github.repository_owner == 'coder' && 'buildjet-8vcpu-ubuntu-2204' || 'ubuntu-latest' }} steps: - name: Checkout uses: actions/checkout@v3 # Install Go! - - uses: actions/setup-go@v4 + - uses: buildjet/setup-go@v4 with: go-version: ${{ env.CODER_GO_VERSION }} + cache: true # Check for any typos! - name: Check for typos @@ -69,7 +70,7 @@ jobs: # Lint our dashboard! - name: Cache node_modules id: cache-node - uses: actions/cache@v3 + uses: buildjet/cache@v3 with: path: | **/node_modules @@ -132,7 +133,7 @@ jobs: gen: timeout-minutes: 8 - runs-on: ${{ github.repository_owner == 'coder' && 'ubuntu-latest-8-cores' || 'ubuntu-latest' }} + runs-on: ${{ github.repository_owner == 'coder' && 'buildjet-8vcpu-ubuntu-2204' || 'ubuntu-latest' }} needs: changes if: needs.changes.outputs.docs-only == 'false' steps: @@ -140,7 +141,7 @@ jobs: - name: Cache Node id: cache-node - uses: actions/cache@v3 + uses: buildjet/cache@v3 with: path: | **/node_modules @@ -152,7 +153,7 @@ jobs: - name: Install node_modules run: ./scripts/yarn_install.sh - - uses: actions/setup-go@v4 + - uses: buildjet/setup-go@v4 with: cache: false go-version: ${{ env.CODER_GO_VERSION }} @@ -164,13 +165,13 @@ jobs: echo "GOMODCACHE=$(go env GOMODCACHE)" >> $GITHUB_OUTPUT - name: Go Build Cache - uses: actions/cache@v3 + uses: buildjet/cache@v3 with: path: ${{ steps.go-cache-paths.outputs.GOCACHE }} key: ${{ github.job }}-go-build-${{ hashFiles('**/go.sum', '**/**.go') }} - name: Go Mod Cache - uses: actions/cache@v3 + uses: buildjet/cache@v3 with: path: ${{ steps.go-cache-paths.outputs.GOMODCACHE }} key: ${{ github.job }}-go-mod-${{ hashFiles('**/go.sum') }} @@ -220,7 +221,7 @@ jobs: - name: Cache Node id: cache-node - uses: actions/cache@v3 + uses: buildjet/cache@v3 with: path: | **/node_modules @@ -244,18 +245,18 @@ jobs: run: ./scripts/check_unstaged.sh test-go: - runs-on: ${{ matrix.os == 'ubuntu-latest' && github.repository_owner == 'coder' && 'ubuntu-latest-8-cores' || matrix.os == 'windows-2022' && github.repository_owner == 'coder' && 'windows-latest-8-cores'|| matrix.os }} + runs-on: ${{ matrix.os == 'ubuntu-latest' && github.repository_owner == 'coder' && 'buildjet-4vcpu-ubuntu-2204' || matrix.os == 'windows-2019' && github.repository_owner == 'coder' && 'windows-latest-8-cores'|| matrix.os }} timeout-minutes: 20 strategy: matrix: os: - ubuntu-latest - macos-latest - - windows-2022 + - windows-2019 steps: - uses: actions/checkout@v3 - - uses: actions/setup-go@v4 + - uses: buildjet/setup-go@v4 with: cache: false go-version: ${{ env.CODER_GO_VERSION }} @@ -267,13 +268,13 @@ jobs: echo "GOMODCACHE=$(go env GOMODCACHE)" >> ${{ runner.os == 'Windows' && '$env:' || '$' }}GITHUB_OUTPUT - name: Go Build Cache - uses: actions/cache@v3 + uses: buildjet/cache@v3 with: path: ${{ steps.go-cache-paths.outputs.GOCACHE }} key: ${{ runner.os }}-go-build-${{ hashFiles('**/go.**', '**.go') }} - name: Go Mod Cache - uses: actions/cache@v3 + uses: buildjet/cache@v3 with: path: ${{ steps.go-cache-paths.outputs.GOMODCACHE }} key: ${{ runner.os }}-go-mod-${{ hashFiles('**/go.sum') }} @@ -335,7 +336,7 @@ jobs: flags: unittest-go-${{ matrix.os }} test-go-psql: - runs-on: ${{ github.repository_owner == 'coder' && 'ubuntu-latest-8-cores' || 'ubuntu-latest' }} + runs-on: ${{ github.repository_owner == 'coder' && 'buildjet-8vcpu-ubuntu-2204' || 'ubuntu-latest' }} # This timeout must be greater than the timeout set by `go test` in # `make test-postgres` to ensure we receive a trace of running # goroutines. Setting this to the timeout +5m should work quite well @@ -344,7 +345,7 @@ jobs: steps: - uses: actions/checkout@v3 - - uses: actions/setup-go@v4 + - uses: buildjet/setup-go@v4 with: cache: false go-version: ${{ env.CODER_GO_VERSION }} @@ -356,13 +357,13 @@ jobs: echo "GOMODCACHE=$(go env GOMODCACHE)" >> $GITHUB_OUTPUT - name: Go Build Cache - uses: actions/cache@v3 + uses: buildjet/cache@v3 with: path: ${{ steps.go-cache-paths.outputs.GOCACHE }} key: ${{ runner.os }}-go-build-${{ hashFiles('**/go.sum', '**/**.go') }} - name: Go Mod Cache - uses: actions/cache@v3 + uses: buildjet/cache@v3 with: path: ${{ steps.go-cache-paths.outputs.GOMODCACHE }} key: ${{ runner.os }}-go-mod-${{ hashFiles('**/go.sum') }} @@ -413,7 +414,7 @@ jobs: deploy: name: "deploy" - runs-on: ${{ github.repository_owner == 'coder' && 'ubuntu-latest-8-cores' || 'ubuntu-latest' }} + runs-on: ${{ github.repository_owner == 'coder' && 'buildjet-8vcpu-ubuntu-2204' || 'ubuntu-latest' }} timeout-minutes: 30 needs: changes if: | @@ -436,7 +437,7 @@ jobs: - name: Set up Google Cloud SDK uses: google-github-actions/setup-gcloud@v1 - - uses: actions/setup-go@v4 + - uses: buildjet/setup-go@v4 with: cache: false go-version: ${{ env.CODER_GO_VERSION }} @@ -448,20 +449,20 @@ jobs: echo "GOMODCACHE=$(go env GOMODCACHE)" >> $GITHUB_OUTPUT - name: Go Build Cache - uses: actions/cache@v3 + uses: buildjet/cache@v3 with: path: ${{ steps.go-cache-paths.outputs.GOCACHE }} key: ${{ runner.os }}-release-go-build-${{ hashFiles('**/go.sum') }} - name: Go Mod Cache - uses: actions/cache@v3 + uses: buildjet/cache@v3 with: path: ${{ steps.go-cache-paths.outputs.GOMODCACHE }} key: ${{ runner.os }}-release-go-mod-${{ hashFiles('**/go.sum') }} - name: Cache Node id: cache-node - uses: actions/cache@v3 + uses: buildjet/cache@v3 with: path: | **/node_modules @@ -532,14 +533,14 @@ jobs: retention-days: 7 test-js: - runs-on: ${{ github.repository_owner == 'coder' && 'ubuntu-latest-8-cores' || 'ubuntu-latest' }} + runs-on: ${{ github.repository_owner == 'coder' && 'buildjet-8vcpu-ubuntu-2204' || 'ubuntu-latest' }} timeout-minutes: 20 steps: - uses: actions/checkout@v3 - name: Cache Node id: cache-node - uses: actions/cache@v3 + uses: buildjet/cache@v3 with: path: | **/node_modules @@ -548,7 +549,7 @@ jobs: restore-keys: | js-${{ runner.os }}- - - uses: actions/setup-node@v3 + - uses: buildjet/setup-node@v3 with: node-version: "16.16.0" @@ -574,21 +575,21 @@ jobs: needs: - changes if: needs.changes.outputs.docs-only == 'false' - runs-on: ${{ github.repository_owner == 'coder' && 'ubuntu-latest-8-cores' || 'ubuntu-latest' }} + runs-on: ${{ github.repository_owner == 'coder' && 'buildjet-8vcpu-ubuntu-2204' || 'ubuntu-latest' }} timeout-minutes: 20 steps: - uses: actions/checkout@v3 - name: Cache Node id: cache-node - uses: actions/cache@v3 + uses: buildjet/cache@v3 with: path: | **/node_modules .eslintcache key: js-${{ runner.os }}-e2e-${{ hashFiles('**/yarn.lock') }} - - uses: actions/setup-go@v4 + - uses: buildjet/setup-go@v4 with: cache: false go-version: ${{ env.CODER_GO_VERSION }} @@ -598,7 +599,7 @@ jobs: terraform_version: 1.1.9 terraform_wrapper: false - - uses: actions/setup-node@v3 + - uses: buildjet/setup-node@v3 with: node-version: "16.16.0" @@ -609,13 +610,13 @@ jobs: echo "GOMODCACHE=$(go env GOMODCACHE)" >> $GITHUB_OUTPUT - name: Go Build Cache - uses: actions/cache@v3 + uses: buildjet/cache@v3 with: path: ${{ steps.go-cache-paths.outputs.GOCACHE }} key: ${{ runner.os }}-go-build-${{ hashFiles('**/go.sum') }} - name: Go Mod Cache - uses: actions/cache@v3 + uses: buildjet/cache@v3 with: path: ${{ steps.go-cache-paths.outputs.GOMODCACHE }} key: ${{ runner.os }}-go-mod-${{ hashFiles('**/go.sum') }} @@ -654,7 +655,7 @@ jobs: # only get 1 commit on shallow checkout. fetch-depth: 0 - - uses: actions/setup-node@v3 + - uses: buildjet/setup-node@v3 with: node-version: "16.16.0" diff --git a/.github/workflows/release.yaml b/.github/workflows/release.yaml index 4fb703f3977be..203a6c05dd49e 100644 --- a/.github/workflows/release.yaml +++ b/.github/workflows/release.yaml @@ -40,7 +40,7 @@ env: jobs: release: name: Build and publish - runs-on: ${{ github.repository_owner == 'coder' && 'ubuntu-latest-8-cores' || 'ubuntu-latest' }} + runs-on: ${{ github.repository_owner == 'coder' && 'buildjet-8vcpu-ubuntu-2204' || 'ubuntu-latest' }} env: # Necessary for Docker manifest DOCKER_CLI_EXPERIMENTAL: "enabled" @@ -98,13 +98,14 @@ jobs: username: ${{ github.actor }} password: ${{ secrets.GITHUB_TOKEN }} - - uses: actions/setup-go@v4 + - uses: buildjet/setup-go@v4 with: go-version: ${{ env.CODER_GO_VERSION }} + cache: true - name: Cache Node id: cache-node - uses: actions/cache@v3 + uses: buildjet/cache@v3 with: path: | **/node_modules diff --git a/.github/workflows/security.yaml b/.github/workflows/security.yaml index f397bd6ad53c5..373aa9456e934 100644 --- a/.github/workflows/security.yaml +++ b/.github/workflows/security.yaml @@ -23,7 +23,7 @@ env: jobs: codeql: - runs-on: ${{ github.repository_owner == 'coder' && 'ubuntu-latest-8-cores' || 'ubuntu-latest' }} + runs-on: ${{ github.repository_owner == 'coder' && 'buildjet-8vcpu-ubuntu-2204' || 'ubuntu-latest' }} steps: - uses: actions/checkout@v3 @@ -33,7 +33,7 @@ jobs: languages: go, javascript - name: Setup Go - uses: actions/setup-go@v4 + uses: buildjet/setup-go@v4 with: go-version: ${{ env.CODER_GO_VERSION }} @@ -57,19 +57,20 @@ jobs: "${{ secrets.SLACK_SECURITY_FAILURE_WEBHOOK_URL }}" trivy: - runs-on: ${{ github.repository_owner == 'coder' && 'ubuntu-latest-8-cores' || 'ubuntu-latest' }} + runs-on: ${{ github.repository_owner == 'coder' && 'buildjet-8vcpu-ubuntu-2204' || 'ubuntu-latest' }} steps: - uses: actions/checkout@v3 with: fetch-depth: 0 - - uses: actions/setup-go@v4 + - uses: buildjet/setup-go@v4 with: go-version: ${{ env.CODER_GO_VERSION }} + cache: true - name: Cache Node id: cache-node - uses: actions/cache@v3 + uses: buildjet/cache@v3 with: path: | **/node_modules