Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Fixed lint error and beacon rewards regression test after unstable merge #3

Open
wants to merge 198 commits into
base: proposer-rewards-api
Choose a base branch
from
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
198 commits
Select commit Hold shift + click to select a range
393c5bc
don't block mev boost till genesis finalization (#5834)
realbigsean May 27, 2024
6f05863
Remove unused dependencies (#5812)
ackintosh May 27, 2024
7f8b600
Remove Goerli support (#5770)
michaelsproul May 27, 2024
6a7305a
Add more info about why lookup is in AwaitingDownload (#5838)
dapplion May 28, 2024
df983a8
upgrade clap to v4.5 (#5273)
eserilev May 28, 2024
5ef290a
Fixed lint error and beacon rewards regression test
zack-scott May 28, 2024
48789c7
Always build `lcli` on CI (#5860)
jimmygchen May 29, 2024
6daeec3
Rename deploy_block in network config (#5850)
pawanjay176 May 29, 2024
ffe29c0
Add `bls_to_execution_change` topic to `eth1/v1/events` (#5823)
chong-he May 30, 2024
df6e1c9
Fix BitVectors TestRandom implementation (#5854)
eserilev May 30, 2024
17dc978
Add peers to parent lookups (#5858)
dapplion May 30, 2024
bbe9242
replace instant with web-time (#5800)
jxs May 30, 2024
fbc230e
Add builder header timeout flag (#5857)
eserilev May 31, 2024
fb790de
Fix attestations not getting added to the aggregation pool (#5863)
pawanjay176 May 31, 2024
2c971fa
Make beacon processor queue sizes dynamic (#5573)
dapplion Jun 3, 2024
cb32807
Keep PendingComponents in da_checker during import_block (#5845)
dapplion Jun 3, 2024
1b7c4a4
Increase slog buffer size (#5882)
michaelsproul Jun 4, 2024
5fc0145
Replace local testnet script with Kurtosis (#5865)
jimmygchen Jun 4, 2024
8a247eb
Investigate `UnknownTargetRoot` slasher errors (#5006)
armaganyildirak Jun 4, 2024
2c72bb8
Fix getClientVersionV1 for Geth 1.13 (#5884)
michaelsproul Jun 4, 2024
7a7fc82
Update criterion (#5886)
michaelsproul Jun 4, 2024
7b48b0b
Errors for all RPC Requests (#5867)
AgeManning Jun 7, 2024
22fe0a6
Allow all RPC messages on disconnect (#5876)
AgeManning Jun 7, 2024
947e2e8
Undo some CLI flag breakages (#5902)
michaelsproul Jun 7, 2024
f1d88ba
Release v5.2.0 (#5664)
michaelsproul Jun 10, 2024
c24b2f3
Beta compiler fixes (#5916)
realbigsean Jun 13, 2024
1bcd1f1
Fix skip-ci on `stable` (#5909)
jimmygchen Jun 13, 2024
5789db0
Fix panic on startup in debug build (#5917)
ackintosh Jun 13, 2024
a740980
Rust 1.79 lints (#5927)
realbigsean Jun 13, 2024
1eb8694
Remove some easy Electra TODOs (#5928)
michaelsproul Jun 17, 2024
bc044ed
Fix `CommandLineTest` port conflicts on CI (#5908)
jimmygchen Jun 17, 2024
44c03d5
Add `FUNDING.json` for DRIPS (#5932)
paulhauner Jun 17, 2024
21f3a19
Remove `extern crate` (#5922)
michaelsproul Jun 17, 2024
474c1b4
Verify inclusion proof should not be fallible (#5787)
dapplion Jun 17, 2024
c2838ba
Fix SelfRateLimiter breaks the sequence of delayed_requests. (#5903)
ackintosh Jun 18, 2024
ab7db7c
Update local testnet documentation (#5896)
chong-he Jun 18, 2024
d06e389
Fix cargo audit: update curve25519-dalek (#5959)
jimmygchen Jun 19, 2024
9f8aa96
Update CI nethermind and LLVM versions (#5933)
jimmygchen Jun 19, 2024
a87f19d
chore: change `impl Into<T> for U` to `impl From<U> for T` (#5948)
kevaundray Jun 19, 2024
806c3ce
chore: simplify method to generate a random valid blob (#5946)
kevaundray Jun 19, 2024
adb3f86
Lower tolerance of stale blobs on gossip (#5935)
michaelsproul Jun 19, 2024
1503f7d
report failed requests from `RPC` after being clear from rate limiter…
jxs Jun 19, 2024
f69ccc3
Ensure all handler events are covered (#5945)
AgeManning Jun 19, 2024
758b58c
Update slasher DB size and Lighthouse book (#5934)
chong-he Jun 23, 2024
c52c598
Electra: Remaining Consensus Data Structures (#5712)
ethDreamer Jun 24, 2024
858b01f
Block processing electra (#5741)
realbigsean Jun 26, 2024
bf4cbd3
Remove all batches related to a peer on disconnect (#5969)
pawanjay176 Jun 26, 2024
b38019c
Attempt to continue lookups after adding peers (#5993)
dapplion Jun 26, 2024
a910a49
Enable jemalloc by default on non windows targets (#5995)
jimmygchen Jun 27, 2024
f106533
Avoid rayon in lighthouse block verification (#5992)
pawanjay176 Jun 27, 2024
9b093c8
Prevent connections from peers with a banned ip history (#6008)
AgeManning Jun 27, 2024
f14f21f
Bound lookup parent chain length with tip extension (#5705)
dapplion Jun 27, 2024
784ef5f
Pass vec to range sync batch (#5710)
dapplion Jun 27, 2024
9e12c21
Release v5.2.1 (testing branch) (#5989)
michaelsproul Jun 28, 2024
a64cee3
Merge remote-tracking branch 'origin/stable' into unstable
michaelsproul Jun 28, 2024
16b8113
Electra epoch processing (#5761)
michaelsproul Jun 28, 2024
70bcba1
Redb slasher backend impl (#4529)
eserilev Jul 1, 2024
3f2af5c
Delete duplicated serde code (#6027)
michaelsproul Jul 1, 2024
2a13b4f
Electra engine api (#5743)
pawanjay176 Jul 1, 2024
937f8b2
Fix SigVerifiedOp SSZ implementation (#6035)
michaelsproul Jul 2, 2024
3f82952
Broadcast validator registration to all synced beacon nodes (#5976)
jimmygchen Jul 3, 2024
42d1284
Update MDBX (#6024)
michaelsproul Jul 3, 2024
4cfdd82
Update Sepolia Bootnodes (#6037)
AgeManning Jul 3, 2024
d9ad1f5
Downgrade duplication log of attestation to Debug (#6007)
chong-he Jul 4, 2024
d84e3e3
Store pubkey cache decompressed on disk (#5897)
michaelsproul Jul 4, 2024
8e0bc9a
Record `BEACON_BLOCK_DELAY_GOSSIP` metric only after a bock is verifi…
chong-he Jul 5, 2024
ef956e6
Drop skip too large condition for liveness safety (#6014)
dapplion Jul 5, 2024
94d55be
Increase penalty for old block gossip spam (#6050)
michaelsproul Jul 5, 2024
5b2edfa
Show `blst` hardware support in `lighthouse --version` (#6039)
scafe3 Jul 5, 2024
48c55ae
Delete `cached_tree_hash` (#6060)
michaelsproul Jul 8, 2024
a59a61f
Remove generic Id param from RequestId (#6032)
jxs Jul 8, 2024
9942c18
Delete old database schemas (#6051)
michaelsproul Jul 9, 2024
2e2ccec
Add randomization in sync retry batch peer selection (#5822)
dapplion Jul 9, 2024
d46ac6c
Implement gossipsub IDONTWANT (#5422)
jxs Jul 9, 2024
bde0428
Add sync network context cache size metrics (#6049)
dapplion Jul 9, 2024
c457a25
Drop unused store metrics (#6042)
dapplion Jul 9, 2024
15985b8
Add PeerDAS DataColumn type (#5913)
dapplion Jul 9, 2024
8aa0286
update windows logo location in release template (#6056)
antondlr Jul 11, 2024
880523d
Drop overflow cache (#5891)
dapplion Jul 11, 2024
4c7277c
Log warning on startup if chain spec contains misaligned fork epochs …
jimmygchen Jul 11, 2024
69d84e7
Reject `octet-stream` content type when we expect `json` (#5862)
eserilev Jul 12, 2024
7697c12
Fix builds with `slasher-redb` (#6077)
michaelsproul Jul 12, 2024
b7b5dd7
Change DB Manager Clap usage to derive (#5898)
eserilev Jul 12, 2024
0c0b56d
Bound max count of lookups (#6015)
dapplion Jul 12, 2024
2f0af2b
Unimplement `TreeHash` for `BeaconState` (#6083)
michaelsproul Jul 12, 2024
cb1e8dc
Update Dockerfile to work on latest version of Docker (#6087)
jimmygchen Jul 15, 2024
4bfca82
Add range sync metrics to track efficiency (#6095)
dapplion Jul 15, 2024
1d39aac
Enable the outbound rate limiter by default, and update blobs method …
jimmygchen Jul 15, 2024
13ffdd2
Beacon api + validator electra (#5744)
realbigsean Jul 15, 2024
6856134
Bump default `logfile-max-number` to 10 (#6092)
jimmygchen Jul 16, 2024
79680c8
Add `block_gossip` Beacon API events (#5864)
chong-he Jul 16, 2024
26c2e62
Measure consensus verification time (#6089)
michaelsproul Jul 16, 2024
77d491b
Remove trace logging (#6103)
AgeManning Jul 16, 2024
bf2f0b0
Remove VC response signing and fix HTTP error handling (#5529)
eserilev Jul 16, 2024
8a32df7
Ef tests electra (#5758)
realbigsean Jul 16, 2024
b0b142c
Track store metrics by DB column (#6041)
dapplion Jul 18, 2024
7afb230
chore: update the trusted setup to match the consensus-specs version …
kevaundray Jul 18, 2024
549035d
Fix `proposer-nodes` cli flag name (#6125)
jimmygchen Jul 18, 2024
86cb3f4
Disable slasher default features (#6115)
SamWilsn Jul 18, 2024
3859c9b
Add requires `suggested-fee-recipient` flag when `always-prepare-payl…
chong-he Jul 18, 2024
adfa512
Add an option to keep existing enclave when starting local testnet (#…
jimmygchen Jul 19, 2024
54e36f6
Return syncing on HTTP when sync is stalled (#6129)
michaelsproul Jul 19, 2024
647992b
Delete `--builder-profit-threshold` flag (#6131)
chong-he Jul 19, 2024
256f012
Attempt to fix flaky basic sim test (#6134)
jimmygchen Jul 19, 2024
175e1bd
Upgrade `openssl` to address cargo audit issue (#6143)
jimmygchen Jul 22, 2024
06dff60
Add PeerDAS presets and configs. (#6127)
jimmygchen Jul 22, 2024
bca732e
Update `is_available` check to support PeerDAS. (#6076)
jimmygchen Jul 22, 2024
9ac647c
Make proposer duties work pre-genesis (#4789)
michaelsproul Jul 23, 2024
d72dca5
level down libp2p quic accept and close errors (#6148)
jxs Jul 23, 2024
10445f3
Remove use of ethers core (#5301)
dospore Jul 24, 2024
9a53f4d
Siren Docs Upgrade (#5979)
rickimoore Jul 24, 2024
b36f77e
Revert --image-download always flag to avoid CI getting rate limited …
jimmygchen Jul 24, 2024
4e8e80b
Update msrv to 1.78.0 (#6159)
AgeManning Jul 24, 2024
b4a7560
Show correct total validator count during validator recovery (#6153)
dknopik Jul 25, 2024
a3f44c6
Remove backwards compatibility for `el_offline` and `is_optimstic` (#…
macladson Jul 25, 2024
a2ab26c
Use `then` instead of `then_some` when checking `upnp_enabled` to avo…
dknopik Jul 25, 2024
4e5a363
Add `DataColumnSidecar` gossip topic and message handling (#6147)
jimmygchen Jul 25, 2024
62a39af
Fix unexpected `Marking peer disconnected in DHT` (#6140)
ackintosh Jul 25, 2024
cc55e61
Rust 1.80.0 lints (#6183)
macladson Jul 25, 2024
24169b2
Iterate expired components from the da_checker (#5895)
dapplion Jul 25, 2024
8d175f6
Fix `lighthouse account validator` subcommands help text (#6091)
chong-he Jul 26, 2024
28e3b86
limit dial concurrency on Swarm (#6184)
jxs Jul 26, 2024
b949db0
Remove timeout locks (#6048)
dapplion Jul 26, 2024
f60503c
default vc to block v3 endpoint and deprecate block-v3 flag (#5292)
eserilev Jul 26, 2024
f4ddc45
Use upgradable read lock for pubkey cache (#6190)
michaelsproul Jul 26, 2024
a3b1ef3
Visualisation logging for sync batch states (#6034)
AgeManning Jul 29, 2024
19b3ab3
Data column gossip validation and error handling (#6181)
jimmygchen Jul 29, 2024
00038da
Update database migration docs for 5.3 (#6195)
michaelsproul Jul 29, 2024
96b00ef
Replace `lazy_static!` with `LazyLock` (#6189)
jimmygchen Jul 29, 2024
75e9348
Swap finalized chains based on processed batches (#6203)
AgeManning Jul 30, 2024
c7ded10
Use blinded blocks for light client proofs (#6201)
michaelsproul Jul 30, 2024
9b3b730
Avoid acquiring another read lock while holding one to avoid potentia…
jimmygchen Jul 30, 2024
d9f8b13
remove no longer required #[allow(clippy::mutable_key_type)] (#6210)
jxs Aug 1, 2024
0bb2386
Work around UB in LMDB bindings (#6211)
michaelsproul Aug 1, 2024
0e96d4f
Store changes to persist data columns (#6073)
jimmygchen Aug 2, 2024
acd3151
Import gossip data column into data availability checker (#6197)
jimmygchen Aug 2, 2024
05bc99e
patch quick-protobuf (#6217)
jxs Aug 3, 2024
612946b
Downgrade re-org log to INFO (#6220)
michaelsproul Aug 5, 2024
f7f0bfc
Skip recursive discovery query if no useful ENRs (#6207)
dapplion Aug 6, 2024
f126a42
Remove double-locking in `eth/v1/node/syncing` (#6202)
michaelsproul Aug 6, 2024
42a1cd8
Don't expect DAS config in HTTP spec response (#6221)
michaelsproul Aug 6, 2024
a68f34a
Broadcast VC requests in parallel and fix subscription error (#6223)
michaelsproul Aug 7, 2024
d6ba8c3
Release v5.3.0 (#6194)
michaelsproul Aug 8, 2024
aad8727
add missing use std::sync::Lazylock to malloc_utils::glibc (#6234)
jxs Aug 8, 2024
3913ea4
Persist light client updates (#5545)
eserilev Aug 9, 2024
781c5ec
Add lcli command for manual rescue sync (#5458)
michaelsproul Aug 12, 2024
f2fdbe7
Add plumbing for PeerDAS supernodes (#5050, #5409, #5570, #5966) (#6216)
jimmygchen Aug 12, 2024
ff15c78
Implement data columns by network boilerplate (#6224)
dapplion Aug 13, 2024
6dc614f
Add PeerDAS KZG lib integration (construction & KZG verification) (#6…
jimmygchen Aug 13, 2024
22ccdb6
Reuse password option prompts again on a wrong password (#4380)
pawanjay176 Aug 13, 2024
3a996fb
Merge remote-tracking branch 'origin/stable' into unstable
michaelsproul Aug 13, 2024
18df701
Persist data columns to store (#6255)
jimmygchen Aug 14, 2024
a91f432
Add Reth to execution clients suggested for installation (#6172)
Braqzen Aug 15, 2024
5169e03
Add PeerDAS RPC import boilerplate (#6238)
dapplion Aug 15, 2024
9fc0a66
Add sync lookup custody request state (#6257)
dapplion Aug 15, 2024
6566705
Implement PeerDAS RPC handlers (#6237)
dapplion Aug 15, 2024
9bc5643
Add metrics inside fork-choice crate (#6205)
dapplion Aug 19, 2024
b6d15bc
Make `portable` the default in Lighthouse book and Makefile, update w…
chong-he Aug 19, 2024
0429158
add missing fields to get blob sidecars request (#5987)
eserilev Aug 19, 2024
6faa9c6
Prevent fd leak in random slasher tests (#6254)
michaelsproul Aug 19, 2024
d957161
Drop null_logger (#6013)
dapplion Aug 19, 2024
32f2e05
Require manual confirmation to purge database with `purge-db` (#6154)
macladson Aug 20, 2024
1f0d129
Add time metrics to aquire fork-choice lock (#6204)
dapplion Aug 20, 2024
56d1c8c
Avoid redundant allocations in blob verification (#6282)
michaelsproul Aug 20, 2024
677f96a
Add data columns by root sync request (#6274)
dapplion Aug 21, 2024
9a295d0
Implement Electra `devnet-1` changes (#5937)
ethDreamer Aug 22, 2024
3c1266e
Remove VC response signing and update api-token in Lighthouse Book (…
chong-he Aug 22, 2024
bee4526
Update jsonwebtoken version to enable RISC-V builds (#6298)
haurog Aug 22, 2024
4036da7
Bump diesel for CVE (#6306)
michaelsproul Aug 26, 2024
e09fe5a
Implement Electra spec v1.5.0-alpha.5 (#6305)
michaelsproul Aug 26, 2024
f75a2cf
PeerDAS implementation (#5683)
dapplion Aug 27, 2024
bcff4aa
Implement Metadatav3 (#6303)
pawanjay176 Aug 28, 2024
5e9cc60
chore!: Update rust_eth_kzg to v0.5.1 (formally known as peerdas-kzg)…
kevaundray Aug 28, 2024
5a96687
chore: Lazy initialize the KZG struct when running tests (#6311)
kevaundray Aug 28, 2024
1e4d0e5
Fix docker & release workflows (#6316)
jimmygchen Aug 28, 2024
c7b9cbe
Encode DataColumn responses with Electra context bytes (#6313)
jimmygchen Aug 28, 2024
653126f
chore: update and enable PeerDAS tests to latest spec test release (`…
kevaundray Aug 28, 2024
218ae5c
Pin `ethereum-package` version to `4.2.0` (#6315)
jimmygchen Aug 29, 2024
52f3b1f
Ignore flaky sampling test (#6326)
jimmygchen Aug 30, 2024
100f33a
Remove duplicate should_fetch_blobs check in sync lookup (#6318)
dapplion Aug 30, 2024
ae83901
Increase priority for validator HTTP requests (#6292)
michaelsproul Aug 30, 2024
e3d2d38
Return HTTP 404 for pruned blob requests (#6331)
michaelsproul Aug 30, 2024
60157ad
Add reason of NoRequestNeeded to lookup sync (#6317)
dapplion Aug 30, 2024
002ca2c
Fix context bytes logic for DataColumn RPC responses (#6325)
jimmygchen Sep 1, 2024
99e53b8
Migrate from `ethereum-types` to `alloy-primitives` (#6078)
eserilev Sep 2, 2024
a685dde
update libp2p to version 0.54 (#6249)
jxs Sep 2, 2024
ed7cd3b
Drop block data from BlockError and BlobError (#5735)
dapplion Sep 3, 2024
84f0011
Update manual checkpoint sync content in Lighthouse book (#6338)
chong-he Sep 3, 2024
4e675cf
Light Client Bug Fix (#6299)
ethDreamer Sep 3, 2024
8e02b60
comment update
zack-scott Sep 5, 2024
672dcbd
Ignore Rust 1.82 warnings about void patterns (#6357)
michaelsproul Sep 5, 2024
26c19d6
Enable `large_stack_frames` lint (#6343)
michaelsproul Sep 5, 2024
b50ce60
Add blob count label to `DATA_COLUMN_SIDECAR_COMPUTATION` metric (#6340)
jimmygchen Sep 5, 2024
0fb4a20
Metadata request ordering (#6336)
pawanjay176 Sep 5, 2024
0e94fe1
Clarify validator monitor block log (#6342)
michaelsproul Sep 5, 2024
369807b
Check known parent on rpc blob process (#5893)
dapplion Sep 5, 2024
df19b62
Remove beta tag from gossipsub 1.2 (#6344)
AgeManning Sep 5, 2024
7ab1db9
Merge remote-tracking branch 'upstream/unstable' into phase0-block-re…
zack-scott Sep 5, 2024
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
5 changes: 1 addition & 4 deletions .github/workflows/docker.yml
Original file line number Diff line number Diff line change
Expand Up @@ -80,7 +80,7 @@ jobs:
- name: Set `make` command for lighthouse
if: startsWith(matrix.binary, 'lighthouse')
run: |
echo "MAKE_CMD=build-${{ matrix.cpu_arch }}-portable" >> $GITHUB_ENV
echo "MAKE_CMD=build-${{ matrix.cpu_arch }}" >> $GITHUB_ENV

- name: Set `make` command for lcli
if: startsWith(matrix.binary, 'lcli')
Expand Down Expand Up @@ -124,9 +124,6 @@ jobs:
push: true
tags: |
${{ github.repository_owner}}/${{ matrix.binary }}:${{ env.VERSION }}-${{ env.SHORT_ARCH }}${{ env.VERSION_SUFFIX }}
${{ github.repository_owner}}/${{ matrix.binary }}:${{ env.VERSION }}-${{ env.SHORT_ARCH }}${{ env.VERSION_SUFFIX }}-dev
${{ github.repository_owner}}/${{ matrix.binary }}:${{ env.VERSION }}-${{ env.SHORT_ARCH }}${{ env.VERSION_SUFFIX }}-modern
${{ github.repository_owner}}/${{ matrix.binary }}:${{ env.VERSION }}-${{ env.SHORT_ARCH }}${{ env.VERSION_SUFFIX }}-modern-dev

- name: Build and push (lcli)
if: startsWith(matrix.binary, 'lcli')
Expand Down
179 changes: 123 additions & 56 deletions .github/workflows/local-testnet.yml
Original file line number Diff line number Diff line change
Expand Up @@ -13,87 +13,154 @@ concurrency:
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
dockerfile-ubuntu:
runs-on: ${{ github.repository == 'sigp/lighthouse' && fromJson('["self-hosted", "linux", "CI", "large"]') || 'ubuntu-latest' }}
steps:
- uses: actions/checkout@v4

- 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'
- name: Build Docker image
run: |
brew tap ethereum/ethereum
brew install ethereum
- name: Install GNU sed & GNU grep
if: matrix.os == 'macos-12'
docker build --build-arg FEATURES=portable -t lighthouse:local .
docker save lighthouse:local -o lighthouse-docker.tar

- name: Upload Docker image artifact
uses: actions/upload-artifact@v4
with:
name: lighthouse-docker
path: lighthouse-docker.tar
retention-days: 3

run-local-testnet:
runs-on: ubuntu-22.04
needs: dockerfile-ubuntu
steps:
- uses: actions/checkout@v4

- name: Install dependencies
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@v4
id: cache-cargo
sudo add-apt-repository ppa:rmescandon/yq
echo "deb [trusted=yes] https://apt.fury.io/kurtosis-tech/ /" | sudo tee /etc/apt/sources.list.d/kurtosis.list
sudo apt update
sudo apt install -y kurtosis-cli yq
kurtosis analytics disable

- name: Download Docker image artifact
uses: actions/download-artifact@v4
with:
path: |
~/.cargo/bin/
~/.cargo/registry/index/
~/.cargo/registry/cache/
~/.cargo/git/db/
target/
key: ${{ runner.os }}-cargo-${{ hashFiles('**/Cargo.lock') }}
name: lighthouse-docker
path: .

- name: Install lighthouse
run: make && make install-lcli
- name: Load Docker image
run: docker load -i lighthouse-docker.tar

- name: Start local testnet
run: ./start_local_testnet.sh genesis.json && sleep 60
run: ./start_local_testnet.sh -e local -c -b false && sleep 60
working-directory: scripts/local_testnet

- name: Print logs
run: ./dump_logs.sh
- name: Stop local testnet and dump logs
run: ./stop_local_testnet.sh local
working-directory: scripts/local_testnet

- name: Stop local testnet
run: ./stop_local_testnet.sh
- name: Start local testnet with blinded block production
run: ./start_local_testnet.sh -e local-blinded -c -p -b false && sleep 60
working-directory: scripts/local_testnet

- name: Clean-up testnet
run: ./clean.sh
- name: Stop local testnet and dump logs
run: ./stop_local_testnet.sh local-blinded
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: Upload logs artifact
uses: actions/upload-artifact@v4
with:
name: logs-local-testnet
path: |
scripts/local_testnet/logs
retention-days: 3

- name: Print logs for blinded block testnet
run: ./dump_logs.sh
working-directory: scripts/local_testnet
doppelganger-protection-success-test:
needs: dockerfile-ubuntu
runs-on: ubuntu-22.04
steps:
- uses: actions/checkout@v4

- name: Install dependencies
run: |
sudo add-apt-repository ppa:rmescandon/yq
echo "deb [trusted=yes] https://apt.fury.io/kurtosis-tech/ /" | sudo tee /etc/apt/sources.list.d/kurtosis.list
sudo apt update
sudo apt install -y kurtosis-cli yq
kurtosis analytics disable

- name: Download Docker image artifact
uses: actions/download-artifact@v4
with:
name: lighthouse-docker
path: .

- name: Load Docker image
run: docker load -i lighthouse-docker.tar

- name: Run the doppelganger protection success test script
run: |
./doppelganger_protection.sh success
working-directory: scripts/tests

- name: Upload logs artifact
uses: actions/upload-artifact@v4
with:
name: logs-doppelganger-protection-success
path: |
scripts/local_testnet/logs
retention-days: 3

doppelganger-protection-failure-test:
needs: dockerfile-ubuntu
runs-on: ubuntu-22.04
steps:
- uses: actions/checkout@v4

- name: Install dependencies
run: |
sudo add-apt-repository ppa:rmescandon/yq
echo "deb [trusted=yes] https://apt.fury.io/kurtosis-tech/ /" | sudo tee /etc/apt/sources.list.d/kurtosis.list
sudo apt update
sudo apt install -y kurtosis-cli yq
kurtosis analytics disable

- name: Download Docker image artifact
uses: actions/download-artifact@v4
with:
name: lighthouse-docker
path: .

- name: Load Docker image
run: docker load -i lighthouse-docker.tar

- name: Run the doppelganger protection failure test script
run: |
./doppelganger_protection.sh failure
working-directory: scripts/tests

- name: Upload logs artifact
uses: actions/upload-artifact@v4
with:
name: logs-doppelganger-protection-failure
path: |
scripts/local_testnet/logs
retention-days: 3

- 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"]
needs: [
'dockerfile-ubuntu',
'run-local-testnet',
'doppelganger-protection-success-test',
'doppelganger-protection-failure-test',
]
steps:
- uses: actions/checkout@v4
- name: Check that success job is dependent on all others
Expand Down
34 changes: 7 additions & 27 deletions .github/workflows/release.yml
Original file line number Diff line number Diff line change
Expand Up @@ -64,7 +64,7 @@ jobs:
- uses: KyleMayes/install-llvm-action@v1
if: env.SELF_HOSTED_RUNNERS == 'false' && startsWith(matrix.arch, 'x86_64-windows')
with:
version: "16.0"
version: "17.0"
directory: ${{ runner.temp }}/llvm
- name: Set LIBCLANG_PATH
if: startsWith(matrix.arch, 'x86_64-windows')
Expand All @@ -78,13 +78,13 @@ jobs:
if: matrix.arch == 'aarch64-unknown-linux-gnu'
run: |
cargo install cross
env CROSS_PROFILE=${{ matrix.profile }} make build-aarch64-portable
env CROSS_PROFILE=${{ matrix.profile }} make build-aarch64

- name: Build Lighthouse for x86_64-unknown-linux-gnu
if: matrix.arch == 'x86_64-unknown-linux-gnu'
run: |
cargo install cross
env CROSS_PROFILE=${{ matrix.profile }} make build-x86_64-portable
env CROSS_PROFILE=${{ matrix.profile }} make build-x86_64

- name: Move cross-compiled binary
if: contains(matrix.arch, 'unknown-linux-gnu')
Expand Down Expand Up @@ -113,7 +113,7 @@ jobs:
echo "$GPG_PASSPHRASE" | gpg --passphrase-fd 0 --pinentry-mode loopback --batch -ab lighthouse-${{ needs.extract-version.outputs.VERSION }}-${{ matrix.arch }}.tar.gz
for ext in "tar.gz" "tar.gz.asc";\
do for f in *.$ext;\
do cp $f "../${f%.$ext}-portable.$ext";\
do cp $f "../${f%.$ext}.$ext";\
done;\
done
mv *tar.gz* ..
Expand Down Expand Up @@ -144,29 +144,13 @@ jobs:
path: lighthouse-${{ needs.extract-version.outputs.VERSION }}-${{ matrix.arch }}.tar.gz
compression-level: 0

- name: Upload artifact (copy)
if: startsWith(matrix.arch, 'x86_64-windows') != true
uses: actions/upload-artifact@v4
with:
name: lighthouse-${{ needs.extract-version.outputs.VERSION }}-${{ matrix.arch }}-portable.tar.gz
path: lighthouse-${{ needs.extract-version.outputs.VERSION }}-${{ matrix.arch }}-portable.tar.gz
compression-level: 0

- name: Upload signature
uses: actions/upload-artifact@v4
with:
name: lighthouse-${{ needs.extract-version.outputs.VERSION }}-${{ matrix.arch }}.tar.gz.asc
path: lighthouse-${{ needs.extract-version.outputs.VERSION }}-${{ matrix.arch }}.tar.gz.asc
compression-level: 0

- name: Upload signature (copy)
if: startsWith(matrix.arch, 'x86_64-windows') != true
uses: actions/upload-artifact@v4
with:
name: lighthouse-${{ needs.extract-version.outputs.VERSION }}-${{ matrix.arch }}-portable.tar.gz.asc
path: lighthouse-${{ needs.extract-version.outputs.VERSION }}-${{ matrix.arch }}-portable.tar.gz.asc
compression-level: 0

draft-release:
name: Draft Release
needs: [build, extract-version]
Expand Down Expand Up @@ -210,9 +194,9 @@ jobs:

## Testing Checklist (DELETE ME)

- [ ] Run on synced Prater Sigma Prime nodes.
- [ ] Run on synced Holesky Sigma Prime nodes.
- [ ] Run on synced Canary (mainnet) Sigma Prime nodes.
- [ ] Resync a Prater node.
- [ ] Resync a Holesky node.
- [ ] Resync a mainnet node.

## Release Checklist (DELETE ME)
Expand Down Expand Up @@ -253,13 +237,9 @@ jobs:
| System | Architecture | Binary | PGP Signature |
|:---:|:---:|:---:|:---|
| <img src="https://simpleicons.org/icons/apple.svg" style="width: 32px;"/> | x86_64 | [lighthouse-${{ env.VERSION }}-x86_64-apple-darwin.tar.gz](https://github.com/${{ env.REPO_NAME }}/releases/download/${{ env.VERSION }}/lighthouse-${{ env.VERSION }}-x86_64-apple-darwin.tar.gz) | [PGP Signature](https://github.com/${{ env.REPO_NAME }}/releases/download/${{ env.VERSION }}/lighthouse-${{ env.VERSION }}-x86_64-apple-darwin.tar.gz.asc) |
| <img src="https://simpleicons.org/icons/apple.svg" style="width: 32px;"/> | x86_64 | [lighthouse-${{ env.VERSION }}-x86_64-apple-darwin-portable.tar.gz](https://github.com/${{ env.REPO_NAME }}/releases/download/${{ env.VERSION }}/lighthouse-${{ env.VERSION }}-x86_64-apple-darwin-portable.tar.gz) | [PGP Signature](https://github.com/${{ env.REPO_NAME }}/releases/download/${{ env.VERSION }}/lighthouse-${{ env.VERSION }}-x86_64-apple-darwin-portable.tar.gz.asc) |
| <img src="https://simpleicons.org/icons/linux.svg" style="width: 32px;"/> | x86_64 | [lighthouse-${{ env.VERSION }}-x86_64-unknown-linux-gnu.tar.gz](https://github.com/${{ env.REPO_NAME }}/releases/download/${{ env.VERSION }}/lighthouse-${{ env.VERSION }}-x86_64-unknown-linux-gnu.tar.gz) | [PGP Signature](https://github.com/${{ env.REPO_NAME }}/releases/download/${{ env.VERSION }}/lighthouse-${{ env.VERSION }}-x86_64-unknown-linux-gnu.tar.gz.asc) |
| <img src="https://simpleicons.org/icons/linux.svg" style="width: 32px;"/> | x86_64 | [lighthouse-${{ env.VERSION }}-x86_64-unknown-linux-gnu-portable.tar.gz](https://github.com/${{ env.REPO_NAME }}/releases/download/${{ env.VERSION }}/lighthouse-${{ env.VERSION }}-x86_64-unknown-linux-gnu-portable.tar.gz) | [PGP Signature](https://github.com/${{ env.REPO_NAME }}/releases/download/${{ env.VERSION }}/lighthouse-${{ env.VERSION }}-x86_64-unknown-linux-gnu-portable.tar.gz.asc) |
| <img src="https://simpleicons.org/icons/raspberrypi.svg" style="width: 32px;"/> | aarch64 | [lighthouse-${{ env.VERSION }}-aarch64-unknown-linux-gnu.tar.gz](https://github.com/${{ env.REPO_NAME }}/releases/download/${{ env.VERSION }}/lighthouse-${{ env.VERSION }}-aarch64-unknown-linux-gnu.tar.gz) | [PGP Signature](https://github.com/${{ env.REPO_NAME }}/releases/download/${{ env.VERSION }}/lighthouse-${{ env.VERSION }}-aarch64-unknown-linux-gnu.tar.gz.asc) |
| <img src="https://simpleicons.org/icons/raspberrypi.svg" style="width: 32px;"/> | aarch64 | [lighthouse-${{ env.VERSION }}-aarch64-unknown-linux-gnu-portable.tar.gz](https://github.com/${{ env.REPO_NAME }}/releases/download/${{ env.VERSION }}/lighthouse-${{ env.VERSION }}-aarch64-unknown-linux-gnu-portable.tar.gz) | [PGP Signature](https://github.com/${{ env.REPO_NAME }}/releases/download/${{ env.VERSION }}/lighthouse-${{ env.VERSION }}-aarch64-unknown-linux-gnu-portable.tar.gz.asc) |
| <img src="https://simpleicons.org/icons/windows.svg" style="width: 32px;"/> | x86_64 | [lighthouse-${{ env.VERSION }}-x86_64-windows.tar.gz](https://github.com/${{ env.REPO_NAME }}/releases/download/${{ env.VERSION }}/lighthouse-${{ env.VERSION }}-x86_64-windows.tar.gz) | [PGP Signature](https://github.com/${{ env.REPO_NAME }}/releases/download/${{ env.VERSION }}/lighthouse-${{ env.VERSION }}-x86_64-windows.tar.gz.asc) |
| <img src="https://simpleicons.org/icons/windows.svg" style="width: 32px;"/> | x86_64 | [lighthouse-${{ env.VERSION }}-x86_64-windows-portable.tar.gz](https://github.com/${{ env.REPO_NAME }}/releases/download/${{ env.VERSION }}/lighthouse-${{ env.VERSION }}-x86_64-windows-portable.tar.gz) | [PGP Signature](https://github.com/${{ env.REPO_NAME }}/releases/download/${{ env.VERSION }}/lighthouse-${{ env.VERSION }}-x86_64-windows-portable.tar.gz.asc) |
| <img src="https://upload.wikimedia.org/wikipedia/commons/c/c4/Windows_logo_-_2021_%28Black%29.svg" style="width: 32px;"/> | x86_64 | [lighthouse-${{ env.VERSION }}-x86_64-windows.tar.gz](https://github.com/${{ env.REPO_NAME }}/releases/download/${{ env.VERSION }}/lighthouse-${{ env.VERSION }}-x86_64-windows.tar.gz) | [PGP Signature](https://github.com/${{ env.REPO_NAME }}/releases/download/${{ env.VERSION }}/lighthouse-${{ env.VERSION }}-x86_64-windows.tar.gz.asc) |
| | | | |
| **System** | **Option** | - | **Resource** |
| <img src="https://simpleicons.org/icons/docker.svg" style="width: 32px;"/> | Docker | [${{ env.VERSION }}](https://hub.docker.com/r/${{ env.IMAGE_NAME }}/tags?page=1&ordering=last_updated&name=${{ env.VERSION }}) | [${{ env.IMAGE_NAME }}](https://hub.docker.com/r/${{ env.IMAGE_NAME }}) |
Expand Down
Loading
Loading