-
Notifications
You must be signed in to change notification settings - Fork 27
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
feat: build deterministic runtime #425
feat: build deterministic runtime #425
Conversation
…erve_parachain_call_data
…nd resolve_genesis_files_fails_wrong_path
550102a
to
7d3028f
Compare
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
PR looking good! Left a few small final comments
Can we not reuse the logic that Tin has made for the benchmarking feature. It locates the runtime packages from looking at the diagram bottom left |
621cb9c
to
005a822
Compare
4f594c4
to
75896e8
Compare
The link isn't working. Do you mean to prompt the user for the list of runtimes? It's a nice feature to have, once Tin's PR is merged, we can reuse the code in this feature. |
Yes lets do that! |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Nice work!
* test: detects_project_type_correctly * feat: parachain deployment in pop up * fix: parachain feature * docs: improve comments * feat: deploy a parachain commands * feat: build specs in pop up * feat: logic to interact with a chain * feat: register parachain * refactor: clean code and improve docs * test: unit tests for pop up methods * refactor: small fixes with visibility and removing logs * feat: return events in submit_signed_extrinsic * feat: get para_id from event * test: fix detects_parachain_correctly * refactor: improve docs and code * test: fix change_working_directory_works * fix: clippy warnings * refactor: move submit_extrinsic_with_wallet in a common file * refactor: remove unnecesary code * refactor: UpChainCommand structure * test: adjust tests to refactored struct * refactor: renaming prepare_register_parachain_call_data and prepare_rerve_parachain_call_data * refactor: move events module * fix: submit_extrinsic_with_wallet under parachain feature * refactor: remove unnecesary code * test: increase coverage with reserve_parachain_id_fails_wrong_chain and resolve_genesis_files_fails_wrong_path * refactor: remove unnecesary clones * refactor: minor improvements * test: refactor tests and include comments * refactor: map errors in submit_extrinsic_with_wallet * test: fix prepare_register_parachain_call_data_works * feat: container_engine to detect container to use * feat: generate_deterministic_runtime logic * feat: srtool logic * feat: build deterministic runtime in build spec command * feat: update_runtime_code * test: include tests for updateing code * refactor: clean unnecesary code * test: in container_engine * refactor: docker warning in container_engine * chore: improve screen messaging * refactor: use profile picked by the user * refactor: docs in ContainerEngine and clean prints * fix: generate_deterministic_runtime parameter * refactor: rename, improve messages and clean empty lines * feat: extract package name automatically from runtime dir * docs: change broken link * refactor: update srtool_lib crate and remove unnecesary code * docs: include srtool in Acknowledgements * refactor: remove unnecesary Error * test: detects_project_type_correctly * feat: parachain deployment in pop up * fix: parachain feature * docs: improve comments * feat: replace index.html with summary costs in ui (#430) * refactor: rename parachain to rollup * docs: improve deprecation message * refactor: rename parachain to rollup in up help * feat: deploy a parachain commands * feat: build specs in pop up * feat: logic to interact with a chain * feat: register parachain * refactor: clean code and improve docs * test: unit tests for pop up methods * refactor: small fixes with visibility and removing logs * feat: return events in submit_signed_extrinsic * feat: get para_id from event * test: fix detects_parachain_correctly * refactor: improve docs and code * test: fix change_working_directory_works * fix: clippy warnings * refactor: move submit_extrinsic_with_wallet in a common file * refactor: remove unnecesary code * refactor: UpChainCommand structure * test: adjust tests to refactored struct * refactor: renaming prepare_register_parachain_call_data and prepare_rerve_parachain_call_data * refactor: move events module * fix: submit_extrinsic_with_wallet under parachain feature * refactor: remove unnecesary code * test: increase coverage with reserve_parachain_id_fails_wrong_chain and resolve_genesis_files_fails_wrong_path * refactor: remove unnecesary clones * refactor: minor improvements * test: refactor tests and include comments * refactor: map errors in submit_extrinsic_with_wallet * test: fix prepare_register_parachain_call_data_works * refactor: move configure_chain into a common folder * refactor: function visibility * fix: error message and include test for it * refactor: build specs removing repetitive code * refactor: use prepare_extrinsic from Call module to prepare a call * docs: improve comments and messages * refactor: rename variables and structs * refactor: relay_chain_url * refactor: rename prepare_reserve_call_data and prepare_register_call_data * test: remove unnecesary test * refactor: remove events module * refactor: rename parachain to rollup * chore: improve succesful message * chore: change intro title to use rollup * docs: comments for Reserved event * chore: always prompt the user to build runtime deterministacally and improve message * docs: improve and add missing comments * refactor: clean code to prompt for the package and runtime dir * docs: improve warning message * refactor: rename variables and structs * fix: throw error message when build deterministic runtime fail * feat: include skip_deterministic_build flag to avoid prompting the user * docs: improve comments
This is the second step in a larger PR: #404. It prepares the chain spec for a production-ready environment by building the runtime deterministically.
pop build spec
to allow specifying whether the build should be deterministic using srtool.How to test it
This functionality is integrated into the
pop up
logic and runs automatically when deploying a parachain.To test only the deterministic chain spec build separately, run:
[sc-1032]