|
5 | 5 | echo "*** Building node..." |
6 | 6 | cargo build |
7 | 7 |
|
8 | | -echo "*** Building chainspecs..." |
9 | | -./target/debug/node-subtensor build-spec --raw --chain finney >raw_spec_finney.json |
| 8 | +echo "*** Building new chainspecs..." |
| 9 | + |
| 10 | +finney_genesis_temp=$(mktemp) |
| 11 | +testfinney_genesis_temp=$(mktemp) |
| 12 | +raw_spec_finney_temp=$(mktemp) |
| 13 | +raw_spec_testfinney_temp=$(mktemp) |
| 14 | + |
| 15 | +# Save old genesis state before doing anything |
| 16 | +jq -r ".genesis" /tmp/raw_spec_finney.json.old >"$finney_genesis_temp" |
| 17 | +jq -r ".genesis" /tmp/raw_spec_testfinney.json.old >"$testfinney_genesis_temp" |
| 18 | + |
| 19 | +# Build new chainspecs |
| 20 | +./target/debug/node-subtensor build-spec --raw --chain finney >"$raw_spec_finney_temp" |
10 | 21 | ./target/debug/node-subtensor build-spec --chain finney >plain_spec_finney.json |
11 | 22 |
|
12 | | -./target/debug/node-subtensor build-spec --raw --chain test_finney >raw_spec_testfinney.json |
| 23 | +./target/debug/node-subtensor build-spec --raw --chain test_finney >"$raw_spec_testfinney_temp" |
13 | 24 | ./target/debug/node-subtensor build-spec --chain test_finney >plain_spec_testfinney.json |
14 | 25 |
|
| 26 | +echo "*** Updating genesis..." |
| 27 | + |
| 28 | +# The genesis is not allowed to change. Since the wasm genesis will change depending on the system |
| 29 | +# architecture used, we need to extract the genesis from the old chain specs and insert them into |
| 30 | +# the new chain specs to ensure there are no genesis mismatch issues. |
| 31 | + |
| 32 | +# Update genesis in new chainspecs using the extracted genesis data from the temporary files |
| 33 | +jq --slurpfile genesis "$finney_genesis_temp" '.genesis = $genesis[0]' "$raw_spec_finney_temp" >raw_spec_finney_temp_updated |
| 34 | +jq --slurpfile genesis "$testfinney_genesis_temp" '.genesis = $genesis[0]' "$raw_spec_testfinney_temp" >raw_spec_testfinney_temp_updated |
| 35 | + |
| 36 | +# Success! Actually replace the raw spec files. |
| 37 | +mv raw_spec_finney_temp_updated raw_spec_finney.json |
| 38 | +mv raw_spec_testfinney_temp_updated raw_spec_testfinney.json |
| 39 | + |
| 40 | +# Cleanup |
| 41 | +rm -f "$finney_genesis_temp" "$testfinney_genesis_temp" "$raw_spec_finney_temp" "$raw_spec_testfinney_temp" |
| 42 | + |
15 | 43 | echo "*** Done!" |
0 commit comments