An open API service indexing awesome lists of open source software.

https://github.com/protolambda/eth2-config-tester

Test eth2 configurations for interopability, correctness, formatting
https://github.com/protolambda/eth2-config-tester

Last synced: about 2 months ago
JSON representation

Test eth2 configurations for interopability, correctness, formatting

Awesome Lists containing this project

README

        

# Eth2 config tester

The goals is to make configs:
- Simple to parse, key-value
- Valid YAML, but no advanced features
- Compatible, no unexpected or missing keys
- Consistent, no formatting differences
- Minimal, no super long names
- Familiar, use common (within ethereum) 0x prefix for bytes
- Structured, prefer a specific order of config keys
- Bare, no inline comments, head/foot comments are ok.
- Standard, following a spec for the config

## Usage

```shell script
# install
go get github.com/protolambda/eth2-config-tester

# feed config file into tester
cat my_eth2_config.yml | eth2-config-tester --config-spec=config_spec.yaml

# Test
cat spec_configs/minimal_phase0.yaml | go run . --forks=phase0
cat spec_configs/minimal_phase1.yaml | go run . --forks=phase0,phase1
cat spec_configs/mainnet_phase0.yaml | go run . --forks=phase0
cat spec_configs/mainnet_phase1.yaml | go run . --forks=phase0,phase1
```

## Planned

- Check config value correctness, bounds etc. See https://github.com/ethereum/eth2.0-specs/issues/407
- After checking for all bad config values, output a best-effort properly formatted config

## License

CC0 1.0 Universal, see [LICENSE](./LICENSE) file.