/ migrations / 7_deploy_feeds.js
7_deploy_feeds.js
1 const feed = artifacts.require("ChainlinkFeed"); 2 const scryAgg = artifacts.require("ScryAggregatorV1"); 3 const pythAgg = artifacts.require("PythAggregatorV1"); 4 5 ///https://docs.chain.link/data-feeds/price-feeds/addresses?network=avalanche 6 7 /* 8 9 MUMBAI CHAINLINK AGGV3's 10 BTC / USD 0x007A22900a3B98143368Bd5906f8E17e9867581b 11 ETH / USD 0x0715A7794a1dc8e42615F059dD6e406A6594651A 12 MATIC / USD 0xd0D5e3DB44DE05E9F294BB0a3bEEaF030DE24Ada 13 14 */ 15 16 /* 17 18 FUJI CHIANLINKE AGGV3's 19 20 AVAX / USD 0x5498BB86BC934c8D34FDA08E81D444153d0D06aD 21 BTC / USD 0x31CF013A08c6Ac228C94551d535d5BAfE19c602a 22 ETH / USD 0x86d67c3D38D2bCeE722E601025C25a575021c6EA 23 MATIC / USD 0xB0924e98CAFC880ed81F6A4cA63FD61006D1f8A0 24 25 FakeDAI is at: 0x3f726b8b382f7EEaeA106D37AdA822F2973cB2f4 26 FakeUSDC is at: 0x4D9790A4097bD1B46944B3019a1b11c935AcDa34 27 FakeBTC is at: 0xC969024b804Bf0944610277Bb13eA820596eEdE8 28 FakeETH is at: 0x7f817f49d1Bc9A76E4581845B2FDa6De28ea3dB2 29 FakeMATIC is at: 0xDd2451C438e1711f9b5015a8DbFA727382A0B08F 30 FakeAVAX is at: 0xf0cAe108823b80F37cfAA5E8aEc8190D66ED0d62 31 32 */ 33 34 /* 35 36 CANTO TESTNET SCRY ORACLE 37 :0xE565f05422481345b5Fad564DD9Ab7B0cE3Ec017 38 39 const BTCUSDAgg = await deployer.deploy( 40 scryAgg, 41 "0xE565f05422481345b5Fad564DD9Ab7B0cE3Ec017", 42 2 43 ); 44 console.log("BTCUSDAgg is at: "+ BTCUSDAgg.address); 45 const ETHUSDAgg = await deployer.deploy( 46 scryAgg, 47 "0xE565f05422481345b5Fad564DD9Ab7B0cE3Ec017", 48 1` 49 ); 50 console.log("ETHUSDAgg is at: "+ ETHUSDAgg.address); 51 const CANTOUSDAgg = await deployer.deploy( 52 scryAgg, 53 "0xE565f05422481345b5Fad564DD9Ab7B0cE3Ec017", 54 0 55 ); 56 console.log("CANTOUSDAgg is at: "+ CANTOUSDAgg.address); 57 58 */ 59 60 const oracleAdminAddr = "0xe977757dA5fd73Ca3D2bA6b7B544bdF42bb2CBf6"; 61 62 module.exports = async function(deployer) { 63 // pyth_asset_ids = [{"BTC": "0xf9c0172ba10dfa4d19088d94f5bf61d3b54d5bd7483a322a982e1373ee8ea31b"}, {"ETH": "0xca80ba6dc32e08d06f1aa886011eed1d77c77be9eb761cc10d72b7d0a2fd57a6"}, {"MATIC": "0xd2c2c1f2bba8e0964f9589e060c2ee97f5e19057267ac3284caef3bd50bd2cb5"}, {"AVAX": "0xd7566a3ba7f7286ed54f4ae7e983f4420ae0b1e0f3892e11f9c4ab107bbad7b9"}] 64 65 //time truffle migrate --reset -f 7 --to 7 --skip-dry-run --network=mumbai >> mumbai_deployment_1.txt 66 67 /* 68 let BTCUSDAgg = await deployer.deploy( 69 pythAgg, 70 "0xff1a0f4744e8582DF1aE09D5611b887B6a12925C", 71 "0xf9c0172ba10dfa4d19088d94f5bf61d3b54d5bd7483a322a982e1373ee8ea31b" 72 ); 73 setTimeout(function(){},10000); 74 BTCUSDAgg = {address: pythAgg.address}; 75 76 console.log("pythBTCUSDAgg is at: "+ BTCUSDAgg.address); 77 let ETHUSDAgg = await deployer.deploy( 78 pythAgg, 79 "0xff1a0f4744e8582DF1aE09D5611b887B6a12925C", 80 "0xca80ba6dc32e08d06f1aa886011eed1d77c77be9eb761cc10d72b7d0a2fd57a6" 81 ); 82 setTimeout(function(){},10000); 83 ETHUSDAgg = {address: pythAgg.address}; 84 console.log("pythETHUSDAgg is at: "+ ETHUSDAgg.address); 85 86 let MATICUSDAgg = await deployer.deploy( 87 pythAgg, 88 "0xff1a0f4744e8582DF1aE09D5611b887B6a12925C", 89 "0xd2c2c1f2bba8e0964f9589e060c2ee97f5e19057267ac3284caef3bd50bd2cb5" 90 ); 91 setTimeout(function(){},10000); 92 MATICUSDAgg = {address: pythAgg.address}; 93 console.log("pythMATICUSDAgg is at: "+ MATICUSDAgg.address); 94 let AVAXUSDAgg = await deployer.deploy( 95 pythAgg, 96 "0xff1a0f4744e8582DF1aE09D5611b887B6a12925C", 97 "0xd7566a3ba7f7286ed54f4ae7e983f4420ae0b1e0f3892e11f9c4ab107bbad7b9" 98 ); 99 AVAXUSDAgg = {address: pythAgg.address}; 100 setTimeout(function(){},10000); 101 console.log("pythAVAXUSDAgg is at: "+ AVAXUSDAgg.address);*/ 102 103 /* 104 105 string memory _sb, 106 address _udlAddr, 107 address _ppK, 108 address _aggregator, 109 address _time, 110 uint _offset, 111 uint[] memory _timestamps, 112 int[] memory _prices 113 */ 114 115 /**/ 116 117 const btc = await deployer.deploy( 118 feed, 119 "BTC/USD", 120 "0x1C35FFaa7DAD5532bF4BF653094A37fCa4983a3c", //underlying addrsss on the chain 121 oracleAdminAddr, //privledgedPublisherKeeper, may be address(0) 122 "0xb3F395438148976BC5CC3d9891e1d4eD4A0431B9",//btc/usd feed mock or chainlink agg 123 "0x2FFBEef25BC2812F5aF79471A3624216c687Bc91", //time provider address 124 3 * 60 * 60, 125 [1676005200, 1676091600, 1676178000, 1676264400, 1676350800, 1676437200, 1676523600, 1676610000, 1676696400, 1676782800, 1676869200, 1676955600, 1677042000, 1677128400, 1677214800, 1677301200, 1677387600, 1677474000, 1677560400, 1677646800, 1677733200, 1677819600, 1677906000, 1677992400, 1678078800, 1678165200, 1678251600, 1678338000, 1678424400, 1678510800, 1678597200, 1678680000, 1678766400, 1678852800, 1678939200, 1679025600, 1679112000, 1679198400, 1679284800, 1679371200, 1679457600, 1679544000, 1679630400, 1679716800, 1679803200, 1679889600, 1679976000, 1680062400, 1680148800, 1680235200, 1680321600, 1680408000, 1680494400, 1680580800, 1680667200, 1680753600, 1680840000, 1680926400, 1681012800, 1681099200, 1681185600, 1681272000, 1681358400, 1681444800, 1681531200, 1681617600, 1681704000, 1681790400, 1681876800, 1681963200, 1682049600, 1682136000, 1682222400, 1682308800, 1682395200, 1682481600, 1682568000, 1682654400, 1682740800, 1682827200, 1682913600, 1683000000, 1683086400, 1683172800, 1683259200, 1683345600, 1683432000, 1683518400, 1683604800, 1683691200, 1683777600, 1683864000, 1683950400, 1684036800, 1684123200, 1684209600, 1684296000, 1684382400, 1684468800, 1684555200], 126 ['21819005859000000000000', '21651841797000000000000', '21870902344000000000000', '21787000000000000000000', '21801822266000000000000', '22220585938000000000000', '24307349609000000000000', '23621283203000000000000', '24565296875000000000000', '24640027344000000000000', '24336623047000000000000', '24833048828000000000000', '24437417969000000000000', '24190718750000000000000', '23946007813000000000000', '23200125000000000000000', '23174150391000000000000', '23561451172000000000000', '23521837891000000000000', '23150929688000000000000', '23647019531000000000000', '23476632813000000000000', '22362923828000000000000', '22354144531000000000000', '22436816406000000000000', '22428322266000000000000', '22216441406000000000000', '21720080078000000000000', '20367001953000000000000', '20187876953000000000000', '20628029297000000000000', '22156406250000000000000', '24201765625000000000000', '24770925781000000000000', '24373457031000000000000', '25055123047000000000000', '27448117188000000000000', '26969503906000000000000', '28041601563000000000000', '27768392578000000000000', '28158720703000000000000', '27301957031000000000000', '28324111328000000000000', '27487337891000000000000', '27495523438000000000000', '27994068359000000000000', '27132888672000000000000', '27267031250000000000000', '28350140625000000000000', '28032261719000000000000', '28473332031000000000000', '28462845703000000000000', '28183080078000000000000', '27795273438000000000000', '28169726563000000000000', '28175226563000000000000', '28038966797000000000000', '27920513672000000000000', '27952367188000000000000', '28336027344000000000000', '29653679688000000000000', '30231582031000000000000', '29892740234000000000000', '30409562500000000000000', '30490750000000000000000', '30315976563000000000000', '30317146484000000000000', '29449091797000000000000', '30394187500000000000000', '28823683594000000000000', '28249230469000000000000', '27265894531000000000000', '27816144531000000000000', '27591730469000000000000', '27514873047000000000000', '28300058594000000000000', '28428464844000000000000', '29481013672000000000000', '29336566406000000000000', '29245515625000000000000', '29227103516000000000000', '28087175781000000000000', '28680494141000000000000', '29031304688000000000000', '28851480469000000000000', '29538859375000000000000', '28901623047000000000000', '28450457031000000000000', '27695068359000000000000', '27654636719000000000000', '27621085938000000000000', '26987662109000000000000', '26807769531000000000000', '26788974609000000000000', '26931384766000000000000', '27171513672000000000000', '27035470703000000000000', '27401650391000000000000', '26826753906000000000000', '26888812500000000000000'] 127 128 ); 129 setTimeout(function(){},10000); 130 console.log("btc pyth feed is at: "+ feed.address); 131 const eth = await deployer.deploy( 132 feed, 133 "ETH/USD", 134 "0x0a85858104c23cbabc800f1c1AE8677eaAEFc4E2", 135 oracleAdminAddr, //privledgedPublisherKeeper, may be address(0) 136 "0xC5e5105F3C6E9Ee8aEC989935c08F8AB1dEbC8a6", 137 "0x2FFBEef25BC2812F5aF79471A3624216c687Bc91", 138 3 * 60 * 60, 139 [1676005200, 1676091600, 1676178000, 1676264400, 1676350800, 1676437200, 1676523600, 1676610000, 1676696400, 1676782800, 1676869200, 1676955600, 1677042000, 1677128400, 1677214800, 1677301200, 1677387600, 1677474000, 1677560400, 1677646800, 1677733200, 1677819600, 1677906000, 1677992400, 1678078800, 1678165200, 1678251600, 1678338000, 1678424400, 1678510800, 1678597200, 1678680000, 1678766400, 1678852800, 1678939200, 1679025600, 1679112000, 1679198400, 1679284800, 1679371200, 1679457600, 1679544000, 1679630400, 1679716800, 1679803200, 1679889600, 1679976000, 1680062400, 1680148800, 1680235200, 1680321600, 1680408000, 1680494400, 1680580800, 1680667200, 1680753600, 1680840000, 1680926400, 1681012800, 1681099200, 1681185600, 1681272000, 1681358400, 1681444800, 1681531200, 1681617600, 1681704000, 1681790400, 1681876800, 1681963200, 1682049600, 1682136000, 1682222400, 1682308800, 1682395200, 1682481600, 1682568000, 1682654400, 1682740800, 1682827200, 1682913600, 1683000000, 1683086400, 1683172800, 1683259200, 1683345600, 1683432000, 1683518400, 1683604800, 1683691200, 1683777600, 1683864000, 1683950400, 1684036800, 1684123200, 1684209600, 1684296000, 1684382400, 1684468800, 1684555200], 140 ['1546596558000000000000', '1514941895000000000000', '1539776001000000000000', '1514916992000000000000', '1506992065000000000000', '1556765137000000000000', '1673867432000000000000', '1640280151000000000000', '1694741821000000000000', '1691680176000000000000', '1682337036000000000000', '1702797852000000000000', '1658140991000000000000', '1643298584000000000000', '1650895142000000000000', '1608658325000000000000', '1594761108000000000000', '1640763672000000000000', '1634502441000000000000', '1606040405000000000000', '1663549072000000000000', '1647557739000000000000', '1569278076000000000000', '1567179321000000000000', '1564383179000000000000', '1567424683000000000000', '1561977905000000000000', '1534031616000000000000', '1438760132000000000000', '1429100830000000000000', '1482431885000000000000', '1590831177000000000000', '1680295288000000000000', '1705189941000000000000', '1656332031000000000000', '1677296753000000000000', '1793592407000000000000', '1762963257000000000000', '1785416260000000000000', '1735617920000000000000', '1804957031000000000000', '1737140869000000000000', '1815819824000000000000', '1751469482000000000000', '1743842163000000000000', '1775481323000000000000', '1715327393000000000000', '1772899902000000000000', '1793345947000000000000', '1793620117000000000000', '1821704346000000000000', '1821192139000000000000', '1794922485000000000000', '1810142090000000000000', '1870965088000000000000', '1909143555000000000000', '1872734131000000000000', '1864679077000000000000', '1849672241000000000000', '1859741211000000000000', '1911375854000000000000', '1891949707000000000000', '1917698364000000000000', '2013930664000000000000', '2101616455000000000000', '2092281006000000000000', '2120001221000000000000', '2075855225000000000000', '2103946289000000000000', '1936417969000000000000', '1943409912000000000000', '1849286499000000000000', '1874171509000000000000', '1862085327000000000000', '1842204346000000000000', '1866148926000000000000', '1866693237000000000000', '1909273071000000000000', '1892565063000000000000', '1908741333000000000000', '1868891113000000000000', '1831726563000000000000', '1870687134000000000000', '1905168945000000000000', '1877833130000000000000', '1995479126000000000000', '1899917603000000000000', '1872475098000000000000', '1849061035000000000000', '1848213501000000000000', '1842492065000000000000', '1795176636000000000000', '1808375000000000000000', '1796107910000000000000', '1800371216000000000000', '1816824219000000000000', '1824068359000000000000', '1822068237000000000000', '1800994385000000000000', '1812892578000000000000'] 141 142 ); 143 setTimeout(function(){},10000); 144 console.log("eth pyth feed is at: "+ feed.address); 145 /* 146 147 const matic = await deployer.deploy( 148 feed, 149 "MATIC/USD", 150 "0xc9D225dA1273f57390eA81D55256542f2B6A0789", 151 oracleAdminAddr, //privledgedPublisherKeeper, may be address(0) 152 "0x5709258bb7989FCD21a6daBDf1F06B10916D1876", 153 "0x2FFBEef25BC2812F5aF79471A3624216c687Bc91", 154 8 * 60 * 60, 155 [1669870800, 1669957200, 1670043600, 1670130000, 1670216400, 1670302800, 1670389200, 1670475600, 1670562000, 1670648400, 1670734800, 1670821200, 1670907600, 1670994000, 1671080400, 1671166800, 1671253200, 1671339600, 1671426000, 1671512400, 1671598800, 1671685200, 1671771600, 1671858000, 1671944400, 1672030800, 1672117200, 1672203600, 1672290000, 1672376400, 1672462800, 1672549200, 1672635600, 1672722000, 1672808400, 1672894800, 1672981200, 1673067600, 1673154000, 1673240400, 1673326800, 1673413200, 1673499600, 1673586000, 1673672400, 1673758800, 1673845200, 1673931600, 1674018000, 1674104400, 1674190800, 1674277200, 1674363600, 1674450000, 1674536400, 1674622800, 1674709200, 1674795600, 1674882000, 1674968400, 1675054800, 1675141200, 1675227600, 1675314000, 1675400400, 1675486800, 1675573200, 1675659600, 1675746000, 1675832400, 1675918800, 1676005200, 1676091600, 1676178000, 1676264400, 1676350800, 1676437200, 1676523600, 1676610000, 1676696400, 1676782800, 1676869200, 1676955600, 1677042000, 1677128400, 1677214800, 1677301200, 1677387600, 1677474000, 1677560400, 1677646800, 1677733200, 1677819600, 1677906000, 1677992400, 1678078800, 1678165200, 1678251600, 1678338000, 1678424400], 156 ['936412000000000000', '908393000000000000', '946679000000000000', '903108000000000000', '921931000000000000', '911264000000000000', '917447000000000000', '896301000000000000', '927815000000000000', '909546000000000000', '908283000000000000', '893295000000000000', '910558000000000000', '923530000000000000', '903340000000000000', '877970000000000000', '795793000000000000', '816133000000000000', '814040000000000000', '772899000000000000', '802620000000000000', '793081000000000000', '795727000000000000', '798763000000000000', '796003000000000000', '795128000000000000', '813539000000000000', '806041000000000000', '782811000000000000', '777357000000000000', '760605000000000000', '758502000000000000', '759988000000000000', '780927000000000000', '780045000000000000', '806335000000000000', '788463000000000000', '799225000000000000', '806674000000000000', '840282000000000000', '843992000000000000', '858439000000000000', '897725000000000000', '916239000000000000', '931004000000000000', '999737000000000000', '983476000000000000', '1019649000000000000', '995905000000000000', '940036000000000000', '952923000000000000', '1026220000000000000', '990097000000000000', '994108000000000000', '994829000000000000', '955952000000000000', '993079000000000000', '1123072000000000000', '1158248000000000000', '1144364000000000000', '1177862000000000000', '1087332000000000000', '1111085000000000000', '1194626000000000000', '1180328000000000000', '1244452000000000000', '1251095000000000000', '1204367000000000000', '1190357000000000000', '1269234000000000000', '1304250000000000000', '1228480000000000000', '1230424000000000000', '1251252000000000000', '1238334000000000000', '1186454000000000000', '1258687000000000000', '1329800000000000000', '1371665000000000000', '1525579000000000000', '1486768000000000000', '1479609000000000000', '1474428000000000000', '1385113000000000000', '1396782000000000000', '1354599000000000000', '1266012000000000000', '1248660000000000000', '1281284000000000000', '1235537000000000000', '1195249000000000000', '1248277000000000000', '1225004000000000000', '1167763000000000000', '1126699000000000000', '1137249000000000000', '1131719000000000000', '1149604000000000000', '1051937000000000000', '1015833000000000000'] 157 ); 158 setTimeout(function(){},10000); 159 console.log("matic pyth feed is at: "+ feed.address); 160 const avax = await deployer.deploy( 161 feed, 162 "AVAX/USD", 163 "0xf0cAe108823b80F37cfAA5E8aEc8190D66ED0d62", 164 oracleAdminAddr, //privledgedPublisherKeeper, may be address(0) 165 "0xED324Bf525b2D0cBba7664B89B8C3A44cf055665", 166 "0x2FFBEef25BC2812F5aF79471A3624216c687Bc91", 167 8 * 60 * 60, 168 [1669870800, 1669957200, 1670043600, 1670130000, 1670216400, 1670302800, 1670389200, 1670475600, 1670562000, 1670648400, 1670734800, 1670821200, 1670907600, 1670994000, 1671080400, 1671166800, 1671253200, 1671339600, 1671426000, 1671512400, 1671598800, 1671685200, 1671771600, 1671858000, 1671944400, 1672030800, 1672117200, 1672203600, 1672290000, 1672376400, 1672462800, 1672549200, 1672635600, 1672722000, 1672808400, 1672894800, 1672981200, 1673067600, 1673154000, 1673240400, 1673326800, 1673413200, 1673499600, 1673586000, 1673672400, 1673758800, 1673845200, 1673931600, 1674018000, 1674104400, 1674190800, 1674277200, 1674363600, 1674450000, 1674536400, 1674622800, 1674709200, 1674795600, 1674882000, 1674968400, 1675054800, 1675141200, 1675227600, 1675314000, 1675400400, 1675486800, 1675573200, 1675659600, 1675746000, 1675832400, 1675918800, 1676005200, 1676091600, 1676178000, 1676264400, 1676350800, 1676437200, 1676523600, 1676610000, 1676696400, 1676782800, 1676869200, 1676955600, 1677042000, 1677128400, 1677214800, 1677301200, 1677387600, 1677474000, 1677560400, 1677646800, 1677733200, 1677819600, 1677906000, 1677992400, 1678078800, 1678165200, 1678251600, 1678338000, 1678424400], 169 ['13156432000000000000', '12888829000000000000', '13587222000000000000', '13427192000000000000', '13924532000000000000', '13602818000000000000', '13665798000000000000', '13265929000000000000', '13406482000000000000', '13453391000000000000', '13480695000000000000', '12993829000000000000', '12992677000000000000', '13731134000000000000', '13725992000000000000', '13171334000000000000', '11845928000000000000', '11962940000000000000', '11925618000000000000', '11385845000000000000', '11965393000000000000', '11697935000000000000', '11843543000000000000', '11781606000000000000', '11680124000000000000', '11684330000000000000', '11720731000000000000', '11646214000000000000', '11203087000000000000', '10992426000000000000', '10870633000000000000', '10903734000000000000', '10866034000000000000', '11153684000000000000', '11383942000000000000', '12077433000000000000', '11742313000000000000', '11781933000000000000', '11741463000000000000', '12069568000000000000', '12207081000000000000', '12729663000000000000', '15849685000000000000', '15457517000000000000', '15961251000000000000', '16959484000000000000', '16796198000000000000', '16742638000000000000', '17129080000000000000', '15809412000000000000', '16193325000000000000', '17522947000000000000', '16891254000000000000', '17362207000000000000', '17995373000000000000', '17021235000000000000', '17797207000000000000', '18107416000000000000', '21251616000000000000', '20604452000000000000', '21076677000000000000', '19737555000000000000', '19842949000000000000', '20958088000000000000', '21173092000000000000', '21362614000000000000', '21025434000000000000', '20107220000000000000', '19580889000000000000', '20844481000000000000', '20085739000000000000', '17875814000000000000', '17802189000000000000', '18027767000000000000', '17770370000000000000', '17618523000000000000', '18145700000000000000', '19923826000000000000', '18610434000000000000', '19477030000000000000', '19572031000000000000', '19808090000000000000', '20815470000000000000', '20942158000000000000', '20316719000000000000', '19701887000000000000', '18373032000000000000', '17956930000000000000', '18442451000000000000', '17938501000000000000', '17082336000000000000', '17761551000000000000', '17447800000000000000', '16654119000000000000', '16122076000000000000', '16156301000000000000', '16524544000000000000', '16169670000000000000', '15135319000000000000', '14393946000000000000'] 170 ); 171 setTimeout(function(){},10000); 172 console.log("avax pyth feed is at: "+ feed.address); 173 174 */ 175 176 };