-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathMakefile
More file actions
97 lines (82 loc) · 3.32 KB
/
Makefile
File metadata and controls
97 lines (82 loc) · 3.32 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
SED = $(shell which gsed 2>/dev/null || echo sed)
.PHONY: chain
chain:
git clone --depth 1 -b op-node/v1.16.8 https://github.com/ethereum-optimism/optimism ./chain
# override devnet config
cp kurtosis/kurtosis.yaml ./chain/kurtosis-devnet/optimism-package-trampoline/kurtosis.yml
cp kurtosis/main.star ./chain/kurtosis-devnet/optimism-package-trampoline/main.star
cp kurtosis/simple.yaml ./chain/kurtosis-devnet/simple.yaml
# devnet L1ChainConfig
cp kurtosis/op-service/eth/config.go ./chain/op-service/eth/config.go
# kurtosis 1.15.2 is required
$(SED) -i 's/v1.8.2-0.20250602144112-2b7d06430e48/v1.15.2/g' ./chain/go.mod
# add op-reth-image recipe to justfile
$(SED) -i '/^op-interop-mon-image/a\\nop-reth-image TAG='"'"'op-reth:devnet'"'"': (_docker_build TAG "" "../rust" "op-reth/DockerfileOp" "--build-arg BUILD_PROFILE=release")' ./chain/kurtosis-devnet/justfile
cd chain && go mod tidy
.PHONY: devnet-up
devnet-up:
cd chain/kurtosis-devnet && just simple-devnet
.PHONY: set-port
set-port:
scripts/port.sh
scripts/get_l1_config.sh
.PHONY: set-port-fixed
set-port-fixed:
echo "{\"l1BeaconPort\": 9596, \"l1GethPort\": 8545, \"l2RollupPort\": 9545, \"l2GethPort\": 8546}" | jq > hostPort.json
.PHONY: status
status:
@PORT=$$(jq -r '.l2RollupPort' hostPort.json);\
curl -X POST localhost:$$PORT -d '{"method":"optimism_syncStatus", "jsonrpc": "2.0", "id":1, "params":[]}' -H "Content-Type: application/json" | jq .result
.PHONY: wait
wait:
./scripts/wait.sh
.PHONY: server-up
server-up:
$(MAKE) _server-up PREIMAGE_DISTANCE=50
.PHONY: server-up-long
server-up-long:
$(MAKE) _server-up PREIMAGE_DISTANCE=300
.PHONY: _server-up
_server-up:
mkdir -p .preimage && true
mkdir -p .finalized_l1 && true
@L2_ROLLUP_PORT=$$(jq -r '.l2RollupPort' hostPort.json);\
L2_GETH_PORT=$$(jq -r '.l2GethPort' hostPort.json);\
L1_GETH_PORT=$$(jq -r '.l1GethPort' hostPort.json);\
L1_BEACON_PORT=$$(jq -r '.l1BeaconPort' hostPort.json);\
L1_CHAIN_CONFIG=$$(cat l1_chain_config.json | base64 -w 0);\
cargo run --release --features=minimal --bin=optimism-preimage-maker -- \
--rollup=http://localhost:$$L2_ROLLUP_PORT \
--l2=http://localhost:$$L2_GETH_PORT \
--l1=http://localhost:$$L1_GETH_PORT \
--beacon=http://localhost:$$L1_BEACON_PORT \
--l1-chain-config=$$L1_CHAIN_CONFIG \
--initial-claimed-l2=53 \
--ttl=1800 \
--preimage-distance=$(PREIMAGE_DISTANCE) \
--purger-interval-seconds=100
.PHONY: test
test:
@L2_ROLLUP_PORT=$$(jq -r '.l2RollupPort' hostPort.json);\
L2_GETH_PORT=$$(jq -r '.l2GethPort' hostPort.json);\
L2_ROLLUP_ADDR=http://localhost:$$L2_ROLLUP_PORT L2_GETH_ADDR=http://localhost:$$L2_GETH_PORT cargo test --features=minimal --manifest-path=./server/Cargo.toml
.PHONY: inspect
inspect:
cargo test --manifest-path=./server/Cargo.toml -- --ignored
.PHONY: devnet-down
devnet-down:
@ENCLAVE=$$(kurtosis enclave ls | awk 'NR==2 {print $$1}'); kurtosis enclave rm -f $$ENCLAVE
kurtosis engine stop
.PHONY: sync-lock
sync-lock:
cargo update -p kona-client
cd scripts && python sync_lock.py
# Check build
# Downgrade the crate that does not exist in op-rs, which was unnecessarily upgraded by cargo update.
cargo build
.PHONY: test-deploy-tx
test-deploy-tx:
cd tx && npm install && npx hardhat run ./scripts/deploy.js --network eth_local
.PHONY: test-tx
test-tx:
cd tx && npx hardhat run ./scripts/exec.js --network eth_local