mirror of
https://github.com/Instadapp/aave-protocol-v2.git
synced 2024-07-29 21:47:30 +00:00
fix: finalized aave pro deployment scripts and configuration
This commit is contained in:
parent
f9a0c172dd
commit
e735d31a34
|
@ -51,6 +51,7 @@ import {
|
|||
FlashLiquidationAdapterFactory,
|
||||
PermissionedVariableDebtTokenFactory,
|
||||
PermissionedStableDebtTokenFactory,
|
||||
PermissionedLendingPoolFactory
|
||||
} from '../types';
|
||||
import {
|
||||
withSaveAndVerify,
|
||||
|
@ -189,11 +190,21 @@ export const deployAaveLibraries = async (
|
|||
};
|
||||
};
|
||||
|
||||
export const deployLendingPool = async (verify?: boolean) => {
|
||||
export const deployLendingPool = async (verify?: boolean, lendingPoolImpl?: eContractid) => {
|
||||
const libraries = await deployAaveLibraries(verify);
|
||||
const lendingPoolImpl = await new LendingPoolFactory(libraries, await getFirstSigner()).deploy();
|
||||
await insertContractAddressInDb(eContractid.LendingPoolImpl, lendingPoolImpl.address);
|
||||
return withSaveAndVerify(lendingPoolImpl, eContractid.LendingPool, [], verify);
|
||||
|
||||
let instance;
|
||||
switch(lendingPoolImpl) {
|
||||
case eContractid.PermissionedLendingPool:
|
||||
instance = await new PermissionedLendingPoolFactory(libraries, await getFirstSigner()).deploy();
|
||||
break;
|
||||
case eContractid.LendingPool:
|
||||
default:
|
||||
instance = await new LendingPoolFactory(libraries, await getFirstSigner()).deploy();
|
||||
}
|
||||
|
||||
await insertContractAddressInDb(eContractid.LendingPoolImpl, instance.address);
|
||||
return withSaveAndVerify(instance, eContractid.LendingPool, [], verify);
|
||||
};
|
||||
|
||||
export const deployPriceOracle = async (verify?: boolean) =>
|
||||
|
|
|
@ -90,6 +90,7 @@ export enum eContractid {
|
|||
PermissionManager = 'PermissionManager',
|
||||
PermissionedStableDebtToken = 'PermissionedStableDebtToken',
|
||||
PermissionedVariableDebtToken = 'PermissionedVariableDebtToken',
|
||||
PermissionedLendingPool = 'PermissionedLendingPool'
|
||||
}
|
||||
|
||||
/*
|
||||
|
@ -474,6 +475,7 @@ export interface ILendingRate {
|
|||
|
||||
export interface ICommonConfiguration {
|
||||
MarketId: string;
|
||||
LendingPoolImpl?: eContractid;
|
||||
ATokenNamePrefix: string;
|
||||
StableDebtTokenNamePrefix: string;
|
||||
VariableDebtTokenNamePrefix: string;
|
||||
|
|
|
@ -8,11 +8,11 @@ import { ICommonConfiguration, eEthereumNetwork } from '../../helpers/types';
|
|||
|
||||
export const CommonsConfig: ICommonConfiguration = {
|
||||
MarketId: 'Commons',
|
||||
ATokenNamePrefix: 'Aave interest bearing',
|
||||
StableDebtTokenNamePrefix: 'Aave stable debt bearing',
|
||||
VariableDebtTokenNamePrefix: 'Aave variable debt bearing',
|
||||
ATokenNamePrefix: 'Aave Pro market',
|
||||
StableDebtTokenNamePrefix: 'Aave Pro stable debt ',
|
||||
VariableDebtTokenNamePrefix: 'Aave Pro variable debt ',
|
||||
SymbolPrefix: '',
|
||||
ProviderId: 0, // Overriden in index.ts
|
||||
ProviderId: 0, // Overridden in index.ts
|
||||
ProtocolGlobalParams: {
|
||||
TokenDistributorPercentageBase: '10000',
|
||||
MockUsdPriceInWei: '5848466240000000',
|
||||
|
@ -295,4 +295,22 @@ export const CommonsConfig: ICommonConfiguration = {
|
|||
[eEthereumNetwork.main]: '0x464c71f6c2f760dda6093dcb91c24c39e5d6e18c',
|
||||
[eEthereumNetwork.tenderlyMain]: '0x464c71f6c2f760dda6093dcb91c24c39e5d6e18c',
|
||||
},
|
||||
WrappedNativeToken: {
|
||||
[eEthereumNetwork.coverage]: '', // deployed in local evm
|
||||
[eEthereumNetwork.hardhat]: '', // deployed in local evm
|
||||
[eEthereumNetwork.buidlerevm]: '', // deployed in local evm
|
||||
[eEthereumNetwork.kovan]: '0xd0a1e359811322d97991e03f863a0c30c2cf029c',
|
||||
[eEthereumNetwork.ropsten]: '0xc778417e063141139fce010982780140aa0cd5ab',
|
||||
[eEthereumNetwork.main]: '0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2',
|
||||
[eEthereumNetwork.tenderlyMain]: '0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2',
|
||||
},
|
||||
IncentivesController: {
|
||||
[eEthereumNetwork.coverage]: ZERO_ADDRESS,
|
||||
[eEthereumNetwork.hardhat]: ZERO_ADDRESS,
|
||||
[eEthereumNetwork.buidlerevm]: ZERO_ADDRESS,
|
||||
[eEthereumNetwork.kovan]: ZERO_ADDRESS,
|
||||
[eEthereumNetwork.ropsten]: ZERO_ADDRESS,
|
||||
[eEthereumNetwork.main]: ZERO_ADDRESS,
|
||||
[eEthereumNetwork.tenderlyMain]: ZERO_ADDRESS,
|
||||
},
|
||||
};
|
||||
|
|
|
@ -1,4 +1,5 @@
|
|||
import { IAaveProConfiguration, eEthereumNetwork } from '../../helpers/types';
|
||||
import { ZERO_ADDRESS } from '../../helpers/constants';
|
||||
import { IAaveProConfiguration, eEthereumNetwork, eContractid } from '../../helpers/types';
|
||||
|
||||
import { CommonsConfig } from './commons';
|
||||
import {
|
||||
|
@ -16,6 +17,7 @@ export const AaveConfig: IAaveProConfiguration = {
|
|||
...CommonsConfig,
|
||||
MarketId: 'Aave Pro market',
|
||||
ProviderId: 1,
|
||||
LendingPoolImpl: eContractid.PermissionedLendingPool,
|
||||
ReservesConfig: {
|
||||
USDC: strategyUSDC,
|
||||
USDT: strategyUSDT,
|
||||
|
@ -28,29 +30,29 @@ export const AaveConfig: IAaveProConfiguration = {
|
|||
[eEthereumNetwork.coverage]: {},
|
||||
[eEthereumNetwork.kovan]: {
|
||||
USDC: '0xe22da380ee6B445bb8273C81944ADEB6E8450422',
|
||||
USDT: '0x13512979ADE267AB5100878E2e0f485B568328a4',
|
||||
WBTC: '0xD1B98B6607330172f1D991521145A22BCe793277',
|
||||
WETH: '0xd0a1e359811322d97991e03f863a0c30c2cf029c',
|
||||
AAVE: '0xB597cd8D3217ea6477232F9217fa70837ff667Af',
|
||||
},
|
||||
[eEthereumNetwork.ropsten]: {
|
||||
USDC: '0x851dEf71f0e6A903375C1e536Bd9ff1684BAD802',
|
||||
USDT: '0xB404c51BBC10dcBE948077F18a4B8E553D160084',
|
||||
WBTC: '0xa0E54Ab6AA5f0bf1D62EC3526436F3c05b3348A0',
|
||||
WETH: '0xc778417e063141139fce010982780140aa0cd5ab',
|
||||
AAVE: 'ZERO_ADDRESS',
|
||||
},
|
||||
[eEthereumNetwork.main]: {
|
||||
USDC: '0xA0b86991c6218b36c1d19D4a2e9Eb0cE3606eB48',
|
||||
USDT: '0xdAC17F958D2ee523a2206206994597C13D831ec7',
|
||||
WBTC: '0x2260FAC5E5542a773Aa44fBCfeDf7C193bc2C599',
|
||||
WETH: '0xC02aaA39b223FE8D0A0e5C4F27eAD9083C756Cc2',
|
||||
AAVE: '0x7Fc66500c84A76Ad7e9c93437bFc5Ac33E2DDaE9',
|
||||
},
|
||||
[eEthereumNetwork.tenderlyMain]: {
|
||||
USDC: '0xA0b86991c6218b36c1d19D4a2e9Eb0cE3606eB48',
|
||||
USDT: '0xdAC17F958D2ee523a2206206994597C13D831ec7',
|
||||
WBTC: '0x2260FAC5E5542a773Aa44fBCfeDf7C193bc2C599',
|
||||
WETH: '0xC02aaA39b223FE8D0A0e5C4F27eAD9083C756Cc2',
|
||||
AAVE: '0x7Fc66500c84A76Ad7e9c93437bFc5Ac33E2DDaE9',
|
||||
},
|
||||
},
|
||||
}
|
||||
};
|
||||
|
||||
export default AaveConfig;
|
||||
|
|
|
@ -19,6 +19,7 @@ import { loadPoolConfig, ConfigNames } from '../../helpers/configuration';
|
|||
task('full:deploy-lending-pool', 'Deploy lending pool for dev enviroment')
|
||||
.addFlag('verify', 'Verify contracts at Etherscan')
|
||||
.addParam('pool', `Pool name to retrieve configuration, supported: ${Object.values(ConfigNames)}`)
|
||||
.addParam('lendingPoolImpl')
|
||||
.setAction(async ({ verify, pool }, DRE: HardhatRuntimeEnvironment) => {
|
||||
try {
|
||||
await DRE.run('set-DRE');
|
||||
|
@ -32,7 +33,7 @@ task('full:deploy-lending-pool', 'Deploy lending pool for dev enviroment')
|
|||
let lendingPoolImplAddress = getParamPerNetwork(LendingPool, network);
|
||||
if (!notFalsyOrZeroAddress(lendingPoolImplAddress)) {
|
||||
console.log('\tDeploying new lending pool implementation & libraries...');
|
||||
const lendingPoolImpl = await deployLendingPool(verify);
|
||||
const lendingPoolImpl = await deployLendingPool(verify, poolConfig.LendingPoolImpl);
|
||||
lendingPoolImplAddress = lendingPoolImpl.address;
|
||||
await lendingPoolImpl.initialize(addressesProvider.address);
|
||||
}
|
||||
|
|
Loading…
Reference in New Issue
Block a user