Bare Deployment and Retargeting Workflow#1344
Conversation
Codecov Report
@@ Coverage Diff @@
## master #1344 +/- ##
==========================================
- Coverage 83.07% 82.94% -0.13%
==========================================
Files 72 72
Lines 10327 10457 +130
==========================================
+ Hits 8579 8674 +95
- Misses 1748 1783 +35
Continue to review full report at Codecov.
|
16aae86 to
85fc65e
Compare
|
|
||
| # Mock live contract registry reads | ||
| LocalContractRegistry.read = lambda *a, **kw: test_registry.read() | ||
|
|
There was a problem hiding this comment.
This mock was not properly restored to the original call - causing some pretty odd CI failures for the tests run in the same container as this test, after this one finishes.
nucypher/blockchain/eth/deployers.py
Outdated
| principal_receipt = self.blockchain.send_transaction(sender_address=self.deployer_address, | ||
| contract_function=contract_function, | ||
| transaction_gas_limit=transaction_gas_limit) | ||
| receipts['principal'] = proxy_receipt |
There was a problem hiding this comment.
I thought that we want to transfer ownership only for Dispatcher contract, because owner of principal contract is unused
There was a problem hiding this comment.
Hmm, interesting. Is there a disadvantage to transferring the old contract also?
cygnusv
left a comment
There was a problem hiding this comment.
This is a first pass at this PR, all things look good for the moment! I'd like to try a manual check anyway.
| rollback_receipt = proxy_deployer.rollback(existing_secret_plaintext=existing_secret_plaintext, | ||
| new_secret_hash=new_secret_hash, | ||
| gas_limit=gas_limit) | ||
|
|
There was a problem hiding this comment.
Does rollback need a wrap contract step too?
There was a problem hiding this comment.
Hmm - No I dont think so - since were not handling or deploying a new deployment or registry enrollment.
…oy_essential, optionally.
…d the proxy contract
|
Just a heads up - I'm going to squash the last two commits if CI passes. |
There was a problem hiding this comment.
👍 - @KPrasch Just one outstanding comment in interfaces.py regarding an f-string.
Motivation
Deployment tooling and UX response to state verification failures experienced during
StakingEscrowupgrade. Provides a workflow to help mitigate a partially completed contract upgrade.Points of Interest
_deploy_essentialwithout deploying a proxy any additional transactions via CLI (--bare).--registry-outfile).MOCK_REGISTRY_FILEPATH)Based on #1345 and #1350
Re-Attempt at Upgrade/Re-Target
without gas limit -> https://gist.github.com/KPrasch/58b26d20dc2fef7505e4634e5680f49e
with gas limit -> https://gist.github.com/KPrasch/5977b5ce353c4ea832219d1a76f2faab
Successful Upgrade