Merge pull request 'Blast stack' (#777) from blast-stack into main
	
		
			
	
		
	
	
		
	
		
			Some checks failed
		
		
	
	
		
			
				
	
				Fixturenet-Laconicd-Test / Run Laconicd fixturenet and Laconic CLI tests (push) Successful in 16m16s
				
			
		
			
				
	
				Fixturenet-Eth-Plugeth-Arm-Test / Run an Ethereum plugeth fixturenet test (push) Failing after 1s
				
			
		
			
				
	
				Fixturenet-Eth-Plugeth-Test / Run an Ethereum plugeth fixturenet test (push) Failing after 1h6m51s
				
			
		
			
				
	
				K8s Deploy Test / Run deploy test suite on kind/k8s (push) Successful in 10m19s
				
			
		
			
				
	
				Lint Checks / Run linter (push) Successful in 44s
				
			
		
			
				
	
				Publish / Build and publish (push) Successful in 1m25s
				
			
		
			
				
	
				Webapp Test / Run webapp test suite (push) Successful in 4m27s
				
			
		
			
				
	
				Database Test / Run database hosting test on kind/k8s (push) Successful in 12m39s
				
			
		
			
				
	
				Deploy Test / Run deploy test suite (push) Successful in 5m37s
				
			
		
			
				
	
				Smoke Test / Run basic test suite (push) Successful in 5m4s
				
			
		
			
				
	
				Container Registry Test / Run contaier registry hosting test on kind/k8s (push) Successful in 4m42s
				
			
		
		
	
	
				
					
				
			
		
			Some checks failed
		
		
	
	Fixturenet-Laconicd-Test / Run Laconicd fixturenet and Laconic CLI tests (push) Successful in 16m16s
				
			Fixturenet-Eth-Plugeth-Arm-Test / Run an Ethereum plugeth fixturenet test (push) Failing after 1s
				
			Fixturenet-Eth-Plugeth-Test / Run an Ethereum plugeth fixturenet test (push) Failing after 1h6m51s
				
			K8s Deploy Test / Run deploy test suite on kind/k8s (push) Successful in 10m19s
				
			Lint Checks / Run linter (push) Successful in 44s
				
			Publish / Build and publish (push) Successful in 1m25s
				
			Webapp Test / Run webapp test suite (push) Successful in 4m27s
				
			Database Test / Run database hosting test on kind/k8s (push) Successful in 12m39s
				
			Deploy Test / Run deploy test suite (push) Successful in 5m37s
				
			Smoke Test / Run basic test suite (push) Successful in 5m4s
				
			Container Registry Test / Run contaier registry hosting test on kind/k8s (push) Successful in 4m42s
				
			Reviewed-on: #777
This commit is contained in:
		
						commit
						66b92df498
					
				| @ -0,0 +1,80 @@ | ||||
| 
 | ||||
| # From: https://raw.githubusercontent.com/blast-io/deployment/master/docker-compose.yml | ||||
| services: | ||||
|   # generate jwt.txt if it's absent | ||||
|   generate-jwt: | ||||
|     image: blastio/openssl | ||||
|     volumes: | ||||
|       - blast-data:/blast:rw | ||||
|     command: > | ||||
|       sh -c "[ ! -f /blast/jwt.txt ] && openssl rand -hex 32 | tr -d '\n' > /blast/jwt.txt || exit 0" | ||||
|   # initialise geth db | ||||
|   geth-init: | ||||
|     image: blastio/blast-geth:${NETWORK:-testnet-sepolia} | ||||
|     volumes: | ||||
|       - blast-data:/blast:rw | ||||
|       - ../config/fixturenet-blast/genesis.json:/blast/genesis.json | ||||
|     entrypoint: /bin/sh | ||||
|     command: > | ||||
|       -c "[ ! -d /blast/${GETH_DATA_DIR:-blast-geth-data}/geth ] && /usr/local/bin/geth init --datadir=/blast/${GETH_DATA_DIR:-blast-geth-data} /blast/genesis.json || exit 0" | ||||
|     depends_on: | ||||
|       generate-jwt: | ||||
|         condition: service_completed_successfully | ||||
|     env_file:  | ||||
|       - ../config/fixturenet-blast/${NETWORK:-fixturenet}.config | ||||
|   blast-geth: | ||||
|     image: blastio/blast-geth:${NETWORK:-testnet-sepolia} | ||||
|     volumes: | ||||
|       - blast-data:/blast | ||||
|     ports: | ||||
|       - "9545" | ||||
|       - "9546" | ||||
|     command: > | ||||
|       --datadir=/blast/${GETH_DATA_DIR:-blast-geth-data} | ||||
|       --http | ||||
|       --http.corsdomain="*" | ||||
|       --http.vhosts="*" | ||||
|       --http.addr=0.0.0.0 | ||||
|       --http.port=9545 | ||||
|       --http.api=web3,debug,eth,txpool,net,engine | ||||
|       --ws | ||||
|       --ws.addr=0.0.0.0 | ||||
|       --ws.port=9546 | ||||
|       --ws.origins="*" | ||||
|       --ws.api=debug,eth,txpool,net,engine | ||||
|       --authrpc.addr="0.0.0.0" | ||||
|       --authrpc.port="8551" | ||||
|       --authrpc.vhosts="*" | ||||
|       --authrpc.jwtsecret=/blast/jwt.txt | ||||
|       --syncmode=full | ||||
|       --gcmode=archive | ||||
|       --nodiscover | ||||
|       --maxpeers=0 | ||||
|       --rollup.disabletxpoolgossip=true | ||||
|     env_file:  | ||||
|       - ../config/fixturenet-blast/${NETWORK:-fixturenet}.config | ||||
|     depends_on: | ||||
|       geth-init: | ||||
|         condition: service_completed_successfully | ||||
|   op-node: | ||||
|     image: blastio/blast-optimism:${NETWORK:-testnet-sepolia} | ||||
|     volumes: | ||||
|       - blast-data:/blast | ||||
|       - ../config/fixturenet-blast/rollup.json:/blast/rollup.json | ||||
|     ports: | ||||
|       - "9003" | ||||
|     command: > | ||||
|       op-node | ||||
|       --l1="${CERC_L1_RPC}" | ||||
|       --l1.rpckind="any" | ||||
|       --l1.trustrpc=true | ||||
|       --l2="http://blast-geth:8551" | ||||
|       --l2.jwt-secret=/blast/jwt.txt | ||||
|       --rollup.config="/blast/rollup.json" | ||||
|     depends_on: | ||||
|       - blast-geth | ||||
|     env_file:  | ||||
|       - ../config/fixturenet-blast/${NETWORK:-fixturenet}.config | ||||
| 
 | ||||
| volumes: | ||||
|   blast-data: | ||||
| @ -0,0 +1,83 @@ | ||||
| 
 | ||||
| # From: https://raw.githubusercontent.com/blast-io/deployment/master/docker-compose.yml | ||||
| services: | ||||
|   # generate jwt.txt if it's absent | ||||
|   generate-jwt: | ||||
|     image: blastio/openssl | ||||
|     volumes: | ||||
|       - blast-data:/blast:rw | ||||
|     command: > | ||||
|       sh -c "[ ! -f /blast/jwt.txt ] && openssl rand -hex 32 | tr -d '\n' > /blast/jwt.txt || exit 0" | ||||
|   # initialise geth db | ||||
|   geth-init: | ||||
|     image: blastio/blast-geth:${NETWORK:-mainnet} | ||||
|     volumes: | ||||
|       - blast-data:/blast:rw | ||||
|     entrypoint: /bin/sh | ||||
|     command: > | ||||
|       -c "[ ! -d /blast/${GETH_DATA_DIR:-blast-geth-data}/geth ] && /usr/local/bin/geth init --datadir=/blast/${GETH_DATA_DIR:-blast-geth-data} /blast/genesis.json || exit 0" | ||||
|     depends_on: | ||||
|       generate-jwt: | ||||
|         condition: service_completed_successfully | ||||
|     env_file:  | ||||
|       - ../config/mainnet-blast/${NETWORK:-mainnet}.config | ||||
|   blast-geth: | ||||
|     image: blastio/blast-geth:${NETWORK:-mainnet} | ||||
|     volumes: | ||||
|       - blast-data:/blast | ||||
|     ports: | ||||
|       - "9545" | ||||
|       - "9546" | ||||
|       - "6060" | ||||
|     command: > | ||||
|       --datadir=/blast/${GETH_DATA_DIR:-blast-geth-data} | ||||
|       --http | ||||
|       --http.corsdomain="*" | ||||
|       --http.vhosts="*" | ||||
|       --http.addr=0.0.0.0 | ||||
|       --http.port=9545 | ||||
|       --http.api=web3,debug,eth,txpool,net,engine | ||||
|       --ws | ||||
|       --ws.addr=0.0.0.0 | ||||
|       --ws.port=9546 | ||||
|       --ws.origins="*" | ||||
|       --ws.api=debug,eth,txpool,net,engine | ||||
|       --authrpc.addr="0.0.0.0" | ||||
|       --authrpc.port="8551" | ||||
|       --authrpc.vhosts="*" | ||||
|       --authrpc.jwtsecret=/blast/jwt.txt | ||||
|       --syncmode=full | ||||
|       --metrics | ||||
|       --metrics.addr=0.0.0.0 | ||||
|       --gcmode=archive | ||||
|       --nodiscover | ||||
|       --maxpeers=0 | ||||
|       --rollup.disabletxpoolgossip=true | ||||
|     env_file:  | ||||
|       - ../config/mainnet-blast/${NETWORK:-mainnet}.config | ||||
|     depends_on: | ||||
|       geth-init: | ||||
|         condition: service_completed_successfully | ||||
|   op-node: | ||||
|     image: blastio/blast-optimism:${NETWORK:-mainnet} | ||||
|     volumes: | ||||
|       - blast-data:/blast | ||||
|     ports: | ||||
|       - "9003" | ||||
|       - "7300" | ||||
|     command: > | ||||
|       op-node | ||||
|       --l1="https://eth-mainnet-1.vdb.to/" | ||||
|       --metrics.enabled | ||||
|       --l1.rpckind="any" | ||||
|       --l1.trustrpc=true | ||||
|       --l2="http://blast-geth:8551" | ||||
|       --l2.jwt-secret=/blast/jwt.txt | ||||
|       --rollup.config="/blast/rollup.json" | ||||
|     depends_on: | ||||
|       - blast-geth | ||||
|     env_file:  | ||||
|       - ../config/mainnet-blast/${NETWORK:-mainnet}.config | ||||
| 
 | ||||
| volumes: | ||||
|   blast-data: | ||||
| @ -0,0 +1,2 @@ | ||||
| GETH_ROLLUP_SEQUENCERHTTP=https://sequencer.s2.testblast.io | ||||
| OP_NODE_P2P_BOOTNODES=enr:-J-4QM3GLUFfKMSJQuP1UvuKQe8DyovE7Eaiit0l6By4zjTodkR4V8NWXJxNmlg8t8rP-Q-wp3jVmeAOml8cjMj__ROGAYznzb_HgmlkgnY0gmlwhA-cZ_eHb3BzdGFja4X947FQAIlzZWNwMjU2azGhAiuDqvB-AsVSRmnnWr6OHfjgY8YfNclFy9p02flKzXnOg3RjcIJ2YYN1ZHCCdmE,enr:-J-4QDCVpByqQ8nFqCS9aHicqwUfXgzFDslvpEyYz19lvkHLIdtcIGp2d4q5dxHdjRNTO6HXCsnIKxUeuZSPcEbyVQCGAYznzz0RgmlkgnY0gmlwhANiQfuHb3BzdGFja4X947FQAIlzZWNwMjU2azGhAy3AtF2Jh_aPdOohg506Hjmtx-fQ1AKmu71C7PfkWAw9g3RjcIJ2YYN1ZHCCdmE | ||||
							
								
								
									
										57
									
								
								stack_orchestrator/data/config/fixturenet-blast/genesis.json
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										57
									
								
								stack_orchestrator/data/config/fixturenet-blast/genesis.json
									
									
									
									
									
										Normal file
									
								
							| @ -0,0 +1,57 @@ | ||||
| { | ||||
|   "config": { | ||||
|     "chainId": 608943043, | ||||
|     "homesteadBlock": 0, | ||||
|     "eip150Block": 0, | ||||
|     "eip155Block": 0, | ||||
|     "eip158Block": 0, | ||||
|     "byzantiumBlock": 0, | ||||
|     "constantinopleBlock": 0, | ||||
|     "petersburgBlock": 0, | ||||
|     "istanbulBlock": 0, | ||||
|     "muirGlacierBlock": 0, | ||||
|     "berlinBlock": 0, | ||||
|     "londonBlock": 0, | ||||
|     "arrowGlacierBlock": 0, | ||||
|     "grayGlacierBlock": 0, | ||||
|     "mergeNetsplitBlock": 0, | ||||
|     "shanghaiTime": 0, | ||||
|     "bedrockBlock": 0, | ||||
|     "regolithTime": 0, | ||||
|     "canyonTime": 0, | ||||
|     "terminalTotalDifficulty": 0, | ||||
|     "terminalTotalDifficultyPassed": true, | ||||
|     "optimism": { | ||||
|       "eip1559Elasticity": 6, | ||||
|       "eip1559Denominator": 50, | ||||
|       "eip1559DenominatorCanyon": 250 | ||||
|     } | ||||
|   }, | ||||
|   "alloc": { | ||||
|     "0000000000000000000000000000000000000000": { | ||||
|       "balance": "0x1" | ||||
|     }, | ||||
|     "4200000000000000000000000000000000000000": { | ||||
|       "code": "0x60806040526004361061004e5760003560e01c80633659cfe6146100655780634f1ef286146100855780635c60da1b146100ae5780638f283970146100db578063f851a440146100fb5761005d565b3661005d5761005b610110565b005b61005b610110565b34801561007157600080fd5b5061005b610080366004610521565b6101c8565b61009861009336600461053c565b61020e565b6040516100a591906105bf565b60405180910390f35b3480156100ba57600080fd5b506100c361033e565b6040516001600160a01b0390911681526020016100a5565b3480156100e757600080fd5b5061005b6100f6366004610521565b6103a9565b34801561010757600080fd5b506100c36103e4565b600061013a7f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc5490565b90506001600160a01b0381166101a55760405162461bcd60e51b815260206004820152602560248201527f50726f78793a20696d706c656d656e746174696f6e206e6f7420696e697469616044820152641b1a5e995960da1b60648201526084015b60405180910390fd5b3660008037600080366000845af43d6000803e806101c2573d6000fd5b503d6000f35b600080516020610625833981519152546001600160a01b0316336001600160a01b031614806101f5575033155b156102065761020381610432565b50565b610203610110565b60606102266000805160206106258339815191525490565b6001600160a01b0316336001600160a01b03161480610243575033155b1561032f5761025184610432565b600080856001600160a01b0316858560405161026e929190610614565b600060405180830381855af49150503d80600081146102a9576040519150601f19603f3d011682016040523d82523d6000602084013e6102ae565b606091505b5091509150816103265760405162461bcd60e51b815260206004820152603960248201527f50726f78793a2064656c656761746563616c6c20746f206e657720696d706c6560448201527f6d656e746174696f6e20636f6e7472616374206661696c656400000000000000606482015260840161019c565b91506103379050565b610337610110565b9392505050565b60006103566000805160206106258339815191525490565b6001600160a01b0316336001600160a01b03161480610373575033155b1561039e57507f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc5490565b6103a6610110565b90565b600080516020610625833981519152546001600160a01b0316336001600160a01b031614806103d6575033155b15610206576102038161048e565b60006103fc6000805160206106258339815191525490565b6001600160a01b0316336001600160a01b03161480610419575033155b1561039e57506000805160206106258339815191525490565b7f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc8181556040516001600160a01b038316907fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b90600090a25050565b60006104a66000805160206106258339815191525490565b600080516020610625833981519152838155604080516001600160a01b0380851682528616602082015292935090917f7e644d79422f17c01e4894b5f4f588d331ebfa28653d42ae832dc59e38c9798f910160405180910390a1505050565b80356001600160a01b038116811461051c57600080fd5b919050565b60006020828403121561053357600080fd5b61033782610505565b60008060006040848603121561055157600080fd5b61055a84610505565b9250602084013567ffffffffffffffff8082111561057757600080fd5b818601915086601f83011261058b57600080fd5b81358181111561059a57600080fd5b8760208285010111156105ac57600080fd5b6020830194508093505050509250925092565b600060208083528351808285015260005b818110156105ec578581018301518582016040015282016105d0565b818111156105fe576000604083870101525b50601f01601f1916929092016040019392505050565b818382376000910190815291905056feb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d6103a164736f6c634300080f000a", | ||||
|       "storage": { | ||||
|         "0x360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc": "0x000000000000000000000000c0d3c0d3c0d3c0d3c0d3c0d3c0d3c0d3c0d30000", | ||||
|         "0xb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d6103": "0x0000000000000000000000004200000000000000000000000000000000000018" | ||||
|       }, | ||||
|       "balance": "0x0", | ||||
|       "flags": 1 | ||||
|     } | ||||
|   }, | ||||
|   "nonce": "0x0", | ||||
|   "timestamp": "0x659b7460", | ||||
|   "extraData": "0x424544524f434b", | ||||
|   "gasLimit": "0x1c9c380", | ||||
|   "difficulty": "0x0", | ||||
|   "mixHash": "0x0000000000000000000000000000000000000000000000000000000000000000", | ||||
|   "coinbase": "0x4200000000000000000000000000000000000011", | ||||
|   "number": "0x0", | ||||
|   "gasUsed": "0x0", | ||||
|   "parentHash": "0x0000000000000000000000000000000000000000000000000000000000000000", | ||||
|   "baseFeePerGas": "0x3b9aca00", | ||||
|   "excessBlobGas": null, | ||||
|   "blobGasUsed": null | ||||
| } | ||||
							
								
								
									
										31
									
								
								stack_orchestrator/data/config/fixturenet-blast/rollup.json
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										31
									
								
								stack_orchestrator/data/config/fixturenet-blast/rollup.json
									
									
									
									
									
										Normal file
									
								
							| @ -0,0 +1,31 @@ | ||||
| { | ||||
|   "genesis": { | ||||
|     "l1": { | ||||
|       "hash": "0x17728cf4d8e0b4f292d2390a869fd7c632d39e72efb00ca3462b4387c6aa2437", | ||||
|       "number": 5044255 | ||||
|     }, | ||||
|     "l2": { | ||||
|       "hash": "0x26a1c0faad7b041f34569a1bb383f00ab74b335883a44bed53e9f41ced5fd906", | ||||
|       "number": 0 | ||||
|     }, | ||||
|     "l2_time": 1704686688, | ||||
|     "system_config": { | ||||
|       "batcherAddr": "0xba26fee2fa917443e05e65de8d4350bcd2f59222", | ||||
|       "overhead": "0x00000000000000000000000000000000000000000000000000000000000000bc", | ||||
|       "scalar": "0x00000000000000000000000000000000000000000000000000000000000a6fe0", | ||||
|       "gasLimit": 30000000 | ||||
|     } | ||||
|   }, | ||||
|   "block_time": 2, | ||||
|   "max_sequencer_drift": 600, | ||||
|   "seq_window_size": 3600, | ||||
|   "channel_timeout": 300, | ||||
|   "l1_chain_id": 11155111, | ||||
|   "l2_chain_id": 608943043, | ||||
|   "regolith_time": 0, | ||||
|   "canyon_time": 0, | ||||
|   "batch_inbox_address": "0x1c3b85a2108784eab6a4bf56cdd6f722e415b331", | ||||
|   "deposit_contract_address": "0x2757e4430e694f27b73ec9c02257cab3a498c8c5", | ||||
|   "l1_system_config_address": "0x329faf078c364a316e08bf6a17b7eee6ae75a613", | ||||
|   "protocol_versions_address": "0x0000000000000000000000000000000000000000" | ||||
| } | ||||
							
								
								
									
										0
									
								
								stack_orchestrator/data/config/mainnet-blast/.env
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										0
									
								
								stack_orchestrator/data/config/mainnet-blast/.env
									
									
									
									
									
										Normal file
									
								
							
							
								
								
									
										29685
									
								
								stack_orchestrator/data/config/mainnet-blast/genesis.json
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										29685
									
								
								stack_orchestrator/data/config/mainnet-blast/genesis.json
									
									
									
									
									
										Normal file
									
								
							
										
											
												File diff suppressed because one or more lines are too long
											
										
									
								
							
							
								
								
									
										2391
									
								
								stack_orchestrator/data/config/mainnet-blast/import/cerc-realm.json
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										2391
									
								
								stack_orchestrator/data/config/mainnet-blast/import/cerc-realm.json
									
									
									
									
									
										Normal file
									
								
							
										
											
												File diff suppressed because it is too large
												Load Diff
											
										
									
								
							
							
								
								
									
										32
									
								
								stack_orchestrator/data/config/mainnet-blast/keycloak.env
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										32
									
								
								stack_orchestrator/data/config/mainnet-blast/keycloak.env
									
									
									
									
									
										Normal file
									
								
							| @ -0,0 +1,32 @@ | ||||
| POSTGRES_DB=keycloak | ||||
| POSTGRES_USER=keycloak | ||||
| POSTGRES_PASSWORD=keycloak | ||||
| # Don't change this unless you also change the healthcheck in docker-compose-mainnet-eth-keycloak.yml | ||||
| PGPORT=35432 | ||||
| KC_DB=postgres | ||||
| KC_DB_URL_HOST=keycloak-db | ||||
| KC_DB_URL_PORT=${PGPORT} | ||||
| KC_DB_URL_DATABASE=${POSTGRES_DB} | ||||
| KC_DB_USERNAME=${POSTGRES_USER} | ||||
| KC_DB_PASSWORD=${POSTGRES_PASSWORD} | ||||
| KC_DB_SCHEMA=public | ||||
| KC_HOSTNAME=localhost | ||||
| KC_HTTP_ENABLED="true" | ||||
| KC_HTTP_RELATIVE_PATH="/auth" | ||||
| KC_HOSTNAME_STRICT_HTTPS="false" | ||||
| KEYCLOAK_ADMIN=admin | ||||
| KEYCLOAK_ADMIN_PASSWORD=admin | ||||
| X_API_CHECK_REALM=cerc | ||||
| X_API_CHECK_CLIENT_ID="%user_id%" | ||||
| 
 | ||||
| 
 | ||||
| # keycloak-reg-api | ||||
| CERC_KCUSERREG_LISTEN_PORT=9292 | ||||
| CERC_KCUSERREG_LISTEN_ADDR='0.0.0.0' | ||||
| CERC_KCUSERREG_API_URL='http://keycloak:8080/auth' | ||||
| CERC_KCUSERREG_REG_USER="${KEYCLOAK_ADMIN}" | ||||
| CERC_KCUSERREG_REG_PW="${KEYCLOAK_ADMIN_PASSWORD}" | ||||
| CERC_KCUSERREG_REG_CLIENT_ID='admin-cli' | ||||
| CERC_KCUSERREG_TARGET_REALM=cerc | ||||
| CERC_KCUSERREG_TARGET_GROUPS=eth | ||||
| CERC_KCUSERREG_CREATE_ENABLED=true | ||||
							
								
								
									
										33
									
								
								stack_orchestrator/data/config/mainnet-blast/lighthouse.env
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										33
									
								
								stack_orchestrator/data/config/mainnet-blast/lighthouse.env
									
									
									
									
									
										Normal file
									
								
							| @ -0,0 +1,33 @@ | ||||
| # Enable startup script debug output. | ||||
| CERC_SCRIPT_DEBUG=false | ||||
| 
 | ||||
| # Specify any other lighthouse CLI options. | ||||
| LIGHTHOUSE_OPTS="" | ||||
| 
 | ||||
| # Override the advertised public IP (optional) | ||||
| # --enr-address | ||||
| #LIGHTHOUSE_ENR_ADDRESS="" | ||||
| 
 | ||||
| # --checkpoint-sync-url | ||||
| LIGHTHOUSE_CHECKPOINT_SYNC_URL="https://beaconstate.ethstaker.cc" | ||||
| 
 | ||||
| # --checkpoint-sync-url-timeout | ||||
| LIGHTHOUSE_CHECKPOINT_SYNC_URL_TIMEOUT=300 | ||||
| 
 | ||||
| # --datadir | ||||
| LIGHTHOUSE_DATADIR=/data | ||||
| 
 | ||||
| # --debug-level | ||||
| LIGHTHOUSE_DEBUG_LEVEL=info | ||||
| 
 | ||||
| # --http-port | ||||
| LIGHTHOUSE_HTTP_PORT=5052 | ||||
| 
 | ||||
| # --execution-jwt | ||||
| LIGHTHOUSE_JWTSECRET=/etc/mainnet-eth/jwtsecret | ||||
| 
 | ||||
| # --metrics-port | ||||
| LIGHTHOUSE_METRICS_PORT=5054 | ||||
| 
 | ||||
| # --port --enr-udp-port --enr-tcp-port | ||||
| LIGHTHOUSE_NETWORK_PORT=9000 | ||||
| @ -0,0 +1,2 @@ | ||||
| GETH_ROLLUP_SEQUENCERHTTP=https://sequencer.blast.io | ||||
| OP_NODE_P2P_BOOTNODES=enr:-J64QGwHl9uYLfC_cnmxSA6wQH811nkOWJDWjzxqkEUlJoZHWvI66u-BXgVcPCeMUmg0dBpFQAPotFchG67FHJMZ9OSGAY3d6wevgmlkgnY0gmlwhANizeSHb3BzdGFja4Sx_AQAiXNlY3AyNTZrMaECg4pk0cskPAyJ7pOmo9E6RqGBwV-Lex4VS9a3MQvu7PWDdGNwgnZhg3VkcIJ2YQ,enr:-J64QDge2jYBQtcNEpRqmKfci5E5BHAhNBjgv4WSdwH1_wPqbueq2bDj38-TSW8asjy5lJj1Xftui6Or8lnaYFCqCI-GAY3d6wf3gmlkgnY0gmlwhCO2D9yHb3BzdGFja4Sx_AQAiXNlY3AyNTZrMaEDo4aCTq7pCEN8om9U5n_VyWdambGnQhwHNwKc8o-OicaDdGNwgnZhg3VkcIJ2YQ | ||||
							
								
								
									
										32
									
								
								stack_orchestrator/data/config/mainnet-blast/rollup.json
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										32
									
								
								stack_orchestrator/data/config/mainnet-blast/rollup.json
									
									
									
									
									
										Normal file
									
								
							| @ -0,0 +1,32 @@ | ||||
| { | ||||
|     "genesis": { | ||||
|       "l1": { | ||||
|         "hash": "0xfcfb8d586bdae763f1189988789211c69eb893a895e7ba48be3ca6289f0941b7", | ||||
|         "number": 19300102 | ||||
|       }, | ||||
|       "l2": { | ||||
|         "hash": "0xb689b35ef29d0bec5816938e0e52683c7257d2e325420ea69b739a2be4754b89", | ||||
|         "number": 0 | ||||
|       }, | ||||
|       "l2_time": 1708809815, | ||||
|       "system_config": { | ||||
|         "batcherAddr": "0x415c8893d514f9bc5211d36eeda4183226b84aa7", | ||||
|         "overhead": "0x00000000000000000000000000000000000000000000000000000000000000bc", | ||||
|         "scalar": "0x00000000000000000000000000000000000000000000000000000000000a6fe0", | ||||
|         "gasLimit": 30000000 | ||||
|       } | ||||
|     }, | ||||
|     "block_time": 2, | ||||
|     "max_sequencer_drift": 600, | ||||
|     "seq_window_size": 3600, | ||||
|     "channel_timeout": 300, | ||||
|     "l1_chain_id": 1, | ||||
|     "l2_chain_id": 81457, | ||||
|     "regolith_time": 0, | ||||
|     "canyon_time": 0, | ||||
|     "batch_inbox_address": "0xff00000000000000000000000000000000081457", | ||||
|     "deposit_contract_address": "0x0ec68c5b10f21effb74f2a5c61dfe6b08c0db6cb", | ||||
|     "l1_system_config_address": "0x5531dcff39ec1ec727c4c5d2fc49835368f805a9", | ||||
|     "protocol_versions_address": "0x0000000000000000000000000000000000000000" | ||||
|   } | ||||
|    | ||||
							
								
								
									
										30
									
								
								stack_orchestrator/data/config/mainnet-blast/run-lighthouse.sh
									
									
									
									
									
										Executable file
									
								
							
							
						
						
									
										30
									
								
								stack_orchestrator/data/config/mainnet-blast/run-lighthouse.sh
									
									
									
									
									
										Executable file
									
								
							| @ -0,0 +1,30 @@ | ||||
| #!/bin/bash | ||||
| if [[ "true" == "$CERC_SCRIPT_DEBUG" ]]; then | ||||
|     set -x | ||||
| fi | ||||
| 
 | ||||
| ENR_OPTS="" | ||||
| if [[ -n "$LIGHTHOUSE_ENR_ADDRESS" ]]; then | ||||
|   ENR_OPTS="--enr-address $LIGHTHOUSE_ENR_ADDRESS" | ||||
| fi | ||||
| 
 | ||||
| exec lighthouse bn \ | ||||
|   --checkpoint-sync-url "$LIGHTHOUSE_CHECKPOINT_SYNC_URL" \ | ||||
|   --checkpoint-sync-url-timeout ${LIGHTHOUSE_CHECKPOINT_SYNC_URL_TIMEOUT} \ | ||||
|   --datadir "$LIGHTHOUSE_DATADIR" \ | ||||
|   --debug-level $LIGHTHOUSE_DEBUG_LEVEL \ | ||||
|   --disable-deposit-contract-sync \ | ||||
|   --disable-upnp \ | ||||
|   --enr-tcp-port $LIGHTHOUSE_NETWORK_PORT \ | ||||
|   --enr-udp-port $LIGHTHOUSE_NETWORK_PORT \ | ||||
|   --execution-endpoint "$LIGHTHOUSE_EXECUTION_ENDPOINT" \ | ||||
|   --execution-jwt /etc/mainnet-eth/jwtsecret \ | ||||
|   --http \ | ||||
|   --http-address 0.0.0.0 \ | ||||
|   --http-port $LIGHTHOUSE_HTTP_PORT \ | ||||
|   --metrics \ | ||||
|   --metrics-address=0.0.0.0 \ | ||||
|   --metrics-port $LIGHTHOUSE_METRICS_PORT \ | ||||
|   --network mainnet \ | ||||
|   --port $LIGHTHOUSE_NETWORK_PORT \ | ||||
|   $ENR_OPTS $LIGHTHOUSE_OPTS | ||||
							
								
								
									
										26
									
								
								stack_orchestrator/data/stacks/fixturenet-blast/README.md
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										26
									
								
								stack_orchestrator/data/stacks/fixturenet-blast/README.md
									
									
									
									
									
										Normal file
									
								
							| @ -0,0 +1,26 @@ | ||||
| # Blast stack | ||||
| 
 | ||||
| ## Clone required repositories | ||||
| ``` | ||||
| $ laconic-so --stack fixturenet-blast setup-repositories | ||||
| ``` | ||||
| ## Build the stack's containers | ||||
| ``` | ||||
| $ laconic-so --stack fixturenet-blast build-containers | ||||
| ``` | ||||
| ## Create a deployment of the stack | ||||
| ``` | ||||
| $ laconic-so --stack fixturenet-blast deploy init --map-ports-to-host any-same --output blast-spec.yml | ||||
| ``` | ||||
| [Insert details on how to configure the stack] | ||||
| ``` | ||||
| $ laconic-so --stack fixturenet-blast deploy create --deployment-dir blast-deployment --spec-file blast-spec.yml | ||||
| ``` | ||||
| ## Start the stack | ||||
| ``` | ||||
| $ laconic-so deployment --dir blast-deployment start | ||||
| ``` | ||||
| Check logs: | ||||
| ``` | ||||
| $ laconic-so deployment --dir blast-deployment logs | ||||
| ``` | ||||
							
								
								
									
										17
									
								
								stack_orchestrator/data/stacks/fixturenet-blast/stack.yml
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										17
									
								
								stack_orchestrator/data/stacks/fixturenet-blast/stack.yml
									
									
									
									
									
										Normal file
									
								
							| @ -0,0 +1,17 @@ | ||||
| version: "1.0" | ||||
| name: fixturenet-blast | ||||
| description: "A blast devnet stack" | ||||
| repos: | ||||
|   - github.com/blast-io/blast | ||||
|   - git.vdb.to/cerc-io/lighthouse | ||||
| containers: | ||||
|   - cerc/webapp-base | ||||
|   - cerc/lighthouse | ||||
|   - cerc/lighthouse-cli | ||||
|   - cerc/foundry | ||||
|   - cerc/fixturenet-eth-lighthouse | ||||
| 
 | ||||
| pods: | ||||
|   - fixturenet-blast | ||||
|   - foundry | ||||
|    | ||||
							
								
								
									
										26
									
								
								stack_orchestrator/data/stacks/mainnet-blast/README.md
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										26
									
								
								stack_orchestrator/data/stacks/mainnet-blast/README.md
									
									
									
									
									
										Normal file
									
								
							| @ -0,0 +1,26 @@ | ||||
| # Blast stack | ||||
| 
 | ||||
| ## Clone required repositories | ||||
| ``` | ||||
| $ laconic-so --stack mainnet-blast setup-repositories | ||||
| ``` | ||||
| ## Build the stack's containers | ||||
| ``` | ||||
| $ laconic-so --stack mainnet-blast build-containers | ||||
| ``` | ||||
| ## Create a deployment of the stack | ||||
| ``` | ||||
| $ laconic-so --stack mainnet-blast deploy init --map-ports-to-host any-same --output blast-spec.yml | ||||
| ``` | ||||
| [Insert details on how to configure the stack] | ||||
| ``` | ||||
| $ laconic-so --stack mainnet-blast deploy create --deployment-dir blast-deployment --spec-file blast-spec.yml | ||||
| ``` | ||||
| ## Start the stack | ||||
| ``` | ||||
| $ laconic-so deployment --dir blast-deployment start | ||||
| ``` | ||||
| Check logs: | ||||
| ``` | ||||
| $ laconic-so deployment --dir blast-deployment logs | ||||
| ``` | ||||
| @ -0,0 +1,39 @@ | ||||
| # Copyright © 2023 Vulcanize | ||||
| 
 | ||||
| # This program is free software: you can redistribute it and/or modify | ||||
| # it under the terms of the GNU Affero General Public License as published by | ||||
| # the Free Software Foundation, either version 3 of the License, or | ||||
| # (at your option) any later version. | ||||
| 
 | ||||
| # This program is distributed in the hope that it will be useful, | ||||
| # but WITHOUT ANY WARRANTY; without even the implied warranty of | ||||
| # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the | ||||
| # GNU Affero General Public License for more details. | ||||
| 
 | ||||
| # You should have received a copy of the GNU Affero General Public License | ||||
| # along with this program.  If not, see <http:#www.gnu.org/licenses/>. | ||||
| 
 | ||||
| 
 | ||||
| from pathlib import Path | ||||
| from shutil import copy | ||||
| import yaml | ||||
| 
 | ||||
| 
 | ||||
| def create(context, extra_args): | ||||
|     # Our goal here is just to copy the json files for blast | ||||
|     yml_path = context.deployment_dir.joinpath("spec.yml") | ||||
|     with open(yml_path, 'r') as file: | ||||
|         data = yaml.safe_load(file) | ||||
| 
 | ||||
|     mount_point = data['volumes']['blast-data'] | ||||
|     if mount_point[0] == "/": | ||||
|         deploy_dir = Path(mount_point) | ||||
|     else: | ||||
|         deploy_dir = context.deployment_dir.joinpath(mount_point) | ||||
| 
 | ||||
|     command_context = extra_args[2] | ||||
|     compose_file = [f for f in command_context.cluster_context.compose_files if "mainnet-blast" in f][0] | ||||
|     source_config_file = Path(compose_file).parent.parent.joinpath("config", "mainnet-blast", "genesis.json") | ||||
|     copy(source_config_file, deploy_dir) | ||||
|     source_config_file = Path(compose_file).parent.parent.joinpath("config", "mainnet-blast", "rollup.json") | ||||
|     copy(source_config_file, deploy_dir) | ||||
							
								
								
									
										12
									
								
								stack_orchestrator/data/stacks/mainnet-blast/stack.yml
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										12
									
								
								stack_orchestrator/data/stacks/mainnet-blast/stack.yml
									
									
									
									
									
										Normal file
									
								
							| @ -0,0 +1,12 @@ | ||||
| version: "1.0" | ||||
| name: mainnet-blast | ||||
| description: "A blast stack" | ||||
| repos: | ||||
|   - github.com/blast-io/blast | ||||
|   - git.vdb.to/cerc-io/lighthouse | ||||
| containers: | ||||
|   - cerc/webapp-base | ||||
|   - cerc/lighthouse | ||||
|   - cerc/lighthouse-cli | ||||
| pods: | ||||
|   - mainnet-blast | ||||
		Loading…
	
		Reference in New Issue
	
	Block a user