fold the account abstraction launch logic into roll.py #55
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Running into a few issues:
If you keep running the command it works 🤔
Either Hardhat doing something bogus, or it's actually deploying one contract at a time, failing each time on the next thing?
ELIFECYCLE Command failed.
Yeah right. Running manually works.
I'm suspecting the problem might be the way
lib.run
inlibroll.py
usessubprocess.PIPE
to pipe the output, which is known to cause problems.We should replace that with a system that supplies a stream abstraction (an object with a
write
andflush
method IIRC) and spin up a thread that simply writes whatever comes in to a file. Unfortunate, but is is what it is.Beyond all that, I need to better separate out setup from deployment from running. Ideally, just like the rest there would be separate commands for the setup (can't keep adding all extension to the global setup command), deployment, and running, and one "easy" command that does everything for you (what's implemented now).
As an optimization, we should skip the setup when it's already been done... but then also probably supply an equivalent to
clean-build
to remove builds that might be borked somehow.Also:
Try using
GOBIN
instead ofGOPATH
so that we putstackup-bundler
in./bin
and avoid installing things globally. This also means we only need to care about that variable when wego install
and not each time we run like we do now.We should add a configuration for the 4337 deployment name (currently
"opstack"
) and default it to be the same name as the L2 deployment name.