-
Notifications
You must be signed in to change notification settings - Fork 0
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
[EngAut] Automate Sync/Release the polakdot-sdk templates #6
Comments
Requested Github bot creation: https://github.com/paritytech/security/issues/45 |
I have a first draft in the The draft PR: paritytech-stg/polkadot-sdk#24 I had to remove a dependency on @kianenigma Could you take a look and let me know if the direction I took makes sense? |
(cc-ing @gupnik as he might be faster to reply while I am attending to some urgent debugging) I think now's the time to publish |
Thanks @rzadp for looking into this. It seems that I don't have access to https://github.com/paritytech-stg/polkadot-sdk-minimal-template. Could you add me please?
Yeah, I agree with @kianenigma to publish the |
Ah right, made it public now @gupnik |
I have a problem building the current result template, I'm missing a @gupnik Are you able to help with that? The real problem is that with the automation, I'm trying to use released crates from Shall we wait until:
Or shall I keep working on it with what we have presently? |
@rzadp I think we need to get the |
@EgorPopelyaev @Morganamilo Could we have the |
This is an experimental branch (as indicated by "DNM"), if finalized, it will be a new template, so feel free to work on the 3 that is already there. |
@rzadp This has been published: https://crates.io/crates/polkadot-sdk-frame. Are we good to proceed? |
Great, I will try it out. |
The crate is not a part of the most recent release branch |
Sent a PR to psvm to include |
I got stuck trying to use this newly released crate. I'm probably doing something stupid, @gupnik could you give me a hand please? To reproduce my issue:
Issue:
I don't think I should be changing the template and adding individual It compiles fine when building inside the workspace. - frame = { path = "../../../../substrate/frame", default-features = false, features = ["experimental","runtime",] }
+ polkadot-sdk-frame = { package = "frame", path = "../../../../substrate/frame", default-features = false, features = ["experimental", "runtime"], version = "0.1.0" } It is because the package is still called The diff of my changes in the workspace is here. When yanked out of the workspace and using released crates, the aforementioned issue happens. |
@rzadp I will take a look. Thanks. |
Seems like this is caused by https://github.com/paritytech/polkadot-sdk/blob/ea5f4e9a4d78234eb68bbb9130a24b0598c7893a/substrate/frame/support/procedural/tools/src/lib.rs#L115 where we assume the crate's name to be CC: @kianenigma in case you have something to add. |
Step in #3155 Needed for paritytech/eng-automation#6 This PR renames `frame` crate to `polkadot-sdk-frame` as `frame` is not available on crates.io --------- Co-authored-by: Kian Paimani <[email protected]>
@rzadp paritytech/polkadot-sdk#3813 is merged now. Could we proceed here please? |
Sure, I'll continue. |
I've checked and all seems good for me, however to really proceed I'm gonna have to wait until a new crate release happens, that includes this PR. |
@rzadp A new version has been published. Please let me know if you need anything else. |
Hey @gupnik, I'm still running into exactly same issue as described before. The reproduction is also the same - try to build the It has been updated to use the newly released crates, including The result is the same, no matter if I import it like this:
Or like this:
|
@rzadp Seems that one of the dependencies has not been updated yet: https://crates.io/crates/frame-support-procedural-tools. Have asked to get this fixed. |
@rzadp This is fixed now. |
Looks good, my Next I'll check the |
Step in #3155 Needed for paritytech/eng-automation#6 This PR renames `frame` crate to `polkadot-sdk-frame` as `frame` is not available on crates.io --------- Co-authored-by: Kian Paimani <[email protected]>
The PR has been merged and tested out in Results: Questions for next steps: @kianenigma @gupnik Is there anything I can do further in order to improve those templates? @EgorPopelyaev @Morganamilo What could be a trigger to turn it into a fully automatic job? |
In addition to updating the standalone repos consistently. It would be good that each of those repos have proper CI pipelines set up for Continuous building and releasing. ping @lovelaced We (Devops Team) are very interested in having those templates continuously released as binary and docker image so we can directly deploy and try to onboard them on a testnet for example. This is the closest we can get of e2e testing of a community parachain. This is important for keeping good support of those templates in our deployment tooling (ansible, helm-chart) and ensure a good devops experience for parachain teams. Even better would be if the release team (ping @EgorPopelyaev) can build those templates in advance of them being synced to their own repos so we avoid syncing broken templates to the master branch of |
@PierreBesson In case you missed it - The templates are being build before syncing, as well as after syncing. |
@rzadp |
I created this PR which we'll need to synchronize templates with recent version @EgorPopelyaev Do you have a standard way of testing those templates inside the monorepo before a release, that could be re-used before syncing the templates? Could we collaborate on it? |
@rzadp Unfortunately, no, we don't have such tests in place for now. |
Note: We agreed to kick off the synchronization job as part of the manual process upon the crate releases, for now. |
The last version of The problem can be seen in this automated PR - crates |
Note: the problem with |
Another note:
Correction - the problem is not only about build dependencies, but also regular dependencies. The newest version of |
I have pinpointed the issues I'm having to The functionality to read I have asked here. |
The issue with And now we ran into another issue: paritytech/polkadot-sdk#4347 |
@rzadp Now that this is resolved, can we push an update please? |
@gupnik Looks like we're almost there. minimal and solochain templates have been just updated with version However I've run into an issue with the parachain one (wonder when I'll stop running into issues with this task 😅) It appears that I'm not sure why they're published - intentionally or some leftover? I could add some workarounds to it - but first I'll try to figure out if those are needed on crates.io - if not, yanking them will solve my issue. |
Thanks @rzadp. However, there's now a doc-only crate that's not available in the minimal template. Similarly, it's not using the README.md from the repo. It seems that this file is also not updated.
But I do see that it has |
I would think so.
Please look at |
Ah, it'll probably cause issues when syncing the next release 🥲 |
Can we push that as well please? We are planning to use these templates for PBA and would be good to have the doc-only crate in there as well. |
I'm not sure. In the other thread there is explicit discussion to remove it: paritytech/polkadot-sdk#3155 (comment) |
Oh, got it. Thanks!
@kianenigma What are your thoughts here? |
Note: The |
I don't see any reason to publish them, please make a PR to the base repo and mark them as unpunlish, thank you :) |
@Morganamilo has yanked the crates, so this problem is already solved :) And in the repo they're already marked as unpublish. |
After a small fix in All templates got automatically updated to |
Closing as completed - I'll still try to help with the source templates, but the automation of synchronization is done. |
Origin: paritytech/polkadot-sdk#3155 (comment)
Who has requested: @kianenigma
OKR Q2 2024:
Objective 1: Improving the Polkadot developer experience
KR: New dev templates are shipped as independent repositories automatically upon each stable release with source of truth in polkadot-sdk
Problem:
paritytech/polkadot-sdk#3155
The existence of substrate-developer-hub in itself is questionable in my opinion. It is not well maintained, and I much rather everything to be in /paritytech, and ideally in polkadot-sdk repo.
Details
From @kianenigma
What we suggest doing is the following:
The text was updated successfully, but these errors were encountered: