1+ const KyberReserveHighRate = artifacts . require ( "KyberReserveHighRate.sol" ) ;
2+ const ConversionRateEnhancedSteps = artifacts . require ( "ConversionRateEnhancedSteps.sol" ) ;
3+ const WrapConversionRateEnhancedSteps = artifacts . require ( "WrapConversionRateEnhancedSteps.sol" ) ;
4+
5+ const BN = web3 . utils . BN ;
6+
7+ let reserve ;
8+ let reserveAddr = "" ;
9+ let conversionRate ;
10+ let conversionRateAddr = "" ;
11+ let wrapper ;
12+ let wrapperAddr = "" ;
13+
14+ let networkAddr = "0x920b322d4b8bab34fb6233646f5c87f87e79952b" ;
15+ let admin = "0xf3D872b9E8d314820dc8E99DAfBe1A3FeEDc27D5" ;
16+ let deployer ;
17+
18+ async function main ( ) {
19+ const accounts = await web3 . eth . getAccounts ( ) ;
20+ deployer = accounts [ 0 ] ;
21+ console . log ( `deployer address at ${ deployer } ` ) ;
22+
23+ gasPrice = new BN ( 75 ) . mul ( new BN ( 10 ) . pow ( new BN ( 9 ) ) )
24+
25+ if ( conversionRateAddr == undefined ) {
26+ conversionRate = await ConversionRateEnhancedSteps . new ( deployer , { gasPrice : gasPrice } ) ;
27+ console . log ( `deploy conversionRate at ${ conversionRate . address } ` ) ;
28+ } else {
29+ conversionRate = await ConversionRateEnhancedSteps . at ( conversionRateAddr ) ;
30+ }
31+
32+ if ( reserveAddr == undefined ) {
33+ reserve = await KyberReserveHighRate . new (
34+ networkAddr ,
35+ conversionRate . address ,
36+ deployer ,
37+ { gasPrice : gasPrice }
38+ ) ;
39+ console . log ( `deploy reserve at ${ reserve . address } ` ) ;
40+ reserveAddr = reserve . address ;
41+ } else {
42+ reserve = await KyberReserveHighRate . at ( reserveAddr ) ;
43+ }
44+
45+ if ( wrapperAddr == undefined ) {
46+ wrapper = await WrapConversionRateEnhancedSteps . new ( conversionRate . address , { gasPrice :gasPrice } ) ;
47+ console . log ( `deploy wrapper at ${ wrapper . address } ` ) ;
48+ wrapperAddr = wrapper . address ;
49+ } else {
50+ wrapper = await WrapConversionRateEnhancedSteps . at ( wrapperAddr ) ;
51+ }
52+
53+ if ( await conversionRate . admin ( ) != wrapperAddr ) {
54+ console . log ( `set conversionRate admin to wrapper contract` ) ;
55+ await conversionRate . transferAdmin ( wrapperAddr , { gasPrice : gasPrice } ) ;
56+ await wrapper . claimWrappedContractAdmin ( { gasPrice : gasPrice } ) ;
57+ }
58+
59+ if ( await reserve . admin ( ) != admin ) {
60+ console . log ( `set new admin to reserve ${ admin } ` ) ;
61+ await reserve . transferAdminQuickly ( admin , { gasPrice : gasPrice } ) ;
62+ }
63+
64+ if ( await wrapper . admin ( ) != admin ) {
65+ console . log ( `set new admin to wrapper ${ admin } ` ) ;
66+ await wrapper . transferAdminQuickly ( admin , { gasPrice : gasPrice } ) ;
67+ }
68+ }
69+
70+
71+ main ( )
72+ . then ( ( ) => process . exit ( 0 ) )
73+ . catch ( error => {
74+ console . error ( error ) ;
75+ process . exit ( 1 ) ;
76+ } ) ;
0 commit comments