diff --git a/.github/actions/install-focal-deps/action.yml b/.github/actions/install-focal-deps/action.yml new file mode 100644 index 000000000000..0770ca11a6d6 --- /dev/null +++ b/.github/actions/install-focal-deps/action.yml @@ -0,0 +1,16 @@ +# This action installs dependencies missing from the default +# focal image used by arm64 github workers. +# +# TODO(marun): Find an image with the required dependencies already installed. + +name: 'Install focal arm64 dependencies' +description: 'Installs the dependencies required to build avalanchego on an arm64 github worker running Ubuntu 20.04 (focal)' + +runs: + using: composite + steps: + - name: Install build-essential + run: | + sudo apt update + sudo apt -y install build-essential + shell: bash diff --git a/.github/workflows/build-linux-binaries.yml b/.github/workflows/build-linux-binaries.yml index bee07d0faa8c..9f5cdfe97475 100644 --- a/.github/workflows/build-linux-binaries.yml +++ b/.github/workflows/build-linux-binaries.yml @@ -76,6 +76,8 @@ jobs: steps: - uses: actions/checkout@v4 + - uses: ./.github/actions/install-focal-deps + - uses: ./.github/actions/setup-go-for-project-v3 - run: go version diff --git a/.github/workflows/build-ubuntu-arm64-release.yml b/.github/workflows/build-ubuntu-arm64-release.yml index 9605a16dee9d..096137b1a2ef 100644 --- a/.github/workflows/build-ubuntu-arm64-release.yml +++ b/.github/workflows/build-ubuntu-arm64-release.yml @@ -73,6 +73,7 @@ jobs: steps: - uses: actions/checkout@v4 + - uses: ./.github/actions/install-focal-deps - uses: ./.github/actions/setup-go-for-project-v3 - run: go version diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 7251dadcc951..7fc80756daed 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -31,17 +31,13 @@ jobs: os: [macos-12, ubuntu-20.04, ubuntu-22.04, windows-2022, custom-arm64-focal, custom-arm64-jammy] steps: - uses: actions/checkout@v4 + - uses: ./.github/actions/install-focal-deps + if: matrix.os == 'custom-arm64-focal' - uses: ./.github/actions/setup-go-for-project-v3 - name: Set timeout on Windows # Windows UT run slower and need a longer timeout shell: bash if: matrix.os == 'windows-2022' run: echo "TIMEOUT=240s" >> $GITHUB_ENV - - name: Install build dependencies not available by default on custom-arm64-focal runners - shell: bash - if: matrix.os == 'custom-arm64-focal' - run: | - sudo apt update - sudo apt -y install build-essential - name: build_test shell: bash run: ./scripts/build_test.sh