-
Notifications
You must be signed in to change notification settings - Fork 39
/
index.ts
24 lines (19 loc) · 880 Bytes
/
index.ts
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
import { Task, TaskRunOptions } from '@src';
import { ChildChainLiquidityGaugeFactoryDeployment } from './input';
export type ExtraInputs = {
VotingEscrowDelegationProxy: string;
L2BalancerPseudoMinter: string;
};
export default async (task: Task, { force, from }: TaskRunOptions = {}): Promise<void> => {
const input = task.input() as ChildChainLiquidityGaugeFactoryDeployment;
const gaugeArgs = [
input.VotingEscrowDelegationProxy,
input.L2BalancerPseudoMinter,
input.AuthorizerAdaptor,
input.ProductVersion,
];
// ChildChainGauge is written in Vyper, so we only deploy.
const gaugeImplementation = await task.deploy('ChildChainGauge', gaugeArgs, from, force);
const factoryArgs = [gaugeImplementation.address, input.FactoryVersion, input.ProductVersion];
await task.deployAndVerify('ChildChainGaugeFactory', factoryArgs, from, force);
};