Merge pull request #216 from cerc-io/dboreham/fixturenet-eth-deploy-contracts
deploy contracts and use foundry with fixturenet-eth Former-commit-id: f8155cb29a8648514604d6f1dac32a5a7b59729d
This commit is contained in:
commit
5c3384c7ae
@ -3,3 +3,6 @@ services:
|
|||||||
foundry:
|
foundry:
|
||||||
image: cerc/foundry:local
|
image: cerc/foundry:local
|
||||||
command: ["while :; do sleep 600; done"]
|
command: ["while :; do sleep 600; done"]
|
||||||
|
volumes:
|
||||||
|
- ../config/foundry/foundry.toml:/foundry.toml
|
||||||
|
- ./foundry/workspace:/workspace
|
||||||
|
2
app/data/config/foundry/foundry.toml
Normal file
2
app/data/config/foundry/foundry.toml
Normal file
@ -0,0 +1,2 @@
|
|||||||
|
[profile.default]
|
||||||
|
eth-rpc-url = "http://fixturenet-eth-geth-1:8545"
|
@ -24,7 +24,7 @@ if [ -z "$GETH_BASE_URL" ]; then
|
|||||||
fi
|
fi
|
||||||
|
|
||||||
function inc_status() {
|
function inc_status() {
|
||||||
echo " DONE!"
|
echo " done"
|
||||||
STATUS=$((STATUS + 1))
|
STATUS=$((STATUS + 1))
|
||||||
if [ $STATUS -lt ${#STATUSES[@]} ]; then
|
if [ $STATUS -lt ${#STATUSES[@]} ]; then
|
||||||
echo -n "Waiting for ${STATUSES[$STATUS]}..."
|
echo -n "Waiting for ${STATUSES[$STATUS]}..."
|
||||||
|
@ -20,27 +20,31 @@ This should create several container images in the local image registry:
|
|||||||
|
|
||||||
## Deploy the stack
|
## Deploy the stack
|
||||||
```
|
```
|
||||||
$ laconic-so --stack fixturenet-eth deploy-system up
|
$ laconic-so --stack fixturenet-eth deploy up
|
||||||
```
|
```
|
||||||
|
|
||||||
## Check status
|
## Check status
|
||||||
|
|
||||||
```
|
```
|
||||||
$ container-build/cerc-fixturenet-eth-lighthouse/scripts/status.sh
|
$ laconic-so --stack fixturenet-eth deploy exec fixturenet-eth-bootnode-lighthouse /scripts/status-internal.sh
|
||||||
Waiting for geth to generate DAG ..................................................... DONE!
|
Waiting for geth to generate DAG.... done
|
||||||
Waiting for beacon phase0 .... DONE!
|
Waiting for beacon phase0.... done
|
||||||
Waiting for beacon altair .... DONE!
|
Waiting for beacon altair.... done
|
||||||
Waiting for beacon bellatrix pre-merge .... DONE!
|
Waiting for beacon bellatrix pre-merge.... done
|
||||||
Waiting for beacon bellatrix merge .... DONE!
|
Waiting for beacon bellatrix merge.... done
|
||||||
|
|
||||||
$ docker ps -f 'name=laconic' --format 'table {{.Names}}\t{{.Ports}}' | cut -d'-' -f3- | sort
|
$ laconic-so --stack fixturenet-eth deploy ps
|
||||||
NAMES PORTS
|
Running containers:
|
||||||
fixturenet-eth-bootnode-geth-1 8545-8546/tcp, 30303/udp, 0.0.0.0:55847->9898/tcp, 0.0.0.0:55848->30303/tcp
|
id: c6538b60c0328dadfa2c5585c4d09674a6a13e6d712ff1cd82a26849e4e5679b, name: laconic-b12fa16e999821562937781f8ab0b1e8-fixturenet-eth-bootnode-geth-1, ports: 0.0.0.0:58909->30303/tcp, 0.0.0.0:58910->9898/tcp
|
||||||
fixturenet-eth-bootnode-lighthouse-1
|
id: 5b70597a8211bc7e78d33e50486cb565a7f4a9ce581ce150b3bb450e342bdeda, name: laconic-b12fa16e999821562937781f8ab0b1e8-fixturenet-eth-bootnode-lighthouse-1, ports:
|
||||||
fixturenet-eth-geth-1-1 8546/tcp, 30303/tcp, 30303/udp, 0.0.0.0:55851->8545/tcp
|
id: 19ed78867b6c534d893835cdeb1e89a9ea553b8e8c02ab02468e4bd1563a340f, name: laconic-b12fa16e999821562937781f8ab0b1e8-fixturenet-eth-geth-1-1, ports: 0.0.0.0:58911->40000/tcp, 0.0.0.0:58912->6060/tcp, 0.0.0.0:58913->8545/tcp
|
||||||
fixturenet-eth-geth-2-1 8545-8546/tcp, 30303/tcp, 30303/udp
|
id: 8da0e30a1ce33122d8fd2225e4d26c7f30eb4bfbfa743f2af04d9db5d0bf7fa6, name: laconic-b12fa16e999821562937781f8ab0b1e8-fixturenet-eth-geth-2-1, ports:
|
||||||
fixturenet-eth-lighthouse-1-1 0.0.0.0:55858->8001/tcp
|
id: 387a42a14971034588ba9aeb9b9e2ca7fc0cc61b96f8fe8c2ab770c9d6fb1e0f, name: laconic-b12fa16e999821562937781f8ab0b1e8-fixturenet-eth-lighthouse-1-1, ports: 0.0.0.0:58917->8001/tcp
|
||||||
fixturenet-eth-lighthouse-2-1
|
id: de5115bf89087bae03b291664a73ffe3554fe23e79e4b8345e088b040d5580ac, name: laconic-b12fa16e999821562937781f8ab0b1e8-fixturenet-eth-lighthouse-2-1, ports:
|
||||||
|
id: 2a7e5a0fb2be7fc9261a7b725a40818facbbe6d0cb2497d82c0e02de0a8e959b, name: laconic-b12fa16e999821562937781f8ab0b1e8-foundry-1, ports:
|
||||||
|
|
||||||
|
$ laconic-so --stack fixturenet-eth deploy exec foundry "cast block-number"
|
||||||
|
3
|
||||||
```
|
```
|
||||||
|
|
||||||
## Additional pieces
|
## Additional pieces
|
||||||
@ -69,11 +73,11 @@ $ laconic-so deploy-system --include db,fixturenet-eth,ipld-eth-server,ipld-eth-
|
|||||||
# Status
|
# Status
|
||||||
|
|
||||||
$ container-build/cerc-fixturenet-eth-lighthouse/scripts/status.sh
|
$ container-build/cerc-fixturenet-eth-lighthouse/scripts/status.sh
|
||||||
Waiting for geth to generate DAG.... DONE!
|
Waiting for geth to generate DAG.... done
|
||||||
Waiting for beacon phase0.... DONE!
|
Waiting for beacon phase0.... done
|
||||||
Waiting for beacon altair.... DONE!
|
Waiting for beacon altair.... done
|
||||||
Waiting for beacon bellatrix pre-merge.... DONE!
|
Waiting for beacon bellatrix pre-merge.... done
|
||||||
Waiting for beacon bellatrix merge.... DONE!
|
Waiting for beacon bellatrix merge.... done
|
||||||
|
|
||||||
$ docker ps -f 'name=laconic' --format 'table {{.Names}}\t{{.Ports}}' | cut -d'-' -f3- | sort
|
$ docker ps -f 'name=laconic' --format 'table {{.Names}}\t{{.Ports}}' | cut -d'-' -f3- | sort
|
||||||
NAMES PORTS
|
NAMES PORTS
|
||||||
|
@ -22,7 +22,7 @@ import sys
|
|||||||
from dataclasses import dataclass
|
from dataclasses import dataclass
|
||||||
from decouple import config
|
from decouple import config
|
||||||
import subprocess
|
import subprocess
|
||||||
from python_on_whales import DockerClient
|
from python_on_whales import DockerClient, DockerException
|
||||||
import click
|
import click
|
||||||
import importlib.resources
|
import importlib.resources
|
||||||
from pathlib import Path
|
from pathlib import Path
|
||||||
@ -83,7 +83,10 @@ def command(ctx, include, exclude, cluster, command, extra_args):
|
|||||||
container_exec_env = _make_runtime_env(ctx.obj)
|
container_exec_env = _make_runtime_env(ctx.obj)
|
||||||
if verbose:
|
if verbose:
|
||||||
print(f"Running compose exec {service_name} {command_to_exec}")
|
print(f"Running compose exec {service_name} {command_to_exec}")
|
||||||
docker.compose.execute(service_name, command_to_exec, envs=container_exec_env)
|
try:
|
||||||
|
docker.compose.execute(service_name, command_to_exec, envs=container_exec_env)
|
||||||
|
except DockerException as error:
|
||||||
|
print(f"container command returned error exit status")
|
||||||
elif command == "port":
|
elif command == "port":
|
||||||
if extra_args_list is None or len(extra_args_list) < 2:
|
if extra_args_list is None or len(extra_args_list) < 2:
|
||||||
print("Usage: port <service> <exposed-port>")
|
print("Usage: port <service> <exposed-port>")
|
||||||
@ -301,7 +304,7 @@ def _orchestrate_cluster_config(ctx, cluster_config, docker, container_exec_env)
|
|||||||
print(f"fetched source value: {source_value}")
|
print(f"fetched source value: {source_value}")
|
||||||
destination_output = docker.compose.execute(pd.destination_container,
|
destination_output = docker.compose.execute(pd.destination_container,
|
||||||
["sh", "-c",
|
["sh", "-c",
|
||||||
f"sh /scripts/import-{pd.destination_variable}.sh {pd.source_variable}"],
|
f"sh /scripts/import-{pd.destination_variable}.sh {source_value}"],
|
||||||
tty=False,
|
tty=False,
|
||||||
envs=container_exec_env)
|
envs=container_exec_env)
|
||||||
if ctx.debug:
|
if ctx.debug:
|
||||||
|
Loading…
Reference in New Issue
Block a user