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

Create agoric publish command #6087

Closed
kriskowal opened this issue Aug 30, 2022 · 3 comments · Fixed by #6147
Closed

Create agoric publish command #6087

kriskowal opened this issue Aug 30, 2022 · 3 comments · Fixed by #6147
Assignees
Labels
enhancement New feature or request Governance Governance
Milestone

Comments

@kriskowal
Copy link
Member

kriskowal commented Aug 30, 2022

What is the Problem Being Solved?

For PS0 launch, we can’t rely on deploy scripts since they depend on ag-solo. The steps for proposing upgrading a contract would be considerably simplified with commands that will create and publish bundles.

Description of the Design

  • yarn bundle-source --to-json bundle-cache/ contract/src/contract.js contract would generate a JSON bundle that is suitable for verifying the resulting hash or publishing the resulting artifact in bundle-cache/bundle-contract.json.
  • agoric publish bundle.zip would queue an SwingSet InstallBundle transaction and watch for the casting of the success or failure. That will produce a JSON hashed bundle suitable for passing to zoe~.install in a governance script.

Security Considerations

Test Plan

@kriskowal kriskowal added the enhancement New feature or request label Aug 30, 2022
@kriskowal kriskowal changed the title Create an agoric bundle command Create agoric bundle and publish commands Aug 30, 2022
@kriskowal kriskowal added the Governance Governance label Aug 30, 2022
@kriskowal kriskowal self-assigned this Aug 30, 2022
@Tartuffo
Copy link
Contributor

@Chris-Hibbert: If the tools can be added without the ability to upgrade a contract as a prerequisite, then they don't have to be in PS0 RC0.
@kriskowal: The tools would not require a contract change.

@kriskowal
Copy link
Member Author

kriskowal commented Sep 7, 2022

I’m recalling that @dckc put together a bundle-source command that is almost right for the governance case. We can either hack that to include an option to generate json instead of js or just make an agoric bundle that generates a single json. It would probably still be good for discoverability to have agoric bundle recapitulate bundle-source.

@kriskowal
Copy link
Member Author

The bundle-source side of this story is best handled by endojs/endo#1278 so I will not make an agoric bundle. The reason is that the bundler needs to be versioned with the dapp, and agoric is not necessarily paired with the dapp version, which could result in the generation of mismatching integrity hashes. #6147 will close this out when it lands.

@kriskowal kriskowal changed the title Create agoric bundle and publish commands Create agoric publish command Sep 8, 2022
@mergify mergify bot closed this as completed in #6147 Sep 13, 2022
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request Governance Governance
Projects
None yet
Development

Successfully merging a pull request may close this issue.

2 participants