Skip to content

Conversation

@gvladika
Copy link
Contributor

@gvladika gvladika commented Jul 28, 2023

Entrypoint is still the same - function createTokenBridge(address inbox, uint256 maxGasForContracts, uint256 gasPriceBid) in L1AtomicTokenBridgeCreator.

Function will figure out if ETH or ERC20 token is used to pay for retryable fees and do the appropriate calls. If ERC20 fee token used, it is expected that amount needed to pay for retryables is already approved (msg.sender needs to approve L1AtomicTokenBridgeCreator to spend them). Creator will then move fee tokens to inbox.

Scripts for deploying creator and creating token bridges are included.

Ie. to deploy creator on Arbitrum goerli, first prepare .env, then run:
yarn run deploy:goerli:token-bridge-creator

To create new token bridge for Orbit chain run this with rollup address as argument:
yarn run create:goerli:token-bridge -- '0x05615057779Fda653f18469FcF2e87d0A02B815E'

To test deployment set endpoints in .env, and have local network.json file with addresses, then run:
yarn run test:tokenbridge:deployment

@cla-bot cla-bot bot added the cla-signed label Jul 28, 2023
@gvladika gvladika requested review from gzeoneth and yahgwai July 28, 2023 15:51
…design

Rollup and rollup proxy admin are owned by L1 upgrade executor, on which the
rollupOwner has EXECUTOR role. When creating token bridge for rollup, now
rollupOwner has to be provided as well. L1 creator will check that rollupOwner
has EXECUTOR role on the upgrade executor (which is fetched via .owner()).
Aliased L1 upgrade executor and rollup owner are then made executors on L2
upgrade executor.
Add UpgradeExecutor to token bridge creation flow
Derive token bridge addresses on child chain from chain ID
@gvladika gvladika merged commit ce11f80 into erc20-based-bridge Sep 11, 2023
@gzeoneth gzeoneth deleted the fee-token-deployer branch July 8, 2024 16:10
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants