Add a plugeth-based version of the fixturenet #411

Merged
telackey merged 4 commits from telackey/plugeth into main 2023-05-25 16:21:08 +00:00
6 changed files with 206 additions and 0 deletions

View File

@ -0,0 +1,129 @@
Review

Apparently version is no longer required or used in compose files.

Apparently version is no longer required or used in compose files.
Review

Apparently version is no longer required or used in compose files.

Apparently version is no longer required or used in compose files.
services:
Review

Apparently version is no longer required or used in compose files.

Apparently version is no longer required or used in compose files.
fixturenet-eth-bootnode-geth:
Review

Apparently version is no longer required or used in compose files.

Apparently version is no longer required or used in compose files.
restart: always
Review

Apparently version is no longer required or used in compose files.

Apparently version is no longer required or used in compose files.
hostname: fixturenet-eth-bootnode-geth
Review

Apparently version is no longer required or used in compose files.

Apparently version is no longer required or used in compose files.
env_file:
Review

Apparently version is no longer required or used in compose files.

Apparently version is no longer required or used in compose files.
- ../config/fixturenet-eth/fixturenet-eth.env
Review

Apparently version is no longer required or used in compose files.

Apparently version is no longer required or used in compose files.
environment:
Review

Apparently version is no longer required or used in compose files.

Apparently version is no longer required or used in compose files.
RUN_BOOTNODE: "true"
Review

Apparently version is no longer required or used in compose files.

Apparently version is no longer required or used in compose files.
image: cerc/fixturenet-eth-plugeth:local
Review

Apparently version is no longer required or used in compose files.

Apparently version is no longer required or used in compose files.
volumes:
Review

Apparently version is no longer required or used in compose files.

Apparently version is no longer required or used in compose files.
- fixturenet_plugeth_bootnode_geth_data:/root/ethdata
Review

Apparently version is no longer required or used in compose files.

Apparently version is no longer required or used in compose files.
- ../config/fixturenet-plugeth/plugins:/root/ethdata/plugins
Review

Apparently version is no longer required or used in compose files.

Apparently version is no longer required or used in compose files.
ports:
Review

Apparently version is no longer required or used in compose files.

Apparently version is no longer required or used in compose files.
- "9898"
Review

Apparently version is no longer required or used in compose files.

Apparently version is no longer required or used in compose files.
- "30303"
Review

Apparently version is no longer required or used in compose files.

Apparently version is no longer required or used in compose files.
Review

Apparently version is no longer required or used in compose files.

Apparently version is no longer required or used in compose files.
fixturenet-eth-geth-1:
Review

Apparently version is no longer required or used in compose files.

Apparently version is no longer required or used in compose files.
restart: always
Review

Apparently version is no longer required or used in compose files.

Apparently version is no longer required or used in compose files.
hostname: fixturenet-eth-geth-1
Review

Apparently version is no longer required or used in compose files.

Apparently version is no longer required or used in compose files.
cap_add:
Review

Apparently version is no longer required or used in compose files.

Apparently version is no longer required or used in compose files.
- SYS_PTRACE
Review

Apparently version is no longer required or used in compose files.

Apparently version is no longer required or used in compose files.
environment:
Review

Apparently version is no longer required or used in compose files.

Apparently version is no longer required or used in compose files.
CERC_REMOTE_DEBUG: "true"
Review

Apparently version is no longer required or used in compose files.

Apparently version is no longer required or used in compose files.
CERC_RUN_STATEDIFF: "detect"
Review

Apparently version is no longer required or used in compose files.

Apparently version is no longer required or used in compose files.
CERC_STATEDIFF_DB_NODE_ID: 1
Review

Apparently version is no longer required or used in compose files.

Apparently version is no longer required or used in compose files.
CERC_SCRIPT_DEBUG: ${CERC_SCRIPT_DEBUG}
Review

Apparently version is no longer required or used in compose files.

Apparently version is no longer required or used in compose files.
env_file:
Review

Apparently version is no longer required or used in compose files.

Apparently version is no longer required or used in compose files.
- ../config/fixturenet-eth/fixturenet-eth.env
Review

Apparently version is no longer required or used in compose files.

Apparently version is no longer required or used in compose files.
image: cerc/fixturenet-eth-plugeth:local
Review

Apparently version is no longer required or used in compose files.

Apparently version is no longer required or used in compose files.
volumes:
Review

Apparently version is no longer required or used in compose files.

Apparently version is no longer required or used in compose files.
- fixturenet_plugeth_geth_1_data:/root/ethdata
Review

Apparently version is no longer required or used in compose files.

Apparently version is no longer required or used in compose files.
- ../config/fixturenet-plugeth/plugins:/root/ethdata/plugins
Review

Apparently version is no longer required or used in compose files.

Apparently version is no longer required or used in compose files.
healthcheck:
Review

Apparently version is no longer required or used in compose files.

Apparently version is no longer required or used in compose files.
test: ["CMD", "wget", "--tries=1", "--connect-timeout=1", "--quiet", "-O", "-", "http://localhost:8545/"]
Review

Apparently version is no longer required or used in compose files.

Apparently version is no longer required or used in compose files.
interval: 30s
Review

Apparently version is no longer required or used in compose files.

Apparently version is no longer required or used in compose files.
timeout: 10s
Review

Apparently version is no longer required or used in compose files.

Apparently version is no longer required or used in compose files.
retries: 10
Review

Apparently version is no longer required or used in compose files.

Apparently version is no longer required or used in compose files.
start_period: 3s
Review

Apparently version is no longer required or used in compose files.

Apparently version is no longer required or used in compose files.
depends_on:
Review

Apparently version is no longer required or used in compose files.

Apparently version is no longer required or used in compose files.
- fixturenet-eth-bootnode-geth
Review

Apparently version is no longer required or used in compose files.

Apparently version is no longer required or used in compose files.
ports:
Review

Apparently version is no longer required or used in compose files.

Apparently version is no longer required or used in compose files.
- "8545"
Review

Apparently version is no longer required or used in compose files.

Apparently version is no longer required or used in compose files.
- "40000"
Review

Apparently version is no longer required or used in compose files.

Apparently version is no longer required or used in compose files.
- "6060"
Review

Apparently version is no longer required or used in compose files.

Apparently version is no longer required or used in compose files.
Review

Apparently version is no longer required or used in compose files.

Apparently version is no longer required or used in compose files.
fixturenet-eth-geth-2:
Review

Apparently version is no longer required or used in compose files.

Apparently version is no longer required or used in compose files.
restart: always
Review

Apparently version is no longer required or used in compose files.

Apparently version is no longer required or used in compose files.
hostname: fixturenet-eth-geth-2
Review

Apparently version is no longer required or used in compose files.

Apparently version is no longer required or used in compose files.
healthcheck:
Review

Apparently version is no longer required or used in compose files.

Apparently version is no longer required or used in compose files.
test: ["CMD", "wget", "--tries=1", "--connect-timeout=1", "--quiet", "-O", "-", "http://localhost:8545/"]
Review

Apparently version is no longer required or used in compose files.

Apparently version is no longer required or used in compose files.
interval: 30s
Review

Apparently version is no longer required or used in compose files.

Apparently version is no longer required or used in compose files.
timeout: 10s
Review

Apparently version is no longer required or used in compose files.

Apparently version is no longer required or used in compose files.
retries: 10
Review

Apparently version is no longer required or used in compose files.

Apparently version is no longer required or used in compose files.
start_period: 3s
Review

Apparently version is no longer required or used in compose files.

Apparently version is no longer required or used in compose files.
environment:
Review

Apparently version is no longer required or used in compose files.

Apparently version is no longer required or used in compose files.
CERC_KEEP_RUNNING_AFTER_GETH_EXIT: "true"
Review

Apparently version is no longer required or used in compose files.

Apparently version is no longer required or used in compose files.
env_file:
Review

Apparently version is no longer required or used in compose files.

Apparently version is no longer required or used in compose files.
- ../config/fixturenet-eth/fixturenet-eth.env
Review

Apparently version is no longer required or used in compose files.

Apparently version is no longer required or used in compose files.
image: cerc/fixturenet-eth-plugeth:local
Review

Apparently version is no longer required or used in compose files.

Apparently version is no longer required or used in compose files.
depends_on:
Review

Apparently version is no longer required or used in compose files.

Apparently version is no longer required or used in compose files.
- fixturenet-eth-bootnode-geth
Review

Apparently version is no longer required or used in compose files.

Apparently version is no longer required or used in compose files.
volumes:
Review

Apparently version is no longer required or used in compose files.

Apparently version is no longer required or used in compose files.
- fixturenet_plugeth_geth_2_data:/root/ethdata
Review

Apparently version is no longer required or used in compose files.

Apparently version is no longer required or used in compose files.
- ../config/fixturenet-plugeth/plugins:/root/ethdata/plugins
Review

Apparently version is no longer required or used in compose files.

Apparently version is no longer required or used in compose files.
Review

Apparently version is no longer required or used in compose files.

Apparently version is no longer required or used in compose files.
fixturenet-eth-bootnode-lighthouse:
Review

Apparently version is no longer required or used in compose files.

Apparently version is no longer required or used in compose files.
restart: always
Review

Apparently version is no longer required or used in compose files.

Apparently version is no longer required or used in compose files.
hostname: fixturenet-eth-bootnode-lighthouse
Review

Apparently version is no longer required or used in compose files.

Apparently version is no longer required or used in compose files.
environment:
Review

Apparently version is no longer required or used in compose files.

Apparently version is no longer required or used in compose files.
RUN_BOOTNODE: "true"
Review

Apparently version is no longer required or used in compose files.

Apparently version is no longer required or used in compose files.
image: cerc/fixturenet-eth-lighthouse:local
Review

Apparently version is no longer required or used in compose files.

Apparently version is no longer required or used in compose files.
Review

Apparently version is no longer required or used in compose files.

Apparently version is no longer required or used in compose files.
fixturenet-eth-lighthouse-1:
Review

Apparently version is no longer required or used in compose files.

Apparently version is no longer required or used in compose files.
restart: always
Review

Apparently version is no longer required or used in compose files.

Apparently version is no longer required or used in compose files.
hostname: fixturenet-eth-lighthouse-1
Review

Apparently version is no longer required or used in compose files.

Apparently version is no longer required or used in compose files.
healthcheck:
Review

Apparently version is no longer required or used in compose files.

Apparently version is no longer required or used in compose files.
test: ["CMD", "wget", "--tries=1", "--connect-timeout=1", "--quiet", "-O", "-", "http://localhost:8001/eth/v2/beacon/blocks/head"]
Review

Apparently version is no longer required or used in compose files.

Apparently version is no longer required or used in compose files.
interval: 30s
Review

Apparently version is no longer required or used in compose files.

Apparently version is no longer required or used in compose files.
timeout: 10s
Review

Apparently version is no longer required or used in compose files.

Apparently version is no longer required or used in compose files.
retries: 10
Review

Apparently version is no longer required or used in compose files.

Apparently version is no longer required or used in compose files.
start_period: 30s
Review

Apparently version is no longer required or used in compose files.

Apparently version is no longer required or used in compose files.
env_file:
Review

Apparently version is no longer required or used in compose files.

Apparently version is no longer required or used in compose files.
- ../config/fixturenet-eth/fixturenet-eth.env
Review

Apparently version is no longer required or used in compose files.

Apparently version is no longer required or used in compose files.
environment:
Review

Apparently version is no longer required or used in compose files.

Apparently version is no longer required or used in compose files.
NODE_NUMBER: "1"
Review

Apparently version is no longer required or used in compose files.

Apparently version is no longer required or used in compose files.
ETH1_ENDPOINT: "http://fixturenet-eth-geth-1:8545"
Review

Apparently version is no longer required or used in compose files.

Apparently version is no longer required or used in compose files.
EXECUTION_ENDPOINT: "http://fixturenet-eth-geth-1:8551"
Review

Apparently version is no longer required or used in compose files.

Apparently version is no longer required or used in compose files.
image: cerc/fixturenet-eth-lighthouse:local
Review

Apparently version is no longer required or used in compose files.

Apparently version is no longer required or used in compose files.
volumes:
Review

Apparently version is no longer required or used in compose files.

Apparently version is no longer required or used in compose files.
- fixturenet_plugeth_lighthouse_1_data:/opt/testnet/build/cl
Review

Apparently version is no longer required or used in compose files.

Apparently version is no longer required or used in compose files.
depends_on:
Review

Apparently version is no longer required or used in compose files.

Apparently version is no longer required or used in compose files.
fixturenet-eth-bootnode-lighthouse:
Review

Apparently version is no longer required or used in compose files.

Apparently version is no longer required or used in compose files.
condition: service_started
Review

Apparently version is no longer required or used in compose files.

Apparently version is no longer required or used in compose files.
fixturenet-eth-geth-1:
Review

Apparently version is no longer required or used in compose files.

Apparently version is no longer required or used in compose files.
condition: service_healthy
Review

Apparently version is no longer required or used in compose files.

Apparently version is no longer required or used in compose files.
ports:
Review

Apparently version is no longer required or used in compose files.

Apparently version is no longer required or used in compose files.
- "8001"
Review

Apparently version is no longer required or used in compose files.

Apparently version is no longer required or used in compose files.
Review

Apparently version is no longer required or used in compose files.

Apparently version is no longer required or used in compose files.
fixturenet-eth-lighthouse-2:
Review

Apparently version is no longer required or used in compose files.

Apparently version is no longer required or used in compose files.
restart: always
Review

Apparently version is no longer required or used in compose files.

Apparently version is no longer required or used in compose files.
hostname: fixturenet-eth-lighthouse-2
Review

Apparently version is no longer required or used in compose files.

Apparently version is no longer required or used in compose files.
healthcheck:
Review

Apparently version is no longer required or used in compose files.

Apparently version is no longer required or used in compose files.
test: ["CMD", "wget", "--tries=1", "--connect-timeout=1", "--quiet", "-O", "-", "http://localhost:8001/eth/v2/beacon/blocks/head"]
Review

Apparently version is no longer required or used in compose files.

Apparently version is no longer required or used in compose files.
interval: 30s
Review

Apparently version is no longer required or used in compose files.

Apparently version is no longer required or used in compose files.
timeout: 10s
Review

Apparently version is no longer required or used in compose files.

Apparently version is no longer required or used in compose files.
retries: 10
Review

Apparently version is no longer required or used in compose files.

Apparently version is no longer required or used in compose files.
start_period: 30s
Review

Apparently version is no longer required or used in compose files.

Apparently version is no longer required or used in compose files.
env_file:
Review

Apparently version is no longer required or used in compose files.

Apparently version is no longer required or used in compose files.
- ../config/fixturenet-eth/fixturenet-eth.env
Review

Apparently version is no longer required or used in compose files.

Apparently version is no longer required or used in compose files.
environment:
Review

Apparently version is no longer required or used in compose files.

Apparently version is no longer required or used in compose files.
NODE_NUMBER: "2"
Review

Apparently version is no longer required or used in compose files.

Apparently version is no longer required or used in compose files.
ETH1_ENDPOINT: "http://fixturenet-eth-geth-2:8545"
Review

Apparently version is no longer required or used in compose files.

Apparently version is no longer required or used in compose files.
EXECUTION_ENDPOINT: "http://fixturenet-eth-geth-2:8551"
Review

Apparently version is no longer required or used in compose files.

Apparently version is no longer required or used in compose files.
LIGHTHOUSE_GENESIS_STATE_URL: "http://fixturenet-eth-lighthouse-1:8001/eth/v2/debug/beacon/states/0"
Review

Apparently version is no longer required or used in compose files.

Apparently version is no longer required or used in compose files.
image: cerc/fixturenet-eth-lighthouse:local
Review

Apparently version is no longer required or used in compose files.

Apparently version is no longer required or used in compose files.
volumes:
Review

Apparently version is no longer required or used in compose files.

Apparently version is no longer required or used in compose files.
- fixturenet_plugeth_lighthouse_2_data:/opt/testnet/build/cl
Review

Apparently version is no longer required or used in compose files.

Apparently version is no longer required or used in compose files.
depends_on:
Review

Apparently version is no longer required or used in compose files.

Apparently version is no longer required or used in compose files.
fixturenet-eth-bootnode-lighthouse:
Review

Apparently version is no longer required or used in compose files.

Apparently version is no longer required or used in compose files.
condition: service_started
Review

Apparently version is no longer required or used in compose files.

Apparently version is no longer required or used in compose files.
fixturenet-eth-geth-2:
Review

Apparently version is no longer required or used in compose files.

Apparently version is no longer required or used in compose files.
condition: service_healthy
Review

Apparently version is no longer required or used in compose files.

Apparently version is no longer required or used in compose files.
Review

Apparently version is no longer required or used in compose files.

Apparently version is no longer required or used in compose files.
volumes:
Review

Apparently version is no longer required or used in compose files.

Apparently version is no longer required or used in compose files.
fixturenet_plugeth_bootnode_geth_data:
Review

Apparently version is no longer required or used in compose files.

Apparently version is no longer required or used in compose files.
fixturenet_plugeth_geth_1_data:
Review

Apparently version is no longer required or used in compose files.

Apparently version is no longer required or used in compose files.
fixturenet_plugeth_geth_2_data:
Review

Apparently version is no longer required or used in compose files.

Apparently version is no longer required or used in compose files.
fixturenet_plugeth_lighthouse_1_data:
Review

Apparently version is no longer required or used in compose files.

Apparently version is no longer required or used in compose files.
fixturenet_plugeth_lighthouse_2_data:
Review

Apparently version is no longer required or used in compose files.

Apparently version is no longer required or used in compose files.

View File

@ -0,0 +1 @@
See: https://docs.plugeth.org/

View File

@ -0,0 +1,27 @@
FROM skylenet/ethereum-genesis-generator@sha256:210353ce7c898686bc5092f16c61220a76d357f51eff9c451e9ad1b9ad03d4d3 AS ethgen
FROM golang:1.19.4-bullseye AS delve
RUN go install github.com/go-delve/delve/cmd/dlv@latest
FROM ubuntu:22.04
RUN apt-get update && \
apt-get install -y --no-install-recommends \
python3 python3-dev python3-pip curl wget jq gettext gettext-base openssl bash dnsutils postgresql-client make iproute2 netcat && \
rm -rf /var/lib/apt/lists/*
COPY --from=delve /go/bin/dlv /usr/local/bin/
COPY --from=ethgen /usr/local/bin/eth2-testnet-genesis /usr/local/bin/
COPY --from=ethgen /usr/local/bin/eth2-val-tools /usr/local/bin/
COPY --from=ethgen /apps /apps
RUN wget -O /usr/local/bin/geth https://github.com/openrelayxyz/plugeth/releases/download/v1.11.6.1.0/geth-linux-amd64-v1.1.0-v1.11.6.1.0 && chmod a+x /usr/local/bin/geth
RUN cd /apps/el-gen && pip3 install -r requirements.txt
COPY genesis /opt/testnet
COPY run-el.sh /opt/testnet/run.sh
RUN cd /opt/testnet && make genesis-el
RUN geth --datadir ~/ethdata init /opt/testnet/build/el/geth.json && rm -f ~/ethdata/geth/nodekey
ENTRYPOINT ["/opt/testnet/run.sh"]

View File

@ -0,0 +1,17 @@
#!/usr/bin/env bash
# Build cerc/fixturenet-eth-plugeth
set -x
source ${CERC_CONTAINER_BASE_DIR}/build-base.sh
SCRIPT_DIR=$( cd -- "$( dirname -- "${BASH_SOURCE[0]}" )" &> /dev/null && pwd )
if [ ! -d "${SCRIPT_DIR}/genesis" ]; then
cp -frp ${SCRIPT_DIR}/../cerc-fixturenet-eth-geth/genesis ${SCRIPT_DIR}/genesis
fi
if [ ! -d "${SCRIPT_DIR}/run-el.sh" ]; then
cp -fp ${SCRIPT_DIR}/../cerc-fixturenet-eth-geth/run-el.sh ${SCRIPT_DIR}/
fi
docker build -t cerc/fixturenet-eth-plugeth:local -f ${SCRIPT_DIR}/Dockerfile ${build_command_args} $SCRIPT_DIR

View File

@ -0,0 +1,19 @@
# fixturenet-plugeth-tx
A variation of `fixturenet-eth` that uses `plugeth` instead of `go-ethereum`.
See `stacks/fixturenet-eth/README.md` for more information.
## Containers
* cerc/lighthouse
* cerc/fixturenet-eth-plugeth
* cerc/fixturenet-eth-lighthouse
* cerc/tx-spammer
## Deploy the stack
```
$ laconic-so --stack fixturenet-plugeth-tx setup-repositories
$ laconic-so --stack fixturenet-plugeth-tx build-containers
$ laconic-so --stack fixturenet-plugeth-tx deploy up
```

View File

@ -0,0 +1,13 @@
version: "1.2"
name: fixturenet-plugeth-tx
decription: "plugeth Ethereum Fixturenet w/ tx-spammer"
repos:
- github.com/cerc-io/tx-spammer
containers:
- cerc/lighthouse
- cerc/fixturenet-eth-plugeth
- cerc/fixturenet-eth-lighthouse
- cerc/tx-spammer
pods:
- fixturenet-plugeth
- tx-spammer