holochain / scaffolding

Scaffolding tool to quickly generate and modify holochain applications
https://docs.rs/holochain_scaffolding_cli
220 stars 19 forks source link

fix: Further improve CI runtime performance #412

Closed c12i closed 1 week ago

c12i commented 3 weeks ago

The CI pipeline is experiencing significant slowdown when using Holonix, specifically:

ThetaSinner commented 3 weeks ago

Suggestions for how to speed up the build:

Scaffolding depending on Holochain makes it quite slow to compile. It's a lot slower to build than Holochain, so I don't know if there is some dependency or configuration that we can tweak to speed up the compile times for scaffolding. It'd be worth looking into. But at least like this you can minimize the compiler work done to test,

c12i commented 3 weeks ago

Scaffolding depending on Holochain makes it quite slow to compile.

Yes this has been an issue I have tried to address by replacing the test_utils feature with hdk. Also replaced some holochain imports with holochain_types and removed the holochain_utils dependency entirely since it wasn't getting used as much. Still not enough it seems.

I think the dependency to holochain can be further stripped down. This the only part of the code that relies on an import from holochain, I think this is an essential import though since it's easier to rely on holochain to get the respective hdk and hdi versions without depending on them directly or hard coding the versions. Not sure whether these imports could be moved to holochain_types maybe?

Regarding the other suggestions you have provided. I will look into them and see how they can help

c12i commented 2 weeks ago

@ThetaSinner would you recommend I use the holochain-ci public cache for scaffolding? I noticed that you're using a private cache for wind tunnel

ThetaSinner commented 2 weeks ago

Use a private cache for CI builds. The public cache is now only populated for end-users to consume