@arcblock/contracts
v0.2.7
Published
Solidity contracts that powers ArcBridge.
Downloads
9
Readme
ArcBridge Contracts
Solidity contracts that powers ArcBridge.
How to Deploy
- create dotenv file
- (optional) deploy token
- deploy multisig library
- deploy rollup contract
FAQ
- How to Deploy? https://github.com/wighawag/hardhat-deploy
Getting Started
如果是本地开发环境,需要修改 src/library/ERC20Token.sol,替换其中的 TokenSymbol 为 DEV,然后再部署
All following steps with read and write to .env.staging.dune
.
1. Cleanup
Only required if you want a clean setup
rm -rf deployments
2. Deploy ERC20Token
NODE_ENV=staging.dune npm run deploy -- --network sepolia --tags token
3. Deploy SignerManager Parent
NODE_ENV=staging.dune npm run deploy -- --network sepolia --tags "signer-parent"
4. Deploy SignerManager Factory
NODE_ENV=staging.dune npm run deploy -- --network sepolia --tags "signer-factory"
5. Deploy MultiSigVault Parent
NODE_ENV=staging.dune npm run deploy -- --network sepolia --tags "vault-parent"
6. Deploy MultiSigVault Factory
NODE_ENV=staging.dune npm run deploy -- --network sepolia --tags "vault-factory"
7. Deploy ERC20Rollup Parent
NODE_ENV=staging.dune npm run deploy -- --network sepolia --tags "rollup-parent"
8. Deploy ERC20Rollup Factory
NODE_ENV=staging.dune npm run deploy -- --network sepolia --tags "rollup-factory"
9. Create SignerManager for Vault
NODE_ENV=staging.dune ENV_KEY=MULTISIG_VAULT_SIGNER_MANAGER npm run deploy -- --network sepolia --tags "signer"
10. Create SignerManager for Rollup
NODE_ENV=staging.dune ENV_KEY=ERC20_ROLLUP_SIGNER_MANAGER npm run deploy -- --network sepolia --tags "signer"
11. Create MultiSigVault
NODE_ENV=staging.dune npm run deploy -- --network sepolia --tags "vault"
12. Create ERC20Rollup
Please remember to set
MIGRATED_FROM
andMIN_SIGNER_COUNT
before deploy.
NODE_ENV=staging.dune npm run deploy -- --network sepolia --tags "rollup"
Then you are all set on ethereum test chain.
FAQ
How to update factory when new implementation?
- deploy a new implementation contract with above command
- update factory with new implementation contract
NODE_ENV=staging.dune npm run deploy -- --network sepolia --tags "update-vault-factory"