• Mark Tyneway's avatar
    contracts-bedrock: modularize config (#9475) · 3b8933d3
    Mark Tyneway authored
    * contracts-bedrock: modularize config
    
    All env var based config for the deploy scripts is centralized
    into a single library called `Config`. Any `vm.env` or `vm.envOr`
    calls should be added here so that it is easy to track the full
    set of configuration options. Having this library makes configuration
    much more self documenting for the deploy scripts.
    
    This modularization is meant to make the migration away the old
    hardhat deploy style architecture much easier. Now that we have
    a canonical set of config values, we can be sure that anything
    behind the abstraction is applied properly across the codebase
    when it is changed.
    
    There is a bunch of deprecated config, that will be able to
    be deleted after https://github.com/ethereum-optimism/optimism/pull/9315
    is merged along with some changes around where the default output
    location for deploy artifacts is. Right now it is in the deployment
    context directory, which the entire concept of deployment context
    comes from hardhat deploy, which doesn't necessarily make sense
    anymore. Right now it ends up in `deployments/<deploy-context>/.deploy`.
    In the future, it will likely end up in the root of the contracts
    directory by default and then an override can be provided where
    the override is expected to be the absolute path to the desired
    output location. This will greatly improve the devex and maintainability
    of the deploy script.
    
    * lint: fix
    3b8933d3
Name
Last commit
Last update
.changeset Loading commit data...
.circleci Loading commit data...
.github Loading commit data...
.husky Loading commit data...
.vscode Loading commit data...
bedrock-devnet Loading commit data...
cannon Loading commit data...
docs Loading commit data...
endpoint-monitor Loading commit data...
indexer Loading commit data...
op-batcher Loading commit data...
op-bindings Loading commit data...
op-bindings-e2e Loading commit data...
op-bootnode Loading commit data...
op-chain-ops Loading commit data...
op-challenger Loading commit data...
op-conductor Loading commit data...
op-dispute-mon Loading commit data...
op-e2e Loading commit data...
op-heartbeat Loading commit data...
op-node Loading commit data...
op-plasma Loading commit data...
op-preimage Loading commit data...
op-program Loading commit data...
op-proposer Loading commit data...
op-service Loading commit data...
op-ufm Loading commit data...
op-wheel Loading commit data...
ops Loading commit data...
ops-bedrock Loading commit data...
packages Loading commit data...
proxyd Loading commit data...
specs Loading commit data...
ufm-test-services Loading commit data...
.coderabbit.yml Loading commit data...
.dockerignore Loading commit data...
.editorconfig Loading commit data...
.envrc.example Loading commit data...
.eslintrc.js Loading commit data...
.gitattributes Loading commit data...
.gitignore Loading commit data...
.gitmodules Loading commit data...
.npmrc Loading commit data...
.nvmrc Loading commit data...
.pnpmfile.cjs Loading commit data...
.prettierrc.js Loading commit data...
.semgrepignore Loading commit data...
.shellcheckrc Loading commit data...
.snyk Loading commit data...
CITATION.cff Loading commit data...
CONTRIBUTING.md Loading commit data...
LICENSE Loading commit data...
Makefile Loading commit data...
README.md Loading commit data...
SECURITY.md Loading commit data...
cloudbuild.yaml Loading commit data...
codecov.yml Loading commit data...
docker-bake.hcl Loading commit data...
go.mod Loading commit data...
go.sum Loading commit data...
nx.json Loading commit data...
package.json Loading commit data...
pnpm-lock.yaml Loading commit data...
pnpm-workspace.yaml Loading commit data...
tsconfig.json Loading commit data...
versions.json Loading commit data...