merge queue: embarking unstable (b5bae6e) and #5225 together #7435
Workflow file for this run
This file contains 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
# Test that local testnet starts successfully. | |
name: local testnet | |
on: | |
push: | |
branches: | |
- unstable | |
pull_request: | |
merge_group: | |
concurrency: | |
group: ${{ github.workflow }}-${{ github.ref }} | |
cancel-in-progress: true | |
jobs: | |
run-local-testnet: | |
strategy: | |
matrix: | |
os: | |
- ubuntu-22.04 | |
- macos-12 | |
runs-on: ${{ matrix.os }} | |
env: | |
# Enable portable to prevent issues with caching `blst` for the wrong CPU type | |
FEATURES: portable,jemalloc | |
steps: | |
- uses: actions/checkout@v3 | |
- name: Get latest version of stable Rust | |
run: rustup update stable | |
- name: Install geth (ubuntu) | |
if: matrix.os == 'ubuntu-22.04' | |
run: | | |
sudo add-apt-repository -y ppa:ethereum/ethereum | |
sudo apt-get update | |
sudo apt-get install ethereum | |
- name: Install geth (mac) | |
if: matrix.os == 'macos-12' | |
run: | | |
brew tap ethereum/ethereum | |
brew install ethereum | |
- name: Install GNU sed & GNU grep | |
if: matrix.os == 'macos-12' | |
run: | | |
brew install gnu-sed grep | |
echo "$(brew --prefix)/opt/gnu-sed/libexec/gnubin" >> $GITHUB_PATH | |
echo "$(brew --prefix)/opt/grep/libexec/gnubin" >> $GITHUB_PATH | |
# https://github.com/actions/cache/blob/main/examples.md#rust---cargo | |
- uses: actions/cache@v3 | |
id: cache-cargo | |
with: | |
path: | | |
~/.cargo/bin/ | |
~/.cargo/registry/index/ | |
~/.cargo/registry/cache/ | |
~/.cargo/git/db/ | |
target/ | |
key: ${{ runner.os }}-cargo-${{ hashFiles('**/Cargo.lock') }} | |
- name: Install lighthouse | |
run: make && make install-lcli | |
- name: Start local testnet | |
run: ./start_local_testnet.sh genesis.json && sleep 60 | |
working-directory: scripts/local_testnet | |
- name: Print logs | |
run: ./dump_logs.sh | |
working-directory: scripts/local_testnet | |
- name: Stop local testnet | |
run: ./stop_local_testnet.sh | |
working-directory: scripts/local_testnet | |
- name: Clean-up testnet | |
run: ./clean.sh | |
working-directory: scripts/local_testnet | |
- name: Start local testnet with blinded block production | |
run: ./start_local_testnet.sh -p genesis.json && sleep 60 | |
working-directory: scripts/local_testnet | |
- name: Print logs for blinded block testnet | |
run: ./dump_logs.sh | |
working-directory: scripts/local_testnet | |
- name: Stop local testnet with blinded block production | |
run: ./stop_local_testnet.sh | |
working-directory: scripts/local_testnet | |
# This job succeeds ONLY IF all others succeed. It is used by the merge queue to determine whether | |
# a PR is safe to merge. New jobs should be added here. | |
local-testnet-success: | |
name: local-testnet-success | |
runs-on: ubuntu-latest | |
needs: ["run-local-testnet"] | |
steps: | |
- uses: actions/checkout@v3 | |
- name: Check that success job is dependent on all others | |
run: ./scripts/ci/check-success-job.sh ./.github/workflows/local-testnet.yml local-testnet-success |