Contract Migration
Learn how to do contract migration with SecretJS.
Secret Network Client Setup
import { SecretNetworkClient, Wallet } from "secretjs";
const wallet = new Wallet("Your mnemonic words go here");
const secretjs = new SecretNetworkClient({
chainId: "pulsar-3",
url: "https://api.pulsar3.scrttestnet.com",
wallet: wallet,
walletAddress: wallet.address,
});
SecretJS Contract Migration
secretjs.tx.compute.migrateContract()
Migrate a contract's code while keeping the same address. Invokes the migrate()
function on the new code.
Input: MsgMigrateContractParams
const tx = await secretjs.tx.compute.migrateContract(
{
sender: myAddress,
contract_address: contractAddress,
code_id: newCodeId,
code_hash: codeHash, // optional but way faster
msg: {
migrate_state_to_new_format: {},
},
sent_funds: [], // optional
},
{
gasLimit: 100_000,
},
);
See here for further docs on contract migration.