Skip to content

Commit

Permalink
CUS-345: CI: use self-hosted runners (#7)
Browse files Browse the repository at this point in the history
This change moves the various workflow steps from Github hosted runners
to our self-hosted runners, so that we control the CI environment and
save on Github action minutes spent. Since the self-hosted runners don't
have the Go toolchain installed, these builds are removed (hopefully
temporarily, while we resolve this issue).

Tested: workflows successfully run on this PR

Bug: CUS-345
  • Loading branch information
jayconrod authored Jul 15, 2024
1 parent 572a2d6 commit 06c6c42
Show file tree
Hide file tree
Showing 2 changed files with 77 additions and 35 deletions.
54 changes: 38 additions & 16 deletions .github/workflows/main.yml
Original file line number Diff line number Diff line change
Expand Up @@ -9,26 +9,48 @@ on:
concurrency:
group: ${{ github.workflow }}.${{ github.ref }}

# Recommended here: https://github.com/bazelbuild/bazelisk/issues/88#issuecomment-625178467
env:
BAZELISK_GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
OPAL_RPC_CREDENTIALS: ${{ secrets.OPAL_RPC_CREDENTIALS }}

jobs:
bazel-builder:
runs-on: ubuntu-latest
timeout-minutes: 5
test-matrix:
runs-on:
- self-hosted
- "os=${{ matrix.os }}"
- "arch=${{ matrix.arch }}"
- "os_distribution=${{ matrix.os_distribution }}"
- "os_version=${{ matrix.os_version }}"
- "revision=${{ matrix.revision }}"
timeout-minutes: 10
strategy:
fail-fast: false
matrix:
include:
- os: "linux"
arch: "x64"
os_distribution: "debian"
os_version: "12"
revision: "d04e89854b3931f4aaced77aa3a2fcad5834b3a6"

steps:
- uses: actions/checkout@v4
- name: run all tests
run: |
bazel test --config=noninteractive //...
- os: "macos"
arch: "x64"
os_distribution: "monterey"
os_version: "12"
revision: "d04e89854b3931f4aaced77aa3a2fcad5834b3a6"

golang-builder:
runs-on: ubuntu-latest
timeout-minutes: 5
- os: "windows"
arch: "x64"
os_distribution: "server"
os_version: "2022"
revision: "d04e89854b3931f4aaced77aa3a2fcad5834b3a6"

steps:
- uses: actions/checkout@v4
- name: build all
run: |
go build ./...
- name: run all tests

- name: Test with Bazel
run: |
go test ./...
# TODO(CUS-345): Enable remote execution
bazel test --config=noninteractive //...
58 changes: 39 additions & 19 deletions .github/workflows/presubmit.yml
Original file line number Diff line number Diff line change
Expand Up @@ -11,28 +11,48 @@ concurrency:
group: ${{ github.workflow }}.${{ github.ref }}
cancel-in-progress: true

# Recommended here: https://github.com/bazelbuild/bazelisk/issues/88#issuecomment-625178467
env:
BAZELISK_GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
OPAL_RPC_CREDENTIALS: ${{ secrets.OPAL_RPC_CREDENTIALS }}

jobs:
bazel-builder:
# TODO(scott): Move to CI runners
runs-on: ubuntu-latest
timeout-minutes: 5
test-matrix:
runs-on:
- self-hosted
- "os=${{ matrix.os }}"
- "arch=${{ matrix.arch }}"
- "os_distribution=${{ matrix.os_distribution }}"
- "os_version=${{ matrix.os_version }}"
- "revision=${{ matrix.revision }}"
timeout-minutes: 10
strategy:
fail-fast: false
matrix:
include:
- os: "linux"
arch: "x64"
os_distribution: "debian"
os_version: "12"
revision: "d04e89854b3931f4aaced77aa3a2fcad5834b3a6"

steps:
- uses: actions/checkout@v4
- name: run all tests
run: |
bazel test --config=noninteractive //...
- os: "macos"
arch: "x64"
os_distribution: "monterey"
os_version: "12"
revision: "d04e89854b3931f4aaced77aa3a2fcad5834b3a6"

golang-builder:
runs-on: ubuntu-latest
timeout-minutes: 5
- os: "windows"
arch: "x64"
os_distribution: "server"
os_version: "2022"
revision: "d04e89854b3931f4aaced77aa3a2fcad5834b3a6"

steps:
- name: checkout
uses: actions/checkout@v4
- name: build all
run: |
go build ./...
- name: run all tests
- uses: actions/checkout@v4

- name: Test with Bazel
run: |
go test ./...
# TODO(CUS-345): Enable remote execution
bazel test --config=noninteractive //...

0 comments on commit 06c6c42

Please sign in to comment.