Payload, retrieval contract,and tests
This proposal payload sets the claimer of the Balancer DAO contract's stkAAVE rewards to be the retrieval contract.
The retrieval contract does the following:
- It is called by the Balancer Multisig
- It claims the stkAAVE rewards on behalf of the Balancer DAO contract from aDAI, aUSDC, and aUSDT
- It transfers the stkAAVE rewards to the Balancer Multisig
It requires Foundry installed to run. You can find instructions here Foundry installation.
To install, run the following commands:
$ git clone https://github.com/llama-community/aave-stkaave-retrieval.git
$ cd aave-stkaave-retrieval/
$ npm install
$ forge install
Duplicate .env.example
and rename to .env
:
- Add a valid mainnet URL for an Ethereum JSON-RPC client for the
RPC_MAINNET_URL
variable. - Add a valid Private Key for the
PRIVATE_KEY
variable. - Add a valid Etherscan API Key for the
ETHERSCAN_API_KEY
variable.
make build
- build the projectmake test [optional](V={1,2,3,4,5})
- run tests (with different debug levels if provided)make match MATCH=<TEST_FUNCTION_NAME> [optional](V=<{1,2,3,4,5}>)
- run matched tests (with different debug levels if provided)
make deploy-payload
- deploy and verify payload on mainnetmake deploy-proposal
- deploy proposal on mainnet
To confirm the deploy was successful, re-run your test suite but use the newly created contract address.