mirror of
				https://github.com/Instadapp/aave-protocol-v2.git
				synced 2024-07-29 21:47:30 +00:00 
			
		
		
		
	deployment scripts
This commit is contained in:
		
							parent
							
								
									6b1e542a5b
								
							
						
					
					
						commit
						e43d791d39
					
				| 
						 | 
				
			
			@ -63,17 +63,22 @@ import { MintableDelegationERC20 } from '../types/MintableDelegationERC20';
 | 
			
		|||
import { readArtifact as buidlerReadArtifact } from '@nomiclabs/buidler/plugins';
 | 
			
		||||
import { HardhatRuntimeEnvironment } from 'hardhat/types';
 | 
			
		||||
import { LendingPoolLibraryAddresses } from '../types/LendingPoolFactory';
 | 
			
		||||
import { UiPoolDataProvider } from '../types';
 | 
			
		||||
import { UiPoolDataProvider, UiIncentiveDataProvider } from '../types';
 | 
			
		||||
 | 
			
		||||
export const deployUiPoolDataProvider = async (
 | 
			
		||||
  [incentivesController, aaveOracle]: [tEthereumAddress, tEthereumAddress],
 | 
			
		||||
  verify?: boolean
 | 
			
		||||
) => {
 | 
			
		||||
export const deployUiPoolDataProvider = async (verify?: boolean) => {
 | 
			
		||||
  const id = eContractid.UiPoolDataProvider;
 | 
			
		||||
  const args: string[] = [incentivesController, aaveOracle];
 | 
			
		||||
  const instance = await deployContract<UiPoolDataProvider>(id, args);
 | 
			
		||||
  const instance = await deployContract<UiPoolDataProvider>(id, []);
 | 
			
		||||
  if (verify) {
 | 
			
		||||
    await verifyContract(id, instance, args);
 | 
			
		||||
    await verifyContract(id, instance, []);
 | 
			
		||||
  }
 | 
			
		||||
  return instance;
 | 
			
		||||
};
 | 
			
		||||
 | 
			
		||||
export const deployUiIncentiveDataProvider = async (verify?: boolean) => {
 | 
			
		||||
  const id = eContractid.UiIncentiveDataProvider;
 | 
			
		||||
  const instance = await deployContract<UiIncentiveDataProvider>(id, []);
 | 
			
		||||
  if (verify) {
 | 
			
		||||
    await verifyContract(id, instance, []);
 | 
			
		||||
  }
 | 
			
		||||
  return instance;
 | 
			
		||||
};
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
							
								
								
									
										23
									
								
								tasks/deployments/deploy-UiIncentiveDataProvider.ts
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										23
									
								
								tasks/deployments/deploy-UiIncentiveDataProvider.ts
									
									
									
									
									
										Normal file
									
								
							| 
						 | 
				
			
			@ -0,0 +1,23 @@
 | 
			
		|||
import { task } from 'hardhat/config';
 | 
			
		||||
import { eContractid, eEthereumNetwork, eNetwork, ePolygonNetwork } from '../../helpers/types';
 | 
			
		||||
import { deployUiIncentiveDataProvider } from '../../helpers/contracts-deployments';
 | 
			
		||||
import { exit } from 'process';
 | 
			
		||||
 | 
			
		||||
task(
 | 
			
		||||
  `deploy-${eContractid.UiIncentiveDataProvider}`,
 | 
			
		||||
  `Deploys the UiIncentiveDataProvider contract`
 | 
			
		||||
)
 | 
			
		||||
  .addFlag('verify', 'Verify UiIncentiveDataProvider contract via Etherscan API.')
 | 
			
		||||
  .setAction(async ({ verify }, localBRE) => {
 | 
			
		||||
    await localBRE.run('set-DRE');
 | 
			
		||||
    if (!localBRE.network.config.chainId) {
 | 
			
		||||
      throw new Error('INVALID_CHAIN_ID');
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    console.log(`\n- UiIncentiveDataProvider deployment`);
 | 
			
		||||
 | 
			
		||||
    const uiIncentiveDataProvider = await deployUiIncentiveDataProvider(verify);
 | 
			
		||||
 | 
			
		||||
    console.log('UiPoolDataProvider deployed at:', uiIncentiveDataProvider.address);
 | 
			
		||||
    console.log(`\tFinished UiPoolDataProvider deployment`);
 | 
			
		||||
  });
 | 
			
		||||
| 
						 | 
				
			
			@ -10,46 +10,10 @@ task(`deploy-${eContractid.UiPoolDataProvider}`, `Deploys the UiPoolDataProvider
 | 
			
		|||
    if (!localBRE.network.config.chainId) {
 | 
			
		||||
      throw new Error('INVALID_CHAIN_ID');
 | 
			
		||||
    }
 | 
			
		||||
    const network = localBRE.network.name;
 | 
			
		||||
 | 
			
		||||
    const addressesByNetwork: {
 | 
			
		||||
      [key: string]: { incentivesController: string; aaveOracle: string };
 | 
			
		||||
    } = {
 | 
			
		||||
      [eEthereumNetwork.kovan]: {
 | 
			
		||||
        incentivesController: '0x0000000000000000000000000000000000000000',
 | 
			
		||||
        aaveOracle: '0x8fb777d67e9945e2c01936e319057f9d41d559e6',
 | 
			
		||||
      },
 | 
			
		||||
      [eEthereumNetwork.main]: {
 | 
			
		||||
        incentivesController: '0xd784927Ff2f95ba542BfC824c8a8a98F3495f6b5',
 | 
			
		||||
        aaveOracle: '0xa50ba011c48153de246e5192c8f9258a2ba79ca9',
 | 
			
		||||
      },
 | 
			
		||||
      [ePolygonNetwork.matic]: {
 | 
			
		||||
        incentivesController: '0x357D51124f59836DeD84c8a1730D72B749d8BC23',
 | 
			
		||||
        aaveOracle: '0x0229F777B0fAb107F9591a41d5F02E4e98dB6f2d',
 | 
			
		||||
      },
 | 
			
		||||
      [ePolygonNetwork.mumbai]: {
 | 
			
		||||
        incentivesController: '0xd41aE58e803Edf4304334acCE4DC4Ec34a63C644',
 | 
			
		||||
        aaveOracle: '0xC365C653f7229894F93994CD0b30947Ab69Ff1D5',
 | 
			
		||||
      },
 | 
			
		||||
    };
 | 
			
		||||
    const supportedNetworks = Object.keys(addressesByNetwork);
 | 
			
		||||
 | 
			
		||||
    if (!supportedNetworks.includes(network)) {
 | 
			
		||||
      console.error(
 | 
			
		||||
        `[task][error] Network "${network}" not supported, please use one of: ${supportedNetworks.join()}`
 | 
			
		||||
      );
 | 
			
		||||
      exit(2);
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    const oracle = addressesByNetwork[network].aaveOracle;
 | 
			
		||||
    const incentivesController = addressesByNetwork[network].incentivesController;
 | 
			
		||||
 | 
			
		||||
    console.log(`\n- UiPoolDataProvider deployment`);
 | 
			
		||||
 | 
			
		||||
    const uiPoolDataProvider = await deployUiPoolDataProvider(
 | 
			
		||||
      [incentivesController, oracle],
 | 
			
		||||
      verify
 | 
			
		||||
    );
 | 
			
		||||
    const uiPoolDataProvider = await deployUiPoolDataProvider(verify);
 | 
			
		||||
 | 
			
		||||
    console.log('UiPoolDataProvider deployed at:', uiPoolDataProvider.address);
 | 
			
		||||
    console.log(`\tFinished UiPoolDataProvider deployment`);
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
		Loading…
	
		Reference in New Issue
	
	Block a user