forked from mico/idle_moloch
62 lines
1.8 KiB
TypeScript
62 lines
1.8 KiB
TypeScript
import { HardhatRuntimeEnvironment } from 'hardhat/types';
|
|
import { DeployFunction } from 'hardhat-deploy/types';
|
|
|
|
const deployFn: DeployFunction = async (hre: HardhatRuntimeEnvironment) => {
|
|
|
|
const { deployments, getNamedAccounts, network } = hre;
|
|
|
|
const { deployer } = await getNamedAccounts();
|
|
|
|
if (network.name === 'hardhat') {
|
|
console.log('Deploying Safe infra locally...');
|
|
|
|
const { deploy } = deployments;
|
|
|
|
const multisendDeployed = await deploy('MultiSend', {
|
|
contract: 'MultiSend',
|
|
from: deployer,
|
|
args: [],
|
|
log: false,
|
|
});
|
|
|
|
const safeDeployed = await deploy('GnosisSafe', {
|
|
contract: 'GnosisSafe',
|
|
from: deployer,
|
|
args: [],
|
|
log: false,
|
|
});
|
|
|
|
const cfhDeployed = await deploy('CompatibilityFallbackHandler', {
|
|
contract: 'CompatibilityFallbackHandler',
|
|
from: deployer,
|
|
args: [],
|
|
log: false,
|
|
});
|
|
|
|
const safepfDeployed = await deploy('GnosisSafeProxyFactory', {
|
|
contract: 'GnosisSafeProxyFactory',
|
|
from: deployer,
|
|
args: [],
|
|
log: false,
|
|
});
|
|
|
|
const safemfDeployed = await deploy('ModuleProxyFactory', {
|
|
contract: 'ModuleProxyFactory',
|
|
from: deployer,
|
|
args: [],
|
|
log: false,
|
|
});
|
|
|
|
console.log('Deployed Safe Infra:\n');
|
|
console.log('Multisend ->', multisendDeployed.address);
|
|
console.log('CompatibilityFallbackHandler ->', cfhDeployed.address);
|
|
console.log('ModuleProxyFactory ->', safemfDeployed.address);
|
|
console.log('Safe Singleton ->', safeDeployed.address);
|
|
console.log('GnosisSafeProxyFactor ->y', safepfDeployed.address);
|
|
}
|
|
|
|
};
|
|
|
|
export default deployFn;
|
|
deployFn.tags = ['Infra', 'Safe'];
|