op-deployer: Separate L1 and L2 contract artifacts#12480
Conversation
Adds support for specifying separate artifact URLs for L1 and L2. There are two new fields in the intent - `L1ContractsLocator` and `L2ContractsLocator` - which together replace the `ContractArtifactsURL` and `ContractsRelease` fields. Specifying a file or HTTPS URL for either field will automatically enable dev mode for the deployment. Specifying a `tag://` URL will use the standard deployment for L1 and L2. The default have been set to the following: - L1: `op-contracts/v1.6.0` - L2: `op-contracts/v1.7.0-beta.1+l2-contracts` Fixes ethereum-optimism/platforms-team#337.
|
Semgrep found 1 No Semgrep found 1 Do not use Semgrep found 1 MarshalJSON with a pointer receiver has surprising results: golang/go#22967 Ignore this finding from marshal-json-pointer-receiver.Semgrep found 1 superfluous nil err check before return Ignore this finding from err-nil-check. |
blmalone
left a comment
There was a problem hiding this comment.
lgtm.
One small, non-blocking question.
Side note:
AFAIK, op-chain-ops/deployer/integration_test/apply_test.go only tests the flow were ArtifactsLocator has a URL and not a Tag. Given that the most common production execution of the apply command will be with the Tag field set, I think an additional test for this would be useful. I made an issue for this here.
…#12480) * op-deployer: Separate L1 and L2 contract artifacts Adds support for specifying separate artifact URLs for L1 and L2. There are two new fields in the intent - `L1ContractsLocator` and `L2ContractsLocator` - which together replace the `ContractArtifactsURL` and `ContractsRelease` fields. Specifying a file or HTTPS URL for either field will automatically enable dev mode for the deployment. Specifying a `tag://` URL will use the standard deployment for L1 and L2. The default have been set to the following: - L1: `op-contracts/v1.6.0` - L2: `op-contracts/v1.7.0-beta.1+l2-contracts` Fixes https://github.com/ethereum-optimism/platforms-team/issues/337. * fix test * fix another test
Adds support for specifying separate artifact URLs for L1 and L2. There are two new fields in the intent -
L1ContractsLocatorandL2ContractsLocator- which together replace theContractArtifactsURLandContractsReleasefields. Specifying a file or HTTPS URL for either field will automatically enable dev mode for the deployment. Specifying atag://URL will use the standard deployment for L1 and L2. The default have been set to the following:op-contracts/v1.6.0op-contracts/v1.7.0-beta.1+l2-contractsFixes https://github.com/ethereum-optimism/platforms-team/issues/337.