35 lines
1.0 KiB
JavaScript
35 lines
1.0 KiB
JavaScript
const hre = require("hardhat");
|
|
|
|
function requiredEnv(name) {
|
|
const value = process.env[name];
|
|
if (!value || !value.trim()) {
|
|
throw new Error(`Missing required env: ${name}`);
|
|
}
|
|
return value.trim();
|
|
}
|
|
|
|
async function main() {
|
|
const treasury = requiredEnv("TREASURY_WALLET");
|
|
const mintCurrency = (process.env.MINT_CURRENCY_ADDRESS || hre.ethers.constants.AddressZero).trim();
|
|
const mintAmountAtomic = requiredEnv("MINT_AMOUNT_ATOMIC");
|
|
|
|
const [deployer] = await hre.ethers.getSigners();
|
|
console.log("deployer:", deployer.address);
|
|
console.log("network:", hre.network.name);
|
|
console.log("treasury:", treasury);
|
|
console.log("mint_currency:", mintCurrency);
|
|
console.log("mint_amount_atomic:", mintAmountAtomic);
|
|
|
|
const factory = await hre.ethers.getContractFactory("EdutHumanMembership");
|
|
const contract = await factory.deploy(treasury, mintCurrency, mintAmountAtomic);
|
|
await contract.deployed();
|
|
|
|
console.log("membership_contract:", contract.address);
|
|
}
|
|
|
|
main().catch((err) => {
|
|
console.error(err);
|
|
process.exitCode = 1;
|
|
});
|
|
|