[version] Restart services on chain or protocol change #3524
Workflow file for this run
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
name: Cluster CI | |
on: | |
pull_request: | |
workflow_dispatch: | |
merge_group: | |
concurrency: | |
group: ${{ github.workflow }}-${{ github.event.pull_request.number || github.ref }} | |
cancel-in-progress: true | |
jobs: | |
nix_check: | |
name: Test - ${{ matrix.check }} | |
runs-on: ["self-hosted", "aws_autoscaling"] | |
strategy: | |
fail-fast: false | |
matrix: | |
check: ["ibft", "heavy", "nil", "nildocs", "niljs", "nilexplorer", "uniswap", "rollup-bridge-contracts", "clijs", "walletextension", "nilhardhat"] | |
steps: | |
- name: checkout local actions | |
uses: actions/checkout@v3 | |
with: | |
fetch-depth: 0 | |
- name: run check | |
run: nix build .#checks.x86_64-linux.${{ matrix.check == 'nil' && 'others' || matrix.check }} -L | |
# TODO: enable check after adding caches to the build | |
# nix_check_macos: | |
# name: macOS CI (${{ matrix.platform.os}}, ${{ matrix.platform.arch }}) - ${{ matrix.check }} | |
# environment: prod | |
# runs-on: ${{ matrix.platform.os }} | |
# strategy: | |
# fail-fast: false | |
# matrix: | |
# # Add other checks later, when they are stabilized, and caching will be configured for Nix. | |
# check: ["clijs"] | |
# platform: | |
# # N.B. The architecture is chosen by GitHub at `runs-on` depending on the label (`os`) | |
# # See https://github.com/actions/runner-images?tab=readme-ov-file#available-images | |
# # The other fields only affect the logic of our steps | |
# - os: macos-latest | |
# arch: aarch64 | |
# nixArch: aarch64-darwin | |
# # we're out of CI runners capacity right now. this needs to be returned later | |
# # - os: macos-15-large | |
# # arch: x64 | |
# # nixArch: x86_64-darwin | |
# steps: | |
# - name: checkout local actions | |
# uses: actions/checkout@v4 | |
# with: | |
# fetch-depth: 0 | |
# # https://github.com/NixOS/nix/issues/2242#issuecomment-2336841344 | |
# - name: macOS 15 eDSRecordAlreadyExists workaround | |
# run: echo "NIX_FIRST_BUILD_UID=30001" >> "$GITHUB_ENV" | |
# - name: Install Nix | |
# uses: cachix/install-nix-action@v27 | |
# with: | |
# github_access_token: ${{ secrets.GITHUB_TOKEN }} | |
# extra_nix_config: | | |
# max-jobs = 1 | |
# - name: Run check | |
# run: nix build .#checks.${{ matrix.platform.nixArch }}.${{ matrix.check == 'nil' && 'others' || matrix.check }} -L | |
# - name: Upload nil binary as artifact | |
# if: github.event_name == 'workflow_dispatch' | |
# uses: actions/upload-artifact@v4 | |
# with: | |
# name: clijs-darwin-${{ matrix.platform.arch }} | |
# path: | | |
# result/clijs | |
ensure_cluster_builds_macos: | |
runs-on: ${{ matrix.os }} | |
strategy: | |
matrix: | |
include: | |
# N.B. The architecture is chosen by GitHub at `runs-on` depending on the label (`os`) | |
# See https://github.com/actions/runner-images?tab=readme-ov-file#available-images | |
# The other fields only affect the logic of our steps | |
- os: macos-latest | |
arch: aarch64 | |
- os: macos-13 | |
arch: x64 | |
environment: prod | |
name: MacOS CI | |
steps: | |
- name: checkout local actions | |
uses: actions/checkout@v4 | |
with: | |
fetch-depth: 0 | |
- name: Install Golang and solc | |
run: | | |
brew update | |
brew tap ethereum/ethereum | |
brew install go solidity protobuf coreutils | |
go install golang.org/x/tools/cmd/stringer@latest | |
go install google.golang.org/protobuf/cmd/protoc-gen-go@latest | |
python3 -m pip install safe-pysha3 --break-system-packages | |
- name: build binaries | |
run: | | |
export PATH=$PATH:$(go env GOPATH)/bin | |
make nild nil | |
- name: Upload nil binary as artifact | |
if: github.event_name == 'workflow_dispatch' | |
uses: actions/upload-artifact@v4 | |
with: | |
name: nil-darwin-${{ matrix.arch }} | |
path: | | |
build/bin/nil |