From a2db1a32753dd19f4abe1629148b653ba85f5d7c Mon Sep 17 00:00:00 2001 From: Lawrence Forman Date: Thu, 2 Jul 2020 15:53:50 -0400 Subject: [PATCH] `@0x/migrations`: Add `affiliateFeeTransformer` and `exchangeProxyFlashWallet` to ganache snapshot migration. --- packages/migrations/CHANGELOG.json | 4 ++++ packages/migrations/src/migration.ts | 21 +++++++++++++++++++-- 2 files changed, 23 insertions(+), 2 deletions(-) diff --git a/packages/migrations/CHANGELOG.json b/packages/migrations/CHANGELOG.json index 09022f57c1..c9ff5d7b42 100644 --- a/packages/migrations/CHANGELOG.json +++ b/packages/migrations/CHANGELOG.json @@ -5,6 +5,10 @@ { "note": "Add Exchange Proxy migration.", "pr": 2612 + }, + { + "note": "Add affiliate fee transformer migration and flash wallet address", + "pr": 2622 } ] }, diff --git a/packages/migrations/src/migration.ts b/packages/migrations/src/migration.ts index a7c44badc6..c8bddc7f11 100644 --- a/packages/migrations/src/migration.ts +++ b/packages/migrations/src/migration.ts @@ -30,10 +30,12 @@ import { ZrxVaultContract, } from '@0x/contracts-staking'; import { + AffiliateFeeTransformerContract, artifacts as exchangeProxyArtifacts, FillQuoteTransformerContract, fullMigrateAsync as fullMigrateExchangeProxyAsync, ITokenSpenderContract, + ITransformERC20Contract, PayTakerTransformerContract, WethTransformerContract, } from '@0x/contracts-zero-ex'; @@ -304,9 +306,16 @@ export async function runMigrationsAsync( // Exchange Proxy ////////////////////////////////////////////////////////// const exchangeProxy = await fullMigrateExchangeProxyAsync(txDefaults.from, provider, txDefaults); - const allowanceTargetAddress = await new ITokenSpenderContract(exchangeProxy.address, provider, txDefaults) + const exchangeProxyAllowanceTargetAddress = await new ITokenSpenderContract( + exchangeProxy.address, + provider, + txDefaults, + ) .getAllowanceTarget() .callAsync(); + const exchangeProxyFlashWalletAddress = await new ITransformERC20Contract(exchangeProxy.address, provider) + .getTransformWallet() + .callAsync(); // Deploy transformers. const fillQuoteTransformer = await FillQuoteTransformerContract.deployFrom0xArtifactAsync( @@ -329,6 +338,12 @@ export async function runMigrationsAsync( allArtifacts, etherToken.address, ); + const affiliateFeeTransformer = await AffiliateFeeTransformerContract.deployFrom0xArtifactAsync( + exchangeProxyArtifacts.AffiliateFeeTransformer, + provider, + txDefaults, + allArtifacts, + ); const contractAddresses = { erc20Proxy: erc20Proxy.address, @@ -366,12 +381,14 @@ export async function runMigrationsAsync( multiBridge: NULL_ADDRESS, exchangeProxyGovernor: NULL_ADDRESS, exchangeProxy: exchangeProxy.address, - exchangeProxyAllowanceTarget: allowanceTargetAddress, + exchangeProxyAllowanceTarget: exchangeProxyAllowanceTargetAddress, exchangeProxyTransformerDeployer: txDefaults.from, + exchangeProxyFlashWallet: exchangeProxyFlashWalletAddress, transformers: { wethTransformer: wethTransformer.address, payTakerTransformer: payTakerTransformer.address, fillQuoteTransformer: fillQuoteTransformer.address, + affiliateFeeTransformer: affiliateFeeTransformer.address, }, }; return contractAddresses;