Centralized TOML configuration for the hero compute engine across development, testing, and production environments.
|
All checks were successful
Validate Config / verify-toml-validation (pull_request) Successful in 2s
|
||
|---|---|---|
| .forgejo/workflows | ||
| .taplo.toml | ||
| canary.toml | ||
| config.schema.json | ||
| development.toml | ||
| production.toml | ||
| README.md | ||
| testing.toml | ||
hero_compute_config
Central configuration for the hero compute engine across environments.
Structure
hero_compute_config/
├── development.toml # Dev environment config
├── testing.toml # Testing/QA config
├── canary.toml # Canary config (production versions, restricted nodes)
├── production.toml # Production config
├── config.schema.json # JSON Schema for TOML validation
├── .taplo.toml # Taplo config (links schema to TOML files)
└── .forgejo/workflows/
└── validate.yaml # CI to lint and validate TOML files
Config Format
All config files share the same schema:
version = "1"
environment = "development" # development | testing | canary | production
[network]
explorer_addresses = ["tcp://explorer.hero.tf:9002"]
registry_url = "https://forge.ourworld.tf/lhumina_code/hero_compute_registry/raw/branch/main/images.toml"
mycelium_peers = [
"tcp://188.40.132.242:9651",
]
[tuning]
heartbeat_interval_secs = 300
offline_threshold_secs = 600
monitor_interval_secs = 60
CI Validation
On every pull request to development or main, the CI workflow:
- Lints TOML formatting via taplo
- Validates TOML files against
config.schema.json
Local Validation
Install taplo and run:
taplo fmt --check development.toml testing.toml canary.toml production.toml
taplo check development.toml testing.toml canary.toml production.toml