1234567891011121314151617181920212223242526272829303132333435363738394041424344454647 |
- const {getLayerZeroAddress} = require("../utils/layerzero")
- const CONFIG = require("../constants/config.json")
- const {isTestnet, isLocalhost} = require("../utils/network")
- const {getEndpointIdByName} = require("@layerzerolabs/lz-sdk")
- function getDependencies() {
- if (hre.network.name === "hardhat") {
- return ["LZEndpointMock"]
- }
- }
- module.exports = async ({getNamedAccounts, deployments}) => {
- const {deploy} = deployments
- const {deployer} = await getNamedAccounts()
- let lzAddress
- if (hre.network.name === "hardhat") {
- lzAddress = (await deployments.get("LZEndpointMock")).address
- // console.log(` -> MirrorgateToken needs LayerZero: ${hre.network.name} LZEndpointMock: ${lzAddress}`)
- } else {
- console.log(hre.network.name)
- lzAddress = getLayerZeroAddress(hre.network.name)
- console.log(` -> MirrorgateToken needs LayerZero: ${hre.network.name} LayerZeroEndpoint: ${lzAddress}`)
- }
- let mainEndpointId = CONFIG.mirrorgateToken.mainEndpointId // ETH
- if (isTestnet() && !isLocalhost()) {
- // for testnet, mint a bunch of tokens on every chain
- mainEndpointId = getEndpointIdByName(hre.network.name)
- }
- let tokenName = CONFIG.mirrorgateToken.name
- let tokenSymbol = CONFIG.mirrorgateToken.symbol
- if (hre.network.name !== "hardhat") {
- console.log(`MirrorgateToken name: ${tokenName}, symbol:${tokenSymbol} | mainEndpointId: ${mainEndpointId} | isTestnet: ${isTestnet()}`)
- }
- await deploy("MirrorgateToken", {
- from: deployer,
- args: [tokenName, tokenSymbol, lzAddress, mainEndpointId, CONFIG.mirrorgateToken.initialSupplyMainEndpoint],
- log: true,
- skipIfAlreadyDeployed: true,
- waitConfirmations: 1,
- })
- }
- module.exports.tags = ["MirrorgateToken", "test"]
- module.exports.dependencies = getDependencies()
|