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

feat: Rebase to nitro-v3.3.2 commit #20

Open
wants to merge 99 commits into
base: main
Choose a base branch
from
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
99 commits
Select commit Hold shift + click to select a range
276a9de
Add supoprt for custom number of decimals used for fee token
gvladika Jan 8, 2024
4f60f8c
Add decimals param to test-node.bash
gvladika Jan 8, 2024
ddc75ce
Adjust values
gvladika Jan 8, 2024
2148cc5
Approve correct amount
gvladika Jan 10, 2024
ab17b3c
Merge branch 'master' into non18-decimal-token
gvladika Feb 8, 2024
9e3dc84
Move token deployment to separate function
gvladika Feb 8, 2024
027c69a
Merge branch 'decouple-contracts' into non18-decimal-token
gvladika Apr 19, 2024
83476e2
Adjust token amounts
gvladika Apr 19, 2024
cc2ead1
Mint all to deployer
gvladika Apr 19, 2024
5789086
Fix amounts
gvladika Apr 19, 2024
1f88575
Merge branch 'decouple-contracts' into non18-decimal-token
gvladika Apr 23, 2024
917fcae
Merge branch 'release' into non18-decimal-token
gvladika Apr 29, 2024
fb09a19
Merge branch 'release' into non18-decimal-token
gvladika May 9, 2024
06fe680
Merge branch 'release' into non18-decimal-token
gvladika Jun 19, 2024
e8e187b
Fix funding the L3 accounts in case of fee token
gvladika Jun 19, 2024
dbf27b6
feat: use node v18
gzeoneth Jul 4, 2024
a964b2d
Merge branch 'release' into non18-decimal-token
gzeoneth Jul 4, 2024
b162ff9
Merge pull request #67 from OffchainLabs/node-18
tsahee Jul 8, 2024
ba9f2f9
Merge branch 'release' into non18-decimal-token
tsahee Jul 8, 2024
3af86a0
Properly check that native bridging was successful
gvladika Jul 9, 2024
e4ff0cf
Merge pull request #24 from OffchainLabs/non18-decimal-token
gvladika Jul 9, 2024
7123edc
Make funding work for all chain combos
gvladika Jul 9, 2024
230d5c4
Bump versions
gvladika Jul 9, 2024
ec94da8
Remove comment
gvladika Jul 9, 2024
aab133a
Merge pull request #68 from OffchainLabs/bump-version
gvladika Jul 10, 2024
badbcbe
Do not transfer all supply to L2, leave some for L1-L3 bridging test
gvladika Jul 17, 2024
7db670c
Merge pull request #70 from OffchainLabs/bump-blockscout
tsahee Jul 31, 2024
74efd11
Merge pull request #69 from OffchainLabs/adapt-bridge-amount
gvladika Aug 1, 2024
8b531fb
Bump nitro contracts
gvladika Aug 1, 2024
8cb6b84
Merge pull request #71 from OffchainLabs/bump-v21
gvladika Aug 1, 2024
720fbb9
Disable rebuild of dev docker imgs w --build false
Tristan-Wilson Aug 7, 2024
8428bc3
Make UpgradeExecutor L3 arbowner
gvladika Aug 12, 2024
26ffe7d
Clarify logic around dev builds and rebuilding
Tristan-Wilson Aug 12, 2024
0e22925
No skip_build
Tristan-Wilson Aug 12, 2024
7ac0d6e
Add comment
gvladika Aug 12, 2024
aae904b
Contracts and node images should rebuild on --init
Tristan-Wilson Aug 13, 2024
4732c5d
Declare variable before use for -u flag
Tristan-Wilson Aug 13, 2024
4c489a7
Change contracts to utils, add --force-build-utils
Tristan-Wilson Aug 14, 2024
7edd385
Upgrade to the consensus-v31 release
eljobe Aug 14, 2024
8ec2131
Update versions of contracts token-bridge and node
eljobe Aug 14, 2024
313853e
fix: prysm config
gzeoneth Aug 15, 2024
75d03ba
fix: remove irrelevant changes
gzeoneth Aug 15, 2024
a8e9f82
fix: pos
gzeoneth Aug 15, 2024
63b9cbb
fix: working config
gzeoneth Aug 15, 2024
b3be70f
chore: reduce slot time to speed up deployment
gzeoneth Aug 15, 2024
91f4892
fix: enable electra since genesis
gzeoneth Aug 15, 2024
626db90
fix: use newer geth
gzeoneth Aug 15, 2024
9cf4d8f
Merge pull request #73 from OffchainLabs/executor-owner
gvladika Aug 16, 2024
54ea690
fix: remove --config-name=interop
gzeoneth Aug 16, 2024
d56413c
fix: disable electra
gzeoneth Aug 16, 2024
b50457a
fix: use latest geth
gzeoneth Aug 16, 2024
d4329bd
fix: add fee recipient
gzeoneth Aug 16, 2024
f0d7b1c
fix: enable deneb
gzeoneth Aug 16, 2024
17ca064
fix: wait for tx sync
gzeoneth Aug 16, 2024
6696866
fix: format
gzeoneth Aug 16, 2024
d0c4808
feat: shorter slot for faster testing
gzeoneth Aug 16, 2024
b577249
fix: readd dev flags
gzeoneth Aug 16, 2024
bf63f06
fix: readd condition
gzeoneth Aug 16, 2024
41f925d
fix: reduce diff
gzeoneth Aug 16, 2024
5147b6c
Merge branch 'release' into gzeoneth-patch-1
gzeoneth Aug 16, 2024
9074e6e
fix: docker compose
gzeoneth Aug 16, 2024
f5aca59
ci: test pos
gzeoneth Aug 16, 2024
4533a0f
ci: fix
gzeoneth Aug 16, 2024
52b69fb
ci: debug log
gzeoneth Aug 16, 2024
ed40ac0
fix: also use 1337 for pos setup
gzeoneth Aug 16, 2024
94b04c3
Merge pull request #74 from OffchainLabs/upgrade-to-31
tsahee Aug 22, 2024
91b59a8
Merge pull request #75 from OffchainLabs/gzeoneth-patch-1
tsahee Aug 22, 2024
e41e324
Test commit
yahgwai Sep 2, 2024
ab44f67
Test passing all the args through
yahgwai Sep 2, 2024
21b5913
Test tokenbridge and l3node startups
yahgwai Sep 2, 2024
cf7feed
Changed the runner names
yahgwai Sep 2, 2024
432f0ee
Cleanup in ci bash
yahgwai Sep 2, 2024
a809fee
Dont test for l3 tx if no l3node
yahgwai Sep 2, 2024
daaae0d
Added l3 node comment
yahgwai Sep 2, 2024
1d22296
Add --l2-anytrust option to run in AnyTrust mode
Tristan-Wilson Aug 13, 2024
a7c9f53
Merge branch 'master' into skip-rebuild-opt
Tristan-Wilson Sep 4, 2024
a5534b6
Merge pull request #72 from OffchainLabs/skip-rebuild-opt
Tristan-Wilson Sep 4, 2024
28d47a8
Merge remote-tracking branch 'origin/release'
Tristan-Wilson Sep 4, 2024
148b8cb
Use latest Nitro release v3.1.2
Tristan-Wilson Sep 5, 2024
f4588b3
Merge remote-tracking branch 'origin/master' into anytrust-mode
Tristan-Wilson Sep 9, 2024
00548dd
Merge pull request #82 from OffchainLabs/merge-master-v3.1.2-into-rel…
tsahee Sep 17, 2024
c7b3f6e
Added some testing for l3node with custom fee token
yahgwai Sep 18, 2024
9720066
Rename token6
yahgwai Sep 18, 2024
c09fa75
Set lower transfer amounts
yahgwai Sep 18, 2024
648e0ae
Merge branch 'release' into ci-startup
yahgwai Sep 18, 2024
43861b0
Merge pull request #78 from OffchainLabs/ci-startup
tsahee Sep 18, 2024
20b5d14
Update to nitro v3.2.1
PlasmaPower Sep 24, 2024
72141dd
Update blockscout pin to arbitrum branch
PlasmaPower Sep 24, 2024
1d0a37c
Merge pull request #85 from OffchainLabs/nitro-v3.2.1
tsahee Sep 24, 2024
d4244cd
Merge remote-tracking branch 'origin/release'
tsahee Sep 25, 2024
b3fcc2c
Merge remote-tracking branch 'origin/master' into anytrust-mode
Tristan-Wilson Sep 27, 2024
fe7af88
Add clabot config
Tristan-Wilson Sep 30, 2024
3da0ec9
Merge pull request #89 from OffchainLabs/clabot
Tristan-Wilson Sep 30, 2024
e0f7b8e
Merge branch 'master' into anytrust-mode
hkalodner Sep 30, 2024
02621d2
Fix PR comments
Tristan-Wilson Oct 2, 2024
fa19e22
Merge pull request #79 from OffchainLabs/anytrust-mode
Tristan-Wilson Oct 4, 2024
b43878c
Merge branch 'main' of github.com:Layr-Labs/nitro-testnode into eigen…
ethenotethan Jan 13, 2025
cebbb19
chore: Update CI to use eigenda flag
ethenotethan Jan 13, 2025
f186aa7
chore: Temporarily disable prysm tests
ethenotethan Jan 14, 2025
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
5 changes: 5 additions & 0 deletions .clabot
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
{
"contributors": "https://api.github.com/repos/OffchainLabs/clabot-config/contents/nitro-contributors.json",
"message": "We require contributors to sign our Contributor License Agreement. In order for us to review and merge your code, please sign the linked documents below to get yourself added. https://na3.docusign.net/Member/PowerFormSigning.aspx?PowerFormId=b15c81cc-b5ea-42a6-9107-3992526f2898&env=na3&acct=6e152afc-6284-44af-a4c1-d8ef291db402&v=2",
"label": "s"
}
63 changes: 35 additions & 28 deletions .github/workflows/ci.yml
Original file line number Diff line number Diff line change
Expand Up @@ -2,39 +2,46 @@ name: CI
run-name: CI triggered from @${{ github.actor }} of ${{ github.head_ref }}

on:
workflow_dispatch:
merge_group:
pull_request:
push:
branches:
- master
- main
- develop

workflow_dispatch:
merge_group:
pull_request:
push:
branches:
- master
- develop

jobs:
build_and_run:
runs-on: ubuntu-latest
strategy:
matrix:
# Temporarily disabling this until a fix is pushed upstream
# pos: [pos, no-pos]
l3node: [l3node, l3node-token-6, no-l3node]
tokenbridge: [tokenbridge, no-tokenbridge]
eigenda: [eigenda, no-eigenda]

steps:
- name: Checkout
uses: actions/checkout@v4
with:
submodules: recursive
- name: Checkout
uses: actions/checkout@v4
with:
submodules: recursive

- name: Set up Docker Buildx
uses: docker/setup-buildx-action@v3
with:
driver-opts: network=host
- name: Set up Docker Buildx
uses: docker/setup-buildx-action@v3
with:
driver-opts: network=host

- name: Cache Docker layers
uses: actions/cache@v3
with:
path: /tmp/.buildx-cache
key: ${{ runner.os }}-buildx-${{ hashFiles('Dockerfile') }}
restore-keys: ${{ runner.os }}-buildx-

- name: Startup Nitro testnode
env:
EIGENDA_SIGNER_PRIVATE_KEY: ${{ secrets.EIGENDA_SIGNER_PRIVATE_KEY }}
run: EIGENDA_SIGNER_PRIVATE_KEY=$EIGENDA_SIGNER_PRIVATE_KEY ${{ github.workspace }}/.github/workflows/testnode.bash
- name: Cache Docker layers
uses: actions/cache@v3
with:
path: /tmp/.buildx-cache
key: ${{ runner.os }}-buildx-${{ hashFiles('Dockerfile') }}
restore-keys: ${{ runner.os }}-buildx-

- name: Startup Nitro testnode
env:
EIGENDA_SIGNER_PRIVATE_KEY: ${{ secrets.EIGENDA_SIGNER_PRIVATE_KEY }}
## add this into run CMD when prysm patch is applied upstream
## $ {{ matrix.pos == 'pos' && '--pos' || '' }}
run: EIGENDA_SIGNER_PRIVATE_KEY=$EIGENDA_SIGNER_PRIVATE_KEY ${{ github.workspace }}/.github/workflows/testnode.bash --init-force ${{ (matrix.l3node == 'l3node' && '--l3node') || (matrix.l3node == 'l3node-token-6' && '--l3node --l3-fee-token --l3-token-bridge --l3-fee-token-decimals 6') || '' }} ${{ matrix.tokenbridge == 'tokenbridge' && '--tokenbridge' || '--no-tokenbridge' }} --no-simple --detach ${{matrix.eigenda == 'eigenda' && '--eigenda' || ''}}
26 changes: 19 additions & 7 deletions .github/workflows/testnode.bash
Original file line number Diff line number Diff line change
Expand Up @@ -5,24 +5,36 @@
# Start the test node and get PID, to terminate it once send-l2 is done.
cd ${GITHUB_WORKSPACE}

# TODO once develop is merged into nitro-contract's master, remove the NITRO_CONTRACTS_BRANCH env var
./test-node.bash --init-force --l3node --no-simple --detach
./test-node.bash "$@"

if [ $? -ne 0 ]; then
echo "test-node.bash failed"
docker compose logs --tail=1000
exit 1
fi


START=$(date +%s)
L2_TRANSACTION_SUCCEEDED=false
L3_TRANSACTION_SUCCEEDED=false
# if we're not running an l3node then we just set l3 to success by default
L3_TRANSACTION_SUCCEEDED=true
for arg in "$@"; do
if [ "$arg" = "--l3node" ]; then
L3_TRANSACTION_SUCCEEDED=false
fi
done
SUCCEEDED=false

while true; do
if [ "$L2_TRANSACTION_SUCCEEDED" = false ]; then
if ${GITHUB_WORKSPACE}/test-node.bash script send-l2 --ethamount 100 --to user_l2user --wait; then
if ${GITHUB_WORKSPACE}/test-node.bash script send-l2 --ethamount 2 --to user_l2user --wait; then
echo "Sending l2 transaction succeeded"
L2_TRANSACTION_SUCCEEDED=true
fi
fi

if [ "$L3_TRANSACTION_SUCCEEDED" = false ]; then
if ${GITHUB_WORKSPACE}/test-node.bash script send-l3 --ethamount 100 --to user_l3user --wait; then
if ${GITHUB_WORKSPACE}/test-node.bash script send-l3 --ethamount 2 --to user_l3user --wait; then
echo "Sending l3 transaction succeeded"
L3_TRANSACTION_SUCCEEDED=true
fi
Expand All @@ -44,10 +56,10 @@ while true; do
sleep 10
done

docker-compose stop
docker compose stop

if [ "$SUCCEEDED" = false ]; then
docker-compose logs
docker compose logs
exit 1
fi

Expand Down
64 changes: 61 additions & 3 deletions docker-compose.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -47,7 +47,7 @@ services:
- "127.0.0.1:6379:6379"

geth:
image: ethereum/client-go:v1.10.23
image: ethereum/client-go:latest
ports:
- "127.0.0.1:8545:8545"
- "127.0.0.1:8551:8551"
Expand Down Expand Up @@ -77,6 +77,7 @@ services:
- --authrpc.jwtsecret=/config/jwt.hex
- --nodiscover
- --syncmode=full
- --state.scheme=hash
- --dev
- --dev.period=1
- --mine
Expand All @@ -91,9 +92,13 @@ services:
command:
- testnet
- generate-genesis
- --fork=deneb
- --num-validators=64
- --genesis-time-delay=15
- --output-ssz=/consensus/genesis.ssz
- --chain-config-file=/config/prysm.yaml
- --geth-genesis-json-in=/config/geth_genesis.json
- --geth-genesis-json-out=/config/geth_genesis.json
volumes:
- "consensus:/consensus"
- "config:/config"
Expand All @@ -108,16 +113,17 @@ services:
- --datadir=/consensus/beacondata
- --rpc-port=5000
- --min-sync-peers=0
- --interop-genesis-state=/consensus/genesis.ssz
- --genesis-state=/consensus/genesis.ssz
- --interop-eth1data-votes
- --bootstrap-node=
- --chain-config-file=/config/prysm.yaml
- --rpc-host=0.0.0.0
- --grpc-gateway-host=0.0.0.0
- --chain-id=32382
- --chain-id=1337
- --execution-endpoint=http://geth:8551
- --accept-terms-of-use
- --jwt-secret=/config/jwt.hex
- --suggested-fee-recipient=0x000000000000000000000000000000000000dEaD
depends_on:
geth:
condition: service_started
Expand Down Expand Up @@ -361,6 +367,54 @@ services:
- "config:/config"
- /var/run/docker.sock:/var/run/docker.sock

datool:
image: nitro-node-dev-testnode
entrypoint: /usr/local/bin/datool
volumes:
- "config:/config"
- "das-committee-a-data:/das-committee-a"
- "das-committee-b-data:/das-committee-b"
- "das-mirror-data:/das-mirror"
command:

das-committee-a:
pid: host # allow debugging
image: nitro-node-dev-testnode
entrypoint: /usr/local/bin/daserver
ports:
- "127.0.0.1:9876:9876"
- "127.0.0.1:9877:9877"
volumes:
- "config:/config"
- "das-committee-a-data:/das"
command:
- --conf.file=/config/l2_das_committee.json

das-committee-b:
pid: host # allow debugging
image: nitro-node-dev-testnode
entrypoint: /usr/local/bin/daserver
ports:
- "127.0.0.1:8876:9876"
- "127.0.0.1:8877:9877"
volumes:
- "config:/config"
- "das-committee-b-data:/das"
command:
- --conf.file=/config/l2_das_committee.json

das-mirror:
pid: host # allow debugging
image: nitro-node-dev-testnode
entrypoint: /usr/local/bin/daserver
ports:
- "127.0.0.1:7877:9877"
volumes:
- "config:/config"
- "das-mirror-data:/das"
command:
- --conf.file=/config/l2_das_mirror.json

eigenda_proxy:
container_name: eigenda-proxy
image: ghcr.io/layr-labs/eigenda-proxy:v1.6.1
Expand Down Expand Up @@ -441,3 +495,7 @@ volumes:
config:
postgres-data:
tokenbridge-data:
das-committee-a-data:
das-committee-b-data:
das-mirror-data:

4 changes: 1 addition & 3 deletions rollupcreator/Dockerfile
Original file line number Diff line number Diff line change
@@ -1,7 +1,5 @@
FROM node:18-bullseye-slim


# Install necessary packages
ARG NITRO_CONTRACTS_BRANCH=main
RUN apt-get update && \
apt-get install -y git docker.io python3 build-essential curl jq

Expand Down
Loading
Loading