Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[sepolia] deploy revshare contracts to sepolia #119

Merged
merged 10 commits into from
Jan 29, 2024
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion sepolia/.env
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
NETWORK=sepolia
L1_RPC_URL=https://ethereum-full-sepolia-k8s-dev.cbhq.net
L2_RPC_URL=https://sepolia.base.org
L2_RPC_URL=https://base-sepolia.cbhq.net
L1_CHAIN_ID=11155111
L2_CHAIN_ID=84532
export PROXY_ADMIN=0x0389E59Aa0a41E4A413Ae70f0008e76CAA34b1F3
Expand Down
38 changes: 38 additions & 0 deletions sepolia/2024-01-22-deploy-revshare/.env
Original file line number Diff line number Diff line change
@@ -0,0 +1,38 @@
OP_COMMIT=e3ba24e72085d85bb5584dda33a03ccf60db86f0
BASE_CONTRACTS_COMMIT=0b4535fb175fcd9f4e67a44cb6a1e0105b626524

# BalanceTracker configuration
BALANCE_TRACKER_DEPLOYER=0x4672425C27A942bB27e7b9709c1b21ab89a3cA13
PROFIT_WALLET=0x5a822ea15764a6090b86b1eabffc051cec99afe9
OUTPUT_PROPOSER=0x20044a0d104E9e788A0C984A2B7eAe615afD046b
BATCH_SENDER=0x6CDEbe940BC0F26850285cacA097C11c33103E47
cody-wang-cb marked this conversation as resolved.
Show resolved Hide resolved
OUTPUT_PROPOSER_TARGET_BALANCE=200000000000000000000
BATCH_SENDER_TARGET_BALANCE=1000000000000000000000
BALANCE_TRACKER_ADMIN=0x4672425C27A942bB27e7b9709c1b21ab89a3cA13
BALANCE_TRACKER_SALT=BalanceTrackerProxyV2
BALANCE_TRACKER_CHAIN_ID=11155111

# FeeDisburser configuration
FEE_DISBURSER_DEPLOYER=0x4672425C27A942bB27e7b9709c1b21ab89a3cA13
OPTIMISM_WALLET=0x5a822ea15764a6090b86b1eabffc051cec99afe9
FEE_DISBURSEMENT_INTERVAL=604800 # 60 seconds * 60 minutes * 24 hours * 7 days
FEE_DISBURSER_ADMIN=0x4672425C27A942bB27e7b9709c1b21ab89a3cA13
FEE_DISBURSER_SALT=FeeDisburserProxy
FEE_DISBUSER_CHAIN_ID=84532

# Contract Addresses
BALANCE_TRACKER_PROXY=0x8D1b5e5614300F5c7ADA01fFA4ccF8F1752D9A57
FEE_DISBURSER_PROXY=0x76355A67fCBCDE6F9a69409A8EAd5EaA9D8d875d
BALANCE_TRACKER_IMPL=0x3A92D1B1dF54870245efF0C8B1a2EBF16d997cAA
FEE_DISBURSER_IMPL=0xCA9be02F8e417D20f33551BA22ddf3f7623FB345

# Fee vaults upgrade deployer
PROXY_ADMIN_OWNER=0x8937037a0bb08658e5a178c182e60b12f14720ce
SEQUENCER_FEE_VAULT_IMPL=0xD82e08F9Fc01627418061Bc6c2B90b30b7975702
L1_FEE_VAULT_IMPL=0xfBa224A64C664C5fD320c9Fd3Ced4C18405952D1
BASE_FEE_VAULT_IMPL=0xb4BE1Ce574B27A340322fE70d5634E2aEC0eD09A

# Verification
VERIFIER=etherscan
L1_VERIFIER_URL=https://api-sepolia.etherscan.io/api
L2_VERIFIER_URL=https://api-sepolia.basescan.org/api
34 changes: 34 additions & 0 deletions sepolia/2024-01-22-deploy-revshare/Makefile
Original file line number Diff line number Diff line change
@@ -0,0 +1,34 @@
include ../../Makefile
include ../.env
include .env

##
# Foundry commands
##
.PHONY: deploy-balance-tracker
deploy-balance-tracker:
forge script DeployBalanceTracker --rpc-url $(L1_RPC_URL) --sig "run()"

.PHONY: deploy-fee-disburser
deploy-fee-disburser:
forge script DeployFeeDisburser --rpc-url $(L2_RPC_URL) --sig "run()"

.PHONY: verify-balance-tracker
verify-balance-tracker:
forge verify-contract ${BALANCE_TRACKER_IMPL} ./lib/base-contracts/src/revenue-share/BalanceTracker.sol:BalanceTracker --constructor-args $(shell cast abi-encode "constructor(address)" ${PROFIT_WALLET}) --verifier ${VERIFIER} --verifier-url ${L1_VERIFIER_URL} --chain-id ${BALANCE_TRACKER_CHAIN_ID} --retries=1 --etherscan-api-key ${L1_ETHERSCAN_API_KEY} --optimizer-runs=999999 --watch
forge verify-contract ${BALANCE_TRACKER_PROXY} Proxy --constructor-args $(shell cast abi-encode "constructor(address)" ${BALANCE_TRACKER_DEPLOYER}) --verifier ${VERIFIER} --verifier-url ${L1_VERIFIER_URL} --chain-id ${BALANCE_TRACKER_CHAIN_ID} --retries=1 --etherscan-api-key ${L1_ETHERSCAN_API_KEY} --optimizer-runs=999999 --watch

.PHONY: verify-fee-disburser
verify-fee-disburser:
ETHERSCAN_API_KEY=$(L2_ETHERSCAN_API_KEY) forge verify-contract ${FEE_DISBURSER_IMPL} ./lib/base-contracts/src/revenue-share/FeeDisburser.sol:FeeDisburser --constructor-args $(shell cast abi-encode "constructor(address,address,uint256)" ${OPTIMISM_WALLET} ${BALANCE_TRACKER_PROXY} ${FEE_DISBURSEMENT_INTERVAL}) --verifier ${VERIFIER} --verifier-url ${L2_VERIFIER_URL} --chain-id ${L2_CHAIN_ID} --optimizer-runs=999999 --retries=1 --compiler-version v0.8.15+commit.e14f2714 --watch
ETHERSCAN_API_KEY=$(L2_ETHERSCAN_API_KEY) forge verify-contract ${FEE_DISBURSER_PROXY} Proxy --constructor-args $(shell cast abi-encode "constructor(address)" ${FEE_DISBURSER_DEPLOYER}) --verifier ${VERIFIER} --verifier-url ${L2_VERIFIER_URL} --chain-id ${L2_CHAIN_ID} --num-of-optimizations=99999 --retries=1 --compiler-version v0.8.15+commit.e14f2714 --watch

.PHONY: update-fee-vaults
update-fee-vaults:
forge script UpdateFeeVaultRecipient --rpc-url $(L2_RPC_URL) --sig "run()"

.PHONY: verify-fee-vaults
verify-fee-vaults:
ETHERSCAN_API_KEY=$(L2_ETHERSCAN_API_KEY) forge verify-contract ${SEQUENCER_FEE_VAULT_IMPL} SequencerFeeVault --constructor-args $(shell cast abi-encode "constructor(address,uint256,uint8)" ${FEE_DISBURSER_PROXY} 2000000000000000000 1) --verifier ${VERIFIER} --verifier-url ${L2_VERIFIER_URL} --chain-id ${L2_CHAIN_ID} --optimizer-runs=999999 --retries=1 --watch
ETHERSCAN_API_KEY=$(L2_ETHERSCAN_API_KEY) forge verify-contract ${L1_FEE_VAULT_IMPL} L1FeeVault --constructor-args $(shell cast abi-encode "constructor(address,uint256,uint8)" ${FEE_DISBURSER_PROXY} 2000000000000000000 1) --verifier ${VERIFIER} --verifier-url ${L2_VERIFIER_URL} --chain-id ${L2_CHAIN_ID} --optimizer-runs=999999 --retries=1 --watch
ETHERSCAN_API_KEY=$(L2_ETHERSCAN_API_KEY) forge verify-contract ${BASE_FEE_VAULT_IMPL} BaseFeeVault --constructor-args $(shell cast abi-encode "constructor(address,uint256,uint8)" ${FEE_DISBURSER_PROXY} 2000000000000000000 1) --verifier ${VERIFIER} --verifier-url ${L2_VERIFIER_URL} --chain-id ${L2_CHAIN_ID} --optimizer-runs=999999 --retries=1 --watch
19 changes: 19 additions & 0 deletions sepolia/2024-01-22-deploy-revshare/foundry.toml
Original file line number Diff line number Diff line change
@@ -0,0 +1,19 @@
[profile.default]
src = 'src'
out = 'out'
libs = ['lib']
broadcast = 'records'
fs_permissions = [ {access = "read-write", path = "./"} ]
optimizer = true
optimizer_runs = 999999
solc_version = "0.8.15"
via-ir = true
remappings = [
'@eth-optimism-bedrock/=lib/optimism/packages/contracts-bedrock/',
'@openzeppelin/contracts/=lib/openzeppelin-contracts/contracts',
'@openzeppelin/contracts-upgradeable/=lib/openzeppelin-contracts-upgradeable/contracts',
'@rari-capital/solmate/=lib/solmate/',
'@base-contracts/=lib/base-contracts'
]

# See more config options https://github.com/foundry-rs/foundry/tree/master/config
Loading