git.delta.rocks / unique-network / refs/commits / 35c1755b8dda

difftreelog

Merge pull request #1021 from UniqueNetwork/fix/propose-upgrade-script

Yaroslav Bolyukin2023-10-19parents: #01c5056 #340647b.patch.diff
in: master

1 file changed

modifiedtests/src/proposeupgrade.tsdiffbeforeafterboth
after · tests/src/proposeupgrade.ts
1import {ApiPromise, WsProvider} from '@polkadot/api';2import {blake2AsHex} from '@polkadot/util-crypto';3import {readFileSync} from 'fs';45async function main() {6  const networkUrl = process.argv[2];7  const wasmFile = process.argv[3];89  const wsProvider = new WsProvider(networkUrl);10  const api = await ApiPromise.create({provider: wsProvider});1112  const wasmFileBytes = readFileSync(wasmFile);13  const wasmFileHash = blake2AsHex(wasmFileBytes, 256);1415  const authorizeUpgrade = api.tx.parachainSystem.authorizeUpgrade(wasmFileHash, true);16  const enableMaintenance = api.tx.maintenance.enable();1718  const councilMembers = (await api.query.council.members()).toJSON() as any[];19  const councilProposalThreshold = Math.floor(councilMembers.length / 2) + 1;2021  const democracyProposal = api.tx.democracy.externalProposeDefault({22    Inline: api.tx.utility.batchAll([23      authorizeUpgrade.method.toHex(),24      enableMaintenance.method.toHex(),25    ]).method.toHex(),26  });2728  const councilProposal = api.tx.council.propose(29    councilProposalThreshold,30    democracyProposal,31    democracyProposal.method.encodedLength,32  );3334  const encodedCall = councilProposal.method.toHex();3536  console.log('-----------------');37  console.log('Upgrade Proposal: ', `https://polkadot.js.org/apps/?rpc=${networkUrl}#/extrinsics/decode/${encodedCall}`);38  console.log('-----------------');3940  await api.disconnect();41}4243await main();