Skip to content

Commit

Permalink
resolve conflict from merging master
Browse files Browse the repository at this point in the history
  • Loading branch information
dadepo committed Mar 13, 2022
2 parents a3101b0 + f532758 commit f8a6521
Show file tree
Hide file tree
Showing 62 changed files with 1,031 additions and 705 deletions.
5 changes: 5 additions & 0 deletions .github/workflows/release.yml
Expand Up @@ -30,6 +30,11 @@ jobs:
env:
CURRENT_TAG: ${{ steps.get_tag.outputs.tag }}
IGNORE_PATTERN: beta

- name: Assert tag == package.json version
run: .github/workflows/scripts/assert-same-package-version.sh
env:
TAG: ${{ steps.get_tag.outputs.tag }}
outputs:
is_beta: ${{ contains(github.ref, 'beta') }}
tag: ${{ steps.get_tag.outputs.tag }}
Expand Down
19 changes: 19 additions & 0 deletions .github/workflows/scripts/assert-same-package-version.sh
@@ -0,0 +1,19 @@
# Our current release strategy does not gurantee that the tagged commit
# has the same version in the package.json.
#
# If that's not the case, no version will be published to NPM and a faulty image will be published to dockerhub

LOCAL_VERSION=$(jq -r .version lerna.json)

if [ -z "$TAG" ]; then
echo "ENV TAG is empty"
exit 1
fi

if [[ $TAG == *"$LOCAL_VERSION"* ]]; then
echo "TAG $TAG includes LOCAL_VERSION $LOCAL_VERSION"
exit 0
else
echo "TAG $TAG does not include LOCAL_VERSION $LOCAL_VERSION"
exit 1
fi
7 changes: 4 additions & 3 deletions .github/workflows/test-sim-merge.yml
Expand Up @@ -3,8 +3,8 @@ name: Sim merge tests
on: [pull_request, push]

env:
GETH_COMMIT: e44f96d1d31bdc405f2653709df53bab4596f66b
NETHERMIND_COMMIT: f1fe9d3cb200772c9fd0b8b3935212d93d0f90fe
GETH_COMMIT: 59a36720b322a1b7e7084de30d6bad2371e5a067
NETHERMIND_COMMIT: e6537a3937b7af0cc9d7f892d5698394490eeec4

jobs:
sim-merge-tests:
Expand Down Expand Up @@ -59,7 +59,7 @@ jobs:
with:
dotnet-version: "6.0.x"
- name: Clone Nethermind merge interop branch
run: git clone -b kiln_processing https://github.com/g11tech/nethermind --recursive && cd nethermind && git reset --hard $NETHERMIND_COMMIT && git submodule update --init --recursive
run: git clone -b kiln https://github.com/g11tech/nethermind --recursive && cd nethermind && git reset --hard $NETHERMIND_COMMIT && git submodule update --init --recursive
- name: Build Nethermind
run: cd nethermind/src/Nethermind && dotnet build Nethermind.sln -c Release

Expand All @@ -70,6 +70,7 @@ jobs:
EL_BINARY_DIR: ../../nethermind/src/Nethermind/Nethermind.Runner
EL_SCRIPT_DIR: kiln/nethermind
EL_PORT: 8550
ENGINE_PORT: 8551

- name: Upload debug log test files
if: ${{ always() }}
Expand Down
4 changes: 2 additions & 2 deletions RELEASE.md
Expand Up @@ -17,15 +17,15 @@ export TAG=v0.34.0-beta.0 && git tag -a $TAG 9fceb02 -m "$TAG" && git push origi
4. The team creates a PR to bump `master` to the next version (in the example: `v0.35.0`) and continues releasing nightly builds.

```
lerna version minor --no-git-tag-version
lerna version minor --no-git-tag-version --force-publish
```

After 3-5 days of testing:

5. Tag final stable commit as `v0.34.0`, release and publish the stable release. This commit will be in `v0.34.x` branch and may note be on `master` if beta candidate required bug fixes.

```
export TAG=v0.34.0 git && tag -a $TAG 9fceb02 -m "$TAG" && git push origin $TAG
export TAG=v0.34.0 && git tag -a $TAG 9fceb02 -m "$TAG" && git push origin $TAG
```

## Pre-Releases
Expand Down
11 changes: 6 additions & 5 deletions kiln/devnets/README.md
Expand Up @@ -11,18 +11,18 @@ This is a setup to run and join the devnet with a single shell command. This scr
###### Just run the script with arguments

```bash
cd kintsugi/devnets
./setup.sh --dataDir kintsugi-data --elClient geth --devnetVars ./kintsugi.vars [--dockerWithSudo --withTerminal "gnome-terminal --disable-factory --"]
cd kiln/devnets
./setup.sh --dataDir kiln-data --elClient geth --devnetVars ./kiln.vars [--dockerWithSudo --withTerminal "gnome-terminal --disable-factory --" --withValidator]
```

###### Example scenarios

1. Run with separate terminals launched & attached (best for testing in local) :
`./setup.sh --dataDir kintsugi-data --elClient nethermind --devnetVars ./kintsugi.vars --withTerminal "gnome-terminal --disable-factory --" --dockerWithSudo `
`./setup.sh --dataDir kiln-data --elClient nethermind --devnetVars ./kiln.vars --withTerminal "gnome-terminal --disable-factory --" --dockerWithSudo `
2. Run _in-terminal_ attached with logs interleaved (best for testing in remote shell) :
`./setup.sh --dataDir kintsugi-data --elClient nethermind --devnetVars ./kintsugi.vars --dockerWithSudo`
`./setup.sh --dataDir kiln-data --elClient nethermind --devnetVars ./kiln.vars --dockerWithSudo`
3. Run detached (best for leaving it to run, typically after testing 1 or 2):
`./setup.sh --dataDir kintsugi-data --elClient nethermind --devnetVars ./kintsugi.vars --detached --dockerWithSudo`
`./setup.sh --dataDir kiln-data --elClient nethermind --devnetVars ./kiln.vars --detached --dockerWithSudo`

You can alternate between `geth` and `nethermind` to experiment with the ELs being out of sync ( and catching up) with `lodestar`.

Expand All @@ -35,5 +35,6 @@ You can alternate between `geth` and `nethermind` to experiment with the ELs bei
5. `--withTerminal`(optional): Provide the terminal command prefix for CL and EL processes to run in your favourite terminal.
You may use an alias or a terminal launching script as long as it waits for the command it runs till ends and then closes.If not provided, it will launch the docker processes in _in-terminal_ mode.
6. `--detached`(optional): By default the script will wait for processes and use user input (ctrl +c) to end the processes, however you can pass this option to skip this behavior and just return, for e.g. in case you just want to leave it running.
7. `--withValidator` (optional): Launch a validator client using `LODESTAR_VALIDATOR_ARGS` as set in the devnet vars file.

Only one of `--withTerminal` or `--detached` should be provided.
15 changes: 0 additions & 15 deletions kiln/devnets/devnet4.vars

This file was deleted.

13 changes: 7 additions & 6 deletions kiln/devnets/devnet5.vars
@@ -1,15 +1,16 @@
DEVNET_NAME=devnet5

GETH_IMAGE=parithoshj/geth:merge-59a3672
NETHERMIND_IMAGE=nethermindeth/nethermind:kiln_0.4
GETH_IMAGE=parithoshj/geth:merge-876ca42
NETHERMIND_IMAGE=nethermindeth/nethermind:kiln_0.6
LODESTAR_IMAGE=chainsafe/lodestar:next

CONFIG_GIT_DIR=merge-devnet-5

LODESTAR_EXTRA_ARGS="--eth1.providerUrls http://127.0.0.1:8545 --execution.urls http://127.0.0.1:8545 --api.rest.enabled --api.rest.host 0.0.0.0"
JWT_SECRET="0xdc6457099f127cf0bac78de8b297df04951281909db4f58b43def7c7151e765d"

LODESTAR_EXTRA_ARGS="--eth1.providerUrls http://127.0.0.1:8545 --execution.urls http://127.0.0.1:8551 --api.rest.enabled --api.rest.host 0.0.0.0"

NETHERMIND_EXTRA_ARGS="--config kiln --Init.WebSocketsEnabled=true --JsonRpc.Enabled=true --JsonRpc.EnabledModules=net,eth,consensus,engine,subscribe,web3 --JsonRpc.Port=8545 --JsonRpc.WebSocketsPort=8546 --JsonRpc.Host=0.0.0.0 --Network.DiscoveryPort=30303 --Network.P2PPort=30303 --Merge.Enabled=true --Merge.TerminalTotalDifficulty=500000000000 --Init.DiagnosticMode=None"
NETHERMIND_EXTRA_ARGS="--config kiln --Network.DiscoveryPort=30303 --Network.P2PPort=30303 --Merge.Enabled=true --Merge.TerminalTotalDifficulty=500000000000 --Init.DiagnosticMode=None --JsonRpc.Enabled=true --JsonRpc.Host=0.0.0.0 --JsonRpc.AdditionalRpcUrls \"http://localhost:8545|http;ws|net;eth;subscribe;engine;web3;client|no-auth,http://localhost:8551|http;ws|net;eth;subscribe;engine;web3;client\""

GETH_EXTRA_ARGS="--http --http.api engine,net,eth --http.port 8545 --ws --ws.api net,eth,engine --ws.port=8546 --ws.addr 0.0.0.0 --allow-insecure-unlock --networkid 1337762 --http.addr 0.0.0.0"
GETH_EXTRA_ARGS="--http --http.api engine,net,eth --http.port 8545 --allow-insecure-unlock --http.addr 0.0.0.0 --authrpc.port=8551 --networkid 1337762"

EXTRA_BOOTNODES=""
21 changes: 21 additions & 0 deletions kiln/devnets/kiln.vars
@@ -0,0 +1,21 @@
DEVNET_NAME=kiln

GETH_IMAGE=parithoshj/geth:merge-876ca42
NETHERMIND_IMAGE=nethermindeth/nethermind:kiln_0.6
ETHEREUMJS_IMAGE=g11tech/ethereumjs:kiln
LODESTAR_IMAGE=chainsafe/lodestar:next
CONFIG_GIT_DIR=kiln

JWT_SECRET="0xdc6457099f127cf0bac78de8b297df04951281909db4f58b43def7c7151e765d"

LODESTAR_EXTRA_ARGS="--eth1.providerUrls http://127.0.0.1:8545 --execution.urls http://127.0.0.1:8551 --api.rest.enabled --api.rest.host 0.0.0.0 --api.rest.api '*'"

LODESTAR_VALIDATOR_ARGS='--network kiln --fromMnemonic "lens risk clerk foot verb planet drill roof boost aim salt omit celery tube list permit motor obvious flash demise churn hold wave hollow" --mnemonicIndexes 0..5'

NETHERMIND_EXTRA_ARGS="--config kiln --Network.DiscoveryPort=30303 --Network.P2PPort=30303 --Merge.Enabled=true --Merge.TerminalTotalDifficulty=20000000000000 --Init.DiagnosticMode=None --JsonRpc.Enabled=true --JsonRpc.Host=0.0.0.0 --JsonRpc.AdditionalRpcUrls \"http://localhost:8545|http;ws|net;eth;subscribe;engine;web3;client|no-auth,http://localhost:8551|http;ws|net;eth;subscribe;engine;web3;client\""

GETH_EXTRA_ARGS="--http --http.api engine,net,eth --http.port 8545 --allow-insecure-unlock --http.addr 0.0.0.0 --authrpc.port=8551 --networkid 1337802"

ETHEREUMJS_EXTRA_ARGS="--saveReceipts --rpc --rpcport 8545 --ws --rpcEngine --rpcEnginePort=8551 --rpcDebug --loglevel=debug"

EXTRA_BOOTNODES=""
5 changes: 5 additions & 0 deletions kiln/devnets/parse-args.sh
Expand Up @@ -27,6 +27,10 @@ while [[ $# -gt 0 ]]; do
dockerWithSudo=true
shift # past argument
;;
--withValidator)
withValidator=true
shift # past argument
;;
--detached)
detached=true
shift # past argument
Expand All @@ -42,6 +46,7 @@ echo "dataDir = $dataDir"
echo "devnetVars = $devnetVars"
echo "withTerminal = $withTerminal"
echo "dockerWithSudo = $dockerWithSudo"
echo "withValidator = $withValidator"
echo "detached = $detached"

if [ -n "$withTerminal" ] && [ -n "$detached" ]
Expand Down

0 comments on commit f8a6521

Please sign in to comment.