movement-sdk
Version:
Movement SDK
25 lines (22 loc) • 1.03 kB
JavaScript
const Movement = require("../dist");
const path = require("path");
const fs = require("fs");
const HexString = Movement.HexString;
const { logger, checkTxResult, client, toClientAccount, payerAccount } = require("./comm");
const pkName = "demo";
const codeName = "evm";
async function start() {
logger.info(`movement: start depoly evm contract`);
const account = toClientAccount(payerAccount.privateKeyHex)
const packageMetadata = fs.readFileSync(path.resolve(`move/build/${pkName}/package-metadata.bcs`));
const moduleData = fs.readFileSync(path.resolve(`move/build/${pkName}/bytecode_modules/${codeName}.mv`));
let tx = await client.publishPackage(
account,
new HexString(packageMetadata.toString("hex")).toUint8Array(),
[new Movement.TxnBuilderTypes.Module(new HexString(moduleData.toString("hex")).toUint8Array())]
);
await client.waitForTransaction(tx);
logger.info(`movement: depoly conract tx is: `, tx);
await checkTxResult(tx);
}
start();