Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add GenesisConfig presets for templates runtimes (minimal and solochain) #5790

Closed
iulianbarbu opened this issue Sep 20, 2024 · 1 comment · Fixed by #5868
Closed

Add GenesisConfig presets for templates runtimes (minimal and solochain) #5790

iulianbarbu opened this issue Sep 20, 2024 · 1 comment · Fixed by #5868
Assignees

Comments

@iulianbarbu
Copy link
Contributor

iulianbarbu commented Sep 20, 2024

The runtime should start exposing at least a development genesis-config, which should be used for testing omni nodes started based on chain-specs generated for templates runtime.

@iulianbarbu iulianbarbu self-assigned this Sep 20, 2024
@iulianbarbu iulianbarbu moved this to Milestone 0 in Polkadot Omni Node Sep 20, 2024
@iulianbarbu iulianbarbu changed the title Add GenesisConfig presets for template runtimes (minimal and solochain) Add GenesisConfig presets for templates runtimes (minimal and solochain) Sep 20, 2024
@bkontur
Copy link
Contributor

bkontur commented Sep 30, 2024

@iulianbarbu I have also similar issue for other missing runtimes: #5704, you can take it, if you want :)

github-merge-queue bot pushed a commit that referenced this issue Oct 5, 2024
# Description

Closes [#5790](#5790).
Useful for starting nodes based on minimal/solochain when doing
development or for testing omni node with less happy code paths. It is
reusing the presets defined for the nodes chain specs.

## Integration

Specifically useful for development/testing if generating chain-specs
for `minimal` or `solochain` runtimes from `templates` directories.

## Review Notes

Added `genesis_config_presets` modules for both minimal/solochain. I
reused the presets defined in each node `chain_spec` module
correspondingly.

### PRDOC

Not sure who uses templates, maybe node devs and runtime devs at start
of their learning journey, but happy to get some guidance on how to
write the prdoc if needed.

### Thinking out loud

I saw concerns around sharing functionality for such genesis config
presets between the template chains. I think there might be a case for
doing that, on the lines of this comment:
#4739 (comment).
I would add that `parachains-common::genesis_config_heleper` contains a
few methods from those mentioned, but I am unsure if using it as a
dependency for templates is correct. Feels like the comment suggests
there should be a `commons` crate concerning just `templates`, which I
agree with to some degree, if we assume `cumulus` needs might be driven
in certain directions that are not relevant to `templates` and vice
versa. However I am not so certain about this, so would welcome some
thoughts, since I am seeing `parachains-common` being used already in a
few runtime implementations:
https://crates.io/crates/parachains-common/reverse_dependencies?page=3,
so might be a good candidate already for the `common` logic.

---------

Signed-off-by: Iulian Barbu <iulian.barbu@parity.io>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
Status: Milestone 0
Development

Successfully merging a pull request may close this issue.

2 participants