|
1 |
| -// import { ChainDeployConfig, deployChainlinkOracle } from "../helpers"; |
2 |
| -// import { ChainlinkAsset } from "../../chains/types"; |
| 1 | +import { ChainDeployConfig } from "../helpers"; |
| 2 | +import { OracleTypes, SupportedAsset } from "../../chains/types"; |
| 3 | +import { base } from "../../chains"; |
| 4 | +import { deployAerodromeOracle } from "../helpers/oracles/aerodrome"; |
| 5 | +import { HardhatRuntimeEnvironment } from "hardhat/types"; |
3 | 6 |
|
4 |
| -// const assets = base.assets; |
| 7 | +const assets = base.assets; |
5 | 8 |
|
6 |
| -// export const deployConfig: ChainDeployConfig = { |
7 |
| -// blocksPerYear: Number(base.specificParams.blocksPerYear), |
8 |
| -// cgId: base.specificParams.cgId, |
9 |
| -// nativeTokenName: "Base", |
10 |
| -// nativeTokenSymbol: "ETH", |
11 |
| -// stableToken: base.chainAddresses.STABLE_TOKEN, |
12 |
| -// uniswap: { |
13 |
| -// flashSwapFee: 30, // TODO set the correct fee |
14 |
| -// hardcoded: [], |
15 |
| -// uniswapData: [], |
16 |
| -// uniswapOracleInitialDeployTokens: [], |
17 |
| -// uniswapV2FactoryAddress: "0x8909Dc15e40173Ff4699343b6eB8132c65e18eC6", |
18 |
| -// uniswapV2RouterAddress: "0x4752ba5DBc23f44D87826276BF6Fd6b1C372aD24", |
19 |
| -// uniswapV3SwapRouter: "0x2626664c2603336E57B271c5C0b26F421741e481", |
20 |
| -// uniswapV3Quoter: "0x3d4e44Eb1374240CE5F1B871ab261CD16335B76a" |
21 |
| -// }, |
22 |
| -// wtoken: base.chainAddresses.W_TOKEN, |
23 |
| -// nativeTokenUsdChainlinkFeed: base.chainAddresses.W_TOKEN_USD_CHAINLINK_PRICE_FEED |
24 |
| -// }; |
| 9 | +const pricesContract = "0xee717411f6E44F9feE011835C8E6FAaC5dEfF166"; |
25 | 10 |
|
26 |
| -// const chainlinkAssets: ChainlinkAsset[] = base.assets |
27 |
| -// .filter((asset) => asset.oracle === OracleTypes.ChainlinkPriceOracleV2) |
28 |
| -// .map((asset) => ({ |
29 |
| -// aggregator: (asset.oracleSpecificParams as ChainlinkSpecificParams).aggregator, |
30 |
| -// feedBaseCurrency: (asset.oracleSpecificParams as ChainlinkSpecificParams).feedBaseCurrency, |
31 |
| -// symbol: asset.symbol |
32 |
| -// })); |
| 11 | +export const deployConfig: ChainDeployConfig = { |
| 12 | + blocksPerYear: Number(base.specificParams.blocksPerYear), |
| 13 | + cgId: base.specificParams.cgId, |
| 14 | + nativeTokenName: "Base", |
| 15 | + nativeTokenSymbol: "ETH", |
| 16 | + stableToken: base.chainAddresses.STABLE_TOKEN, |
| 17 | + uniswap: { |
| 18 | + flashSwapFee: 30, // TODO set the correct fee |
| 19 | + hardcoded: [], |
| 20 | + uniswapData: [], |
| 21 | + uniswapOracleInitialDeployTokens: [], |
| 22 | + uniswapV2FactoryAddress: "0x8909Dc15e40173Ff4699343b6eB8132c65e18eC6", |
| 23 | + uniswapV2RouterAddress: "0x4752ba5DBc23f44D87826276BF6Fd6b1C372aD24", |
| 24 | + uniswapV3SwapRouter: "0x2626664c2603336E57B271c5C0b26F421741e481", |
| 25 | + uniswapV3Quoter: "0x3d4e44Eb1374240CE5F1B871ab261CD16335B76a" |
| 26 | + }, |
| 27 | + wtoken: base.chainAddresses.W_TOKEN, |
| 28 | + nativeTokenUsdChainlinkFeed: base.chainAddresses.W_TOKEN_USD_CHAINLINK_PRICE_FEED |
| 29 | +}; |
33 | 30 |
|
34 |
| -// export const deploy = async ({ run, ethers, getNamedAccounts, deployments }): Promise<void> => { |
35 |
| -// const { deployer } = await getNamedAccounts(); |
| 31 | +const aerodromeAssets: SupportedAsset[] = base.assets.filter( |
| 32 | + (asset) => asset.oracle === OracleTypes.AerodromePriceOracle |
| 33 | +); |
36 | 34 |
|
37 |
| -// //// ChainLinkV2 Oracle |
38 |
| -// await deployChainlinkOracle({ |
39 |
| -// run, |
40 |
| -// ethers, |
41 |
| -// getNamedAccounts, |
42 |
| -// deployments, |
43 |
| -// deployConfig, |
44 |
| -// assets, |
45 |
| -// chainlinkAssets |
46 |
| -// }); |
| 35 | +export const deploy = async ({ run, viem, getNamedAccounts, deployments }: HardhatRuntimeEnvironment): Promise<void> => { |
| 36 | + const { deployer } = await getNamedAccounts(); |
47 | 37 |
|
48 |
| -// //// Uniswap V3 Liquidator Funder |
49 |
| -// const uniswapV3LiquidatorFunder = await deployments.deploy("UniswapV3LiquidatorFunder", { |
50 |
| -// from: deployer, |
51 |
| -// args: [], |
52 |
| -// log: true, |
53 |
| -// waitConfirmations: 1 |
54 |
| -// }); |
55 |
| -// console.log("UniswapV3LiquidatorFunder: ", uniswapV3LiquidatorFunder.address); |
| 38 | + //// ChainLinkV2 Oracle |
| 39 | + await deployAerodromeOracle({ |
| 40 | + run, |
| 41 | + viem, |
| 42 | + getNamedAccounts, |
| 43 | + deployments, |
| 44 | + deployConfig, |
| 45 | + assets: aerodromeAssets, |
| 46 | + pricesContract |
| 47 | + }); |
56 | 48 |
|
57 |
| -// const solidlySwapLiquidator = await deployments.deploy("SolidlySwapLiquidator", { |
58 |
| -// from: deployer, |
59 |
| -// args: [], |
60 |
| -// log: true, |
61 |
| -// waitConfirmations: 1 |
62 |
| -// }); |
63 |
| -// console.log("solidlySwapLiquidator: ", solidlySwapLiquidator.address); |
64 |
| -// }; |
| 49 | + //// Uniswap V3 Liquidator Funder |
| 50 | + const uniswapV3LiquidatorFunder = await deployments.deploy("UniswapV3LiquidatorFunder", { |
| 51 | + from: deployer, |
| 52 | + args: [], |
| 53 | + log: true, |
| 54 | + waitConfirmations: 1 |
| 55 | + }); |
| 56 | + console.log("UniswapV3LiquidatorFunder: ", uniswapV3LiquidatorFunder.address); |
| 57 | + |
| 58 | + const solidlySwapLiquidator = await deployments.deploy("SolidlySwapLiquidator", { |
| 59 | + from: deployer, |
| 60 | + args: [], |
| 61 | + log: true, |
| 62 | + waitConfirmations: 1 |
| 63 | + }); |
| 64 | + console.log("solidlySwapLiquidator: ", solidlySwapLiquidator.address); |
| 65 | +}; |
0 commit comments