You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: README.md
+1-60Lines changed: 1 addition & 60 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -315,7 +315,7 @@ clean: honest-opossum
315
315
clean: sacred-giraffe
316
316
```
317
317
318
-
## Telemetry
318
+
## Metrics
319
319
320
320
The Builder Playground includes built-in Prometheus metrics collection. When you run any recipe with the `--with-prometheus` flag, the system automatically deploys a Prometheus server and gathers metrics from all services in your deployment.
1.**Artifact Generation**: Creates all necessary files and configurations (genesis files, keys, etc.)
346
-
2.**Manifest Generation**: The recipe creates a manifest describing all services to be deployed, their ports, and configurations
347
-
3.**Deployment**: Uses Docker Compose to deploy the services described in the manifest
348
-
349
-
When running in dry-run mode (`--dry-run` flag), only the first two phases are executed. This is useful for alternative deployment targets - while the playground uses Docker Compose by default, the manifest could be used to deploy to other platforms like Kubernetes.
350
-
351
-
### System Architecture
352
-
353
-
The playground is structured in two main layers:
354
-
355
-
#### Components
356
-
357
-
Components are the basic building blocks of the system. Each component implements the `Service` interface:
Each component, given its input parameters, outputs a Docker container description with its specific configuration.
372
-
373
-
#### Recipes
374
-
375
-
Recipes combine components in specific ways to create complete environments. They implement this interface:
376
-
377
-
```go
378
-
typeRecipeinterface {
379
-
Apply(artifacts *Artifacts) *Manifest
380
-
}
381
-
```
382
-
383
-
The key output of a recipe is a `Manifest`, which represents a complete description of the environment to be deployed. A Manifest contains:
384
-
385
-
- A list of services to deploy
386
-
- Their interconnections and dependencies
387
-
- Port mappings and configurations
388
-
- Volume mounts and environment variables
389
-
390
-
While the current recipes (L1 and OpStack) are relatively simple, this architecture allows for more complex setups. For example, you could create recipes for:
391
-
392
-
- Multiple execution clients with a shared bootnode
393
-
- Testing specific MEV scenarios
394
-
- Interop L2 testing environments
395
-
396
-
The separation between components and recipes makes it easy to create new environments by reusing and combining existing components in different ways. The Manifest provides an abstraction between the recipe's description of what should be deployed and how it actually gets deployed (Docker Compose, Kubernetes, etc.).
397
-
398
339
## Design Philosophy
399
340
400
341
The Builder Playground is focused exclusively on block building testing and development. Unlike general-purpose tools like Kurtosis that support any Ethereum setup, we take an opinionated approach optimized for block building workflows.
Copy file name to clipboardExpand all lines: docs/metrics.md
+1-1Lines changed: 1 addition & 1 deletion
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -1,5 +1,5 @@
1
1
2
-
# Telemetry
2
+
# Metrics
3
3
4
4
The Builder Playground includes built-in Prometheus metrics collection. When you run any recipe with the `--with-prometheus` flag, the system automatically deploys a Prometheus server and gathers metrics from all services in your deployment.
0 commit comments