-
Notifications
You must be signed in to change notification settings - Fork 86
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
* fix onboarding parachain * add custom endpoint
- Loading branch information
1 parent
00f5e59
commit 94d1e1a
Showing
6 changed files
with
775 additions
and
6 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
|
@@ -32,4 +32,7 @@ Icon | |
.AppleDesktop | ||
Network Trash Folder | ||
Temporary Items | ||
.apdisk | ||
.apdisk | ||
|
||
# Node Modules | ||
**/node_modules |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,5 @@ | ||
# Onboard Parachain | ||
Simple Node JS script that onboards the parachain against a local target | ||
|
||
## Requirements | ||
- yarn 1.22.x |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,70 @@ | ||
const { ApiPromise, WsProvider, Keyring } = require('@polkadot/api'); | ||
const fs = require('fs') | ||
|
||
const run = async () => { | ||
try { | ||
console.log("Parsing Args ...") | ||
// 0 & 1 are command context | ||
const endpoint = process.argv[2]; | ||
const seed = process.argv[3]; | ||
const id = process.argv[4]; | ||
const header = process.argv[5]; | ||
const wasmFile = process.argv[6] | ||
|
||
const wsProvider = new WsProvider(endpoint); | ||
|
||
const api = await ApiPromise.create({ | ||
provider: wsProvider, | ||
}); | ||
|
||
const keyring = new Keyring({ type: "sr25519" }); | ||
const alice = keyring.addFromUri(seed); | ||
|
||
let wasm; | ||
try { | ||
wasm = fs.readFileSync(wasmFile, 'utf8') | ||
} catch (err) { | ||
console.error(err) | ||
throw err | ||
} | ||
|
||
let paraGenesisArgs = { | ||
genesis_head: header, | ||
validation_code: wasm, | ||
parachain: true, | ||
}; | ||
let genesis = api.createType("ParaGenesisArgs", paraGenesisArgs); | ||
|
||
const nonce = Number((await api.query.system.account(alice.address)).nonce); | ||
|
||
console.log( | ||
`--- Submitting extrinsic to register parachain ${id}. (nonce: ${nonce}) ---` | ||
); | ||
const unsub = await api.tx.sudo | ||
.sudo(api.tx.parasSudoWrapper.sudoScheduleParaInitialize(id, genesis)) | ||
.signAndSend(alice, { nonce: nonce, era: 0 }, (result) => { | ||
console.log(`Current status is ${result.status}`); | ||
if (result.status.isInBlock) { | ||
console.log( | ||
`Transaction included at blockHash ${result.status.asInBlock}` | ||
); | ||
console.log("Waiting for finalization..."); | ||
} else if (result.status.isFinalized) { | ||
console.log( | ||
`Transaction finalized at blockHash ${result.status.asFinalized}` | ||
); | ||
unsub(); | ||
process.exit() | ||
} else if (result.isError) { | ||
console.log(`Transaction Error`); | ||
process.exit() | ||
} | ||
}); | ||
|
||
} catch (error) { | ||
console.log('error:', error); | ||
} | ||
|
||
}; | ||
|
||
run(); |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,17 @@ | ||
{ | ||
"name": "onboard", | ||
"version": "1.0.0", | ||
"description": "", | ||
"main": "index.js", | ||
"scripts": { | ||
"execute": "node index.js" | ||
}, | ||
"keywords": [], | ||
"author": "", | ||
"license": "ISC", | ||
"dependencies": { | ||
"@polkadot/api": "^7.6.1", | ||
"@polkadot/util": "^7.6.1", | ||
"@polkadot/util-crypto": "^8.3.3" | ||
} | ||
} |
Oops, something went wrong.