2022-02-17 11:18:10 +08:00
|
|
|
const fs = require("fs");
|
|
|
|
|
const { deploySwitch } = require('../truffle-config.js')
|
|
|
|
|
const file = fs.createWriteStream("../deploy-detail-erc20V3.txt", { 'flags': 'a' });
|
|
|
|
|
let logger = new console.Console(file, file);
|
|
|
|
|
const { GetConfig } = require("../configAdapter.js")
|
|
|
|
|
|
|
|
|
|
const ERC20V3Factory = artifacts.require("ERC20V3Factory");
|
|
|
|
|
const CustomERC20 = artifacts.require("CustomERC20");
|
|
|
|
|
const CustomMintableERC20 = artifacts.require("CustomMintableERC20");
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
module.exports = async (deployer, network, accounts) => {
|
|
|
|
|
let CONFIG = GetConfig(network, accounts)
|
|
|
|
|
let CloneFactoryAddress = CONFIG.CloneFactory;
|
|
|
|
|
let ERC20Address = CONFIG.ERC20;
|
|
|
|
|
if (CONFIG == null || ERC20Address == "") return;
|
|
|
|
|
|
|
|
|
|
let ERC20V3FactoryAddress = CONFIG.ERC20V3Factory;
|
|
|
|
|
let CustomERC20Address = CONFIG.CustomERC20;
|
|
|
|
|
let CustomMintableERC20Address = CONFIG.CustomMintableERC20;
|
|
|
|
|
|
|
|
|
|
let multiSigAddress = CONFIG.multiSigAddress;
|
|
|
|
|
|
|
|
|
|
if (deploySwitch.ERC20V3Factory) {
|
|
|
|
|
logger.log("====================================================");
|
|
|
|
|
logger.log("network type: " + network);
|
|
|
|
|
logger.log("Deploy time: " + new Date().toLocaleString());
|
|
|
|
|
logger.log("Deploy type: ERC20V3Factory");
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
if (CustomERC20Address == "") {
|
|
|
|
|
await deployer.deploy(CustomERC20);
|
|
|
|
|
CustomERC20Address = CustomERC20.address;
|
|
|
|
|
logger.log("CustomERC20Address: ", CustomERC20Address);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
if (CustomMintableERC20Address == "") {
|
|
|
|
|
await deployer.deploy(CustomMintableERC20);
|
|
|
|
|
CustomMintableERC20Address = CustomMintableERC20.address;
|
|
|
|
|
logger.log("CustomMintableERC20Address: ", CustomMintableERC20Address);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
if (ERC20V3FactoryAddress == "") {
|
|
|
|
|
await deployer.deploy(
|
|
|
|
|
ERC20V3Factory,
|
|
|
|
|
CloneFactoryAddress,
|
|
|
|
|
ERC20Address,
|
|
|
|
|
CustomERC20Address,
|
|
|
|
|
CustomMintableERC20Address,
|
2022-02-21 16:31:27 +08:00
|
|
|
"2000000000000000" //0.002
|
2022-02-17 11:18:10 +08:00
|
|
|
);
|
|
|
|
|
ERC20V3FactoryAddress = ERC20V3Factory.address;
|
|
|
|
|
logger.log("ERC20V3FactoryAddress: ", ERC20V3FactoryAddress);
|
|
|
|
|
|
|
|
|
|
const erc20V3FactoryInstance = await ERC20V3Factory.at(ERC20V3FactoryAddress);
|
|
|
|
|
var tx = await erc20V3FactoryInstance.initOwner(multiSigAddress);
|
|
|
|
|
logger.log("Init ERC20V3Factory Tx:", tx.tx);
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
};
|