diff --git a/scripts/register_parachain.sh b/scripts/register_parachain.sh index 0af295d1f0..311efee98f 100755 --- a/scripts/register_parachain.sh +++ b/scripts/register_parachain.sh @@ -2,7 +2,7 @@ usage() { echo Usage: - echo "$0 " + echo "$0 " exit 1 } @@ -11,24 +11,26 @@ seed=$2 wasm=$3 genesis=$4 parachain_id=$5 -tokens=$6 -account=$7 +types=$6 # we can remove this once parachain types are included in polkadot-js-api [ -z "$url" ] && usage [ -z "$seed" ] && usage [ -z "$wasm" ] && usage +[ -z "$types" ] && usage [ -z "$genesis" ] && usage [ -z "$parachain_id" ] && usage -[ -z "$tokens" ] && usage -[ -z "$account" ] && usage if ! [ -r "$wasm" ]; then echo "Could not read: $wasm" exit 1 fi +if ! [ -r "$types" ]; then + echo "Could not read: $types" + exit 1 +fi if ! which polkadot-js-api &> /dev/null; then echo 'command `polkadot-js-api` not in PATH' - echo "npm install -g @polkadot/api-cli" + echo "npm install -g @polkadot/api-cli@beta" exit 1 fi @@ -36,21 +38,13 @@ set -e -x test -f "$seed" && seed="$(cat "$seed")" -polkadot-js-api \ - --ws "${url?}" \ - --sudo \ - --seed "${seed?}" \ - tx.registrar.registerPara \ - "${parachain_id?}" \ - '{"scheduling":"Always"}' \ - @"${wasm?}" \ - "${genesis?}" +wasm=$(cat $wasm) polkadot-js-api \ --ws "${url?}" \ --sudo \ --seed "${seed?}" \ - tx.balances.setBalance \ - "${account?}" \ - $((tokens * 10 ** 12)) \ - 0 + --types "${types?}" \ + tx.parasSudoWrapper.sudoScheduleParaInitialize \ + "${parachain_id?}" \ + "{ \"genesisHead\":\"${genesis?}\", \"validationCode\":\"${wasm?}\", \"parachain\": true }" \ diff --git a/scripts/temp_parachain_types.json b/scripts/temp_parachain_types.json new file mode 100644 index 0000000000..f550a67744 --- /dev/null +++ b/scripts/temp_parachain_types.json @@ -0,0 +1,64 @@ +{ + "HrmpChannelId": { + "sender": "u32", + "receiver": "u32" + }, + "SignedAvailabilityBitfield": { + "payload": "BitVec", + "validator_index": "u32", + "signature": "Signature" + }, + "SignedAvailabilityBitfields": "Vec", + "ValidatorSignature": "Signature", + "HeadData": "Vec", + "CandidateDescriptor": { + "para_id": "u32", + "relay_parent": "Hash", + "collator_id": "Hash", + "persisted_validation_data_hash": "Hash", + "pov_hash": "Hash", + "erasure_root": "Hash", + "signature": "Signature" + }, + "CandidateReceipt": { + "descriptor": "CandidateDescriptor", + "commitments_hash": "Hash" + }, + "UpwardMessage": "Vec", + "OutboundHrmpMessage": { + "recipient": "u32", + "data": "Vec" + }, + "ValidationCode": "Vec", + "CandidateCommitments": { + "upward_messages": "Vec", + "horizontal_messages": "Vec", + "new_validation_code": "Option", + "head_data": "HeadData", + "processed_downward_messages": "u32", + "hrmp_watermark": "BlockNumber" + }, + "CommittedCandidateReceipt": { + "descriptor": "CandidateDescriptor", + "commitments": "CandidateCommitments" + }, + "ValidityAttestation": { + "_enum": { + "DummyOffsetBy1": "Raw", + "Implicit": "ValidatorSignature", + "Explicit": "ValidatorSignature" + } + }, + "BackedCandidate": { + "candidate": "CommittedCandidateReceipt", + "validity_votes": "Vec", + "validator_indices": "BitVec" + }, + "CandidatePendingAvailablility": { + "core": "u32", + "descriptor": "CandidateDescriptor", + "availability_votes": "BitVec", + "relay_parent_number": "BlockNumber", + "backed_in_number": "BlockNumber" + } +}