use the new nimbus-eth2 buildinfo #7619
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
# Nimbus | |
# Copyright (c) 2020-2025 Status Research & Development GmbH | |
# Licensed under either of | |
# * Apache License, version 2.0, ([LICENSE-APACHE](LICENSE-APACHE) or | |
# http://www.apache.org/licenses/LICENSE-2.0) | |
# * MIT license ([LICENSE-MIT](LICENSE-MIT) or | |
# http://opensource.org/licenses/MIT) | |
# at your option. This file may not be copied, modified, or distributed except | |
# according to those terms. | |
name: Nimbus CI | |
on: | |
push: | |
paths-ignore: | |
- 'doc/**' | |
- 'portal/docs/**' | |
- '**/*.md' | |
- 'hive_integration/**' | |
- 'nimbus_verified_proxy/**' | |
- '.github/workflows/nimbus_verified_proxy.yml' | |
- '.github/workflows/build_base_image.yml' | |
- 'docker/**' | |
pull_request: | |
paths-ignore: | |
- 'doc/**' | |
- 'portal/docs/**' | |
- '**/*.md' | |
- 'hive_integration/**' | |
- 'nimbus_verified_proxy/**' | |
- '.github/workflows/nimbus_verified_proxy.yml' | |
- '.github/workflows/build_base_image.yml' | |
- 'docker/**' | |
workflow_dispatch: | |
jobs: | |
matrix_config: | |
uses: ./.github/workflows/matrix_config.yml | |
build: | |
needs: matrix_config | |
strategy: | |
fail-fast: false | |
matrix: ${{ fromJSON(needs.matrix_config.outputs.matrix) }} | |
defaults: | |
run: | |
shell: bash | |
name: '${{ matrix.os }}-${{ matrix.cpu }}' | |
runs-on: ${{ matrix.builder }} | |
steps: | |
- name: Checkout nimbus-eth1 | |
uses: actions/checkout@v4 | |
- id: shared-action | |
uses: ./.github/actions/shared | |
with: | |
llvm-mingw: true | |
nim-cache: true | |
rocksdb-cache: true | |
eest-cache: true | |
- name: Run nimbus-eth1 tests (Windows) | |
if: runner.os == 'Windows' | |
run: | | |
gcc --version | |
DEFAULT_MAKE_FLAGS="-j${ncpu} ENABLE_VMLOWMEM=${ENABLE_VMLOWMEM} ROCKSDB_CI_CACHE=RocksBinCache" | |
mingw32-make ${DEFAULT_MAKE_FLAGS} all test_import build_fuzzers | |
build/nimbus_execution_client.exe --help | |
# give us more space | |
# find . -type d -name ".git" -exec rm -rf {} + | |
find . -type d -name "nimcache" -exec rm -rf {} + | |
mingw32-make ${DEFAULT_MAKE_FLAGS} test t8n_test eest_full_test | |
- name: Run nimbus-eth1 tests (Linux) | |
if: runner.os == 'Linux' | |
run: | | |
export LD_LIBRARY_PATH="${LD_LIBRARY_PATH}:/usr/local/lib" | |
DEFAULT_MAKE_FLAGS="-j${ncpu} ROCKSDB_CI_CACHE=RocksBinCache" | |
env CC=gcc make ${DEFAULT_MAKE_FLAGS} all test_import build_fuzzers | |
build/nimbus_execution_client --help | |
# CC, GOARCH, and CGO_ENABLED are needed to select correct compiler 32/64 bit | |
# pushd vendor/nimbus-eth2 | |
# env NIMBUSEL_BINARY=../../build/nimbus_execution_client NIMBUSEL_GENESIS=scripts/nimbusel_genesis.json \ | |
# ./scripts/launch_local_testnet.sh --nodes=3 --stop-at-epoch=7 \ | |
# --disable-htop --reuse-binaries --run-nimbus-el --dl-eth2 --verbose --kill-old-processes | |
# popd | |
env CC=gcc GOARCH=${GOARCH} CXX=g++ CGO_ENABLED=1 make ${DEFAULT_MAKE_FLAGS} test t8n_test eest_full_test | |
- name: Run nimbus-eth1 tests (Macos) | |
if: runner.os == 'Macos' | |
run: | | |
export ZERO_AR_DATE=1 # avoid timestamps in binaries | |
DEFAULT_MAKE_FLAGS="-j${ncpu} ROCKSDB_CI_CACHE=RocksBinCache" | |
make ${DEFAULT_MAKE_FLAGS} all test_import build_fuzzers | |
build/nimbus_execution_client --help | |
# "-static" option will not work for osx unless static system libraries are provided | |
# pushd vendor/nimbus-eth2 | |
# env NIMBUSEL_BINARY=../../build/nimbus_execution_client NIMBUSEL_GENESIS=scripts/nimbusel_genesis.json \ | |
# ./scripts/launch_local_testnet.sh --nodes=3 --stop-at-epoch=7 \ | |
# --disable-htop --reuse-binaries --run-nimbus-el --dl-eth2 --verbose --kill-old-processes | |
# popd | |
make ${DEFAULT_MAKE_FLAGS} test t8n_test eest_full_test | |
lint: | |
name: "Lint" | |
runs-on: ubuntu-latest | |
steps: | |
- name: Checkout | |
uses: actions/checkout@v4 | |
with: | |
fetch-depth: 2 # In PR, has extra merge commit: ^1 = PR, ^2 = base | |
- name: Check copyright year | |
if: ${{ !cancelled() }} && github.event_name == 'pull_request' | |
run: | | |
bash scripts/check_copyright_year.sh | |
bash scripts/check_version.sh |