Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
5 changes: 5 additions & 0 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -213,6 +213,11 @@ This downloads `genesis.json`, `config.yaml`, `genesis.ssz`, `enodes.txt`, `boot

#### ⚠️ Caveats when deploying Lido protocol on public ethpandaops devnets

> Glamsterdam / ePBS devnets (EIP-7825 × EIP-8037): see
> [docs/troubleshooting/glamsterdam-external-devnet-deploy.md](./docs/troubleshooting/glamsterdam-external-devnet-deploy.md)
> for the two gas footguns (DAO factory + circuit-breaker forge step) and why a
> late failure forces a full Core redeploy (no incremental resume).

- **Deploy is slow.** `stands glamsterdam-full` / `stands glamsterdam-kurtosis` runs `lidoCore` `dao-deploy.sh` end-to-end:
- `yarn install` + `yarn build` of `lido-core` (~3-5 min, ~1300 packages)
- 12+ migration scripts deploying ~50 contracts via hardhat + forge (~10-20 min)
Expand Down
40 changes: 40 additions & 0 deletions docs/commands/artifact.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,40 @@
`./bin/run.js artifact`
=======================

Archive network artifacts excluding node_modules

* [`./bin/run.js artifact dump`](#binrunjs-artifact-dump)
* [`./bin/run.js artifact restore`](#binrunjs-artifact-restore)

## `./bin/run.js artifact dump`

Archive network artifacts excluding node_modules

```
USAGE
$ ./bin/run.js artifact dump [--network <value>] [--output <value>]

FLAGS
--network=<value> [default: main-with-easytrack] Name of the network (default: 'main-with-easytrack')
--output=<value> Output path for the archive (default: ./{network-name}.tar.gz)

DESCRIPTION
Archive network artifacts excluding node_modules
```

## `./bin/run.js artifact restore`

Restore network artifacts from archive and install dependencies

```
USAGE
$ ./bin/run.js artifact restore [--network <value>] [--archive <value>] [--skipInstall]

FLAGS
--archive=<value> Path to the archive file (default: ./{network-name}.tar.gz)
--network=<value> [default: main-with-easytrack] Name of the network (default: 'main-with-easytrack')
--skipInstall Skip installing dependencies

DESCRIPTION
Restore network artifacts from archive and install dependencies
```
128 changes: 128 additions & 0 deletions docs/commands/cli-pod.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,128 @@
`./bin/run.js cli-pod`
======================

Remove CLI pod from the cluster

* [`./bin/run.js cli-pod down`](#binrunjs-cli-pod-down)
* [`./bin/run.js cli-pod logs`](#binrunjs-cli-pod-logs)
* [`./bin/run.js cli-pod shell`](#binrunjs-cli-pod-shell)
* [`./bin/run.js cli-pod status`](#binrunjs-cli-pod-status)
* [`./bin/run.js cli-pod up`](#binrunjs-cli-pod-up)
* [`./bin/run.js cli-pod update`](#binrunjs-cli-pod-update)
* [`./bin/run.js cli-pod verify`](#binrunjs-cli-pod-verify)

## `./bin/run.js cli-pod down`

Remove CLI pod from the cluster

```
USAGE
$ ./bin/run.js cli-pod down [--network <value>] [--namespace <value>]

FLAGS
--namespace=<value> [default: core-devnets-sandbox] Kubernetes namespace for cli-pod
--network=<value> [default: main-with-easytrack] Name of the network (default: 'main-with-easytrack')

DESCRIPTION
Remove CLI pod from the cluster
```

## `./bin/run.js cli-pod logs`

Tail CLI pod logs

```
USAGE
$ ./bin/run.js cli-pod logs [--network <value>] [--namespace <value>]

FLAGS
--namespace=<value> [default: core-devnets-sandbox] Kubernetes namespace for cli-pod
--network=<value> [default: main-with-easytrack] Name of the network (default: 'main-with-easytrack')

DESCRIPTION
Tail CLI pod logs
```

## `./bin/run.js cli-pod shell`

Open an interactive shell inside the CLI pod

```
USAGE
$ ./bin/run.js cli-pod shell [--network <value>] [--namespace <value>]

FLAGS
--namespace=<value> [default: core-devnets-sandbox] Kubernetes namespace for cli-pod
--network=<value> [default: main-with-easytrack] Name of the network (default: 'main-with-easytrack')

DESCRIPTION
Open an interactive shell inside the CLI pod
```

## `./bin/run.js cli-pod status`

Show CLI pod status in the cluster

```
USAGE
$ ./bin/run.js cli-pod status [--network <value>] [--namespace <value>]

FLAGS
--namespace=<value> [default: core-devnets-sandbox] Kubernetes namespace for cli-pod
--network=<value> [default: main-with-easytrack] Name of the network (default: 'main-with-easytrack')

DESCRIPTION
Show CLI pod status in the cluster
```

## `./bin/run.js cli-pod up`

Deploy CLI pod to the cluster (build + push + create secrets + deploy)

```
USAGE
$ ./bin/run.js cli-pod up [--network <value>] [--githubToken <value>] [--namespace <value>]
[--registryUsername <value>] [--registryPassword <value>]

FLAGS
--githubToken=<value> GitHub token (stored as k8s secret; optional for public repos)
--namespace=<value> [default: core-devnets-sandbox] Kubernetes namespace for cli-pod
--network=<value> [default: main-with-easytrack] Name of the network (default: 'main-with-easytrack')
--registryPassword=<value> Docker registry password
--registryUsername=<value> Docker registry username

DESCRIPTION
Deploy CLI pod to the cluster (build + push + create secrets + deploy)
```

## `./bin/run.js cli-pod update`

Rebuild CLI pod image and restart the deployment (after CLI changes)

```
USAGE
$ ./bin/run.js cli-pod update [--network <value>] [--namespace <value>]

FLAGS
--namespace=<value> [default: core-devnets-sandbox] Kubernetes namespace for cli-pod
--network=<value> [default: main-with-easytrack] Name of the network (default: 'main-with-easytrack')

DESCRIPTION
Rebuild CLI pod image and restart the deployment (after CLI changes)
```

## `./bin/run.js cli-pod verify`

Check that all tools work correctly inside the CLI pod

```
USAGE
$ ./bin/run.js cli-pod verify [--network <value>] [--namespace <value>]

FLAGS
--namespace=<value> [default: core-devnets-sandbox] Kubernetes namespace for cli-pod
--network=<value> [default: main-with-easytrack] Name of the network (default: 'main-with-easytrack')

DESCRIPTION
Check that all tools work correctly inside the CLI pod
```
54 changes: 54 additions & 0 deletions docs/commands/council-k8s.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,54 @@
`./bin/run.js council-k8s`
==========================

Build Council and push to Docker registry

* [`./bin/run.js council-k8s build`](#binrunjs-council-k8s-build)
* [`./bin/run.js council-k8s down`](#binrunjs-council-k8s-down)
* [`./bin/run.js council-k8s up`](#binrunjs-council-k8s-up)

## `./bin/run.js council-k8s build`

Build Council and push to Docker registry

```
USAGE
$ ./bin/run.js council-k8s build [--network <value>]

FLAGS
--network=<value> [default: main-with-easytrack] Name of the network (default: 'main-with-easytrack')

DESCRIPTION
Build Council and push to Docker registry
```

## `./bin/run.js council-k8s down`

Stop Council(s) in K8s

```
USAGE
$ ./bin/run.js council-k8s down [--network <value>] [--force]

FLAGS
--force Do not check that the Council(s) was already stopped
--network=<value> [default: main-with-easytrack] Name of the network (default: 'main-with-easytrack')

DESCRIPTION
Stop Council(s) in K8s
```

## `./bin/run.js council-k8s up`

Start Council(s) in K8s

```
USAGE
$ ./bin/run.js council-k8s up [--network <value>]

FLAGS
--network=<value> [default: main-with-easytrack] Name of the network (default: 'main-with-easytrack')

DESCRIPTION
Start Council(s) in K8s
```
89 changes: 89 additions & 0 deletions docs/commands/csm-prover-tool-k8s.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,89 @@
`./bin/run.js csm-prover-tool-k8s`
==================================

Build CSM Prover Tool and push to Docker registry

* [`./bin/run.js csm-prover-tool-k8s build`](#binrunjs-csm-prover-tool-k8s-build)
* [`./bin/run.js csm-prover-tool-k8s down`](#binrunjs-csm-prover-tool-k8s-down)
* [`./bin/run.js csm-prover-tool-k8s down-cmv2`](#binrunjs-csm-prover-tool-k8s-down-cmv2)
* [`./bin/run.js csm-prover-tool-k8s up`](#binrunjs-csm-prover-tool-k8s-up)
* [`./bin/run.js csm-prover-tool-k8s up-cmv2`](#binrunjs-csm-prover-tool-k8s-up-cmv2)

## `./bin/run.js csm-prover-tool-k8s build`

Build CSM Prover Tool and push to Docker registry

```
USAGE
$ ./bin/run.js csm-prover-tool-k8s build [--network <value>]

FLAGS
--network=<value> [default: main-with-easytrack] Name of the network (default: 'main-with-easytrack')

DESCRIPTION
Build CSM Prover Tool and push to Docker registry
```

## `./bin/run.js csm-prover-tool-k8s down`

Stop CSM Prover Tool in K8s with Helm

```
USAGE
$ ./bin/run.js csm-prover-tool-k8s down [--network <value>] [--force]

FLAGS
--force Do not check that the CSM Prover Tool was already stopped
--network=<value> [default: main-with-easytrack] Name of the network (default: 'main-with-easytrack')

DESCRIPTION
Stop CSM Prover Tool in K8s with Helm
```

## `./bin/run.js csm-prover-tool-k8s down-cmv2`

Stop CMv2 Prover Tool in K8s with Helm

```
USAGE
$ ./bin/run.js csm-prover-tool-k8s down-cmv2 [--network <value>] [--force]

FLAGS
--force Do not check that the CMv2 Prover Tool was already stopped
--network=<value> [default: main-with-easytrack] Name of the network (default: 'main-with-easytrack')

DESCRIPTION
Stop CMv2 Prover Tool in K8s with Helm
```

## `./bin/run.js csm-prover-tool-k8s up`

Start CSM Prover Tool on K8s with Helm

```
USAGE
$ ./bin/run.js csm-prover-tool-k8s up [--network <value>] [--clApiUrls <value>]

FLAGS
--clApiUrls=<value> Comma-separated CL API URLs override for prover-tool
--network=<value> [default: main-with-easytrack] Name of the network (default: 'main-with-easytrack')

DESCRIPTION
Start CSM Prover Tool on K8s with Helm
```

## `./bin/run.js csm-prover-tool-k8s up-cmv2`

Start CMv2 Prover Tool on K8s with Helm

```
USAGE
$ ./bin/run.js csm-prover-tool-k8s up-cmv2 [--network <value>] [--clApiUrls <value>]

FLAGS
--clApiUrls=<value> Comma-separated CL API URLs override for prover-tool
--network=<value> [default: main-with-easytrack] Name of the network (default: 'main-with-easytrack')

DESCRIPTION
Start CMv2 Prover Tool on K8s with Helm
```
54 changes: 54 additions & 0 deletions docs/commands/dashboard.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,54 @@
`./bin/run.js dashboard`
========================

Command set for managing the DevNet Dashboard web UI.

* [`./bin/run.js dashboard build`](#binrunjs-dashboard-build)
* [`./bin/run.js dashboard down`](#binrunjs-dashboard-down)
* [`./bin/run.js dashboard up`](#binrunjs-dashboard-up)

## `./bin/run.js dashboard build`

Build Dashboard: collect data and push Docker image

```
USAGE
$ ./bin/run.js dashboard build [--network <value>]

FLAGS
--network=<value> [default: main-with-easytrack] Name of the network (default: 'main-with-easytrack')

DESCRIPTION
Build Dashboard: collect data and push Docker image
```

## `./bin/run.js dashboard down`

Stop Dashboard in K8s with Helm

```
USAGE
$ ./bin/run.js dashboard down [--network <value>] [--force]

FLAGS
--force Do not check that the Dashboard was already stopped
--network=<value> [default: main-with-easytrack] Name of the network (default: 'main-with-easytrack')

DESCRIPTION
Stop Dashboard in K8s with Helm
```

## `./bin/run.js dashboard up`

Start Dashboard in K8s with Helm

```
USAGE
$ ./bin/run.js dashboard up [--network <value>]

FLAGS
--network=<value> [default: main-with-easytrack] Name of the network (default: 'main-with-easytrack')

DESCRIPTION
Start Dashboard in K8s with Helm
```
Loading