1
- ROOT_TEMP =./temp
2
- mkdir -p ${ROOT_TEMP }
1
+ ARTIFACTS_DIR_TEMP =./temp
2
+ mkdir -p ${ARTIFACTS_DIR_TEMP }
3
3
4
4
# Step 1: Bootstrap the devnet artifacts
5
5
# Adapted from https://github.com/IntersectMBO/cardano-node/blob/master/scripts/babbage/mkfiles.sh
@@ -29,7 +29,7 @@ START_GENESIS_DELAY=1
29
29
30
30
START_TIME=" $( ${DATE} -d " now + ${START_GENESIS_DELAY} seconds" +%s) "
31
31
32
- cat > " ${ROOT_TEMP } /byron.genesis.spec.json" << EOF
32
+ cat > " ${ARTIFACTS_DIR_TEMP } /byron.genesis.spec.json" << EOF
33
33
{
34
34
"heavyDelThd": "300000000000",
35
35
"maxBlockSize": "2000000",
@@ -65,17 +65,17 @@ $CARDANO_CLI byron genesis genesis \
65
65
--delegate-share 1 \
66
66
--avvm-entry-count 0 \
67
67
--avvm-entry-balance 0 \
68
- --protocol-parameters-file " ${ROOT_TEMP } /byron.genesis.spec.json" \
69
- --genesis-output-dir " ${ROOT_TEMP } /byron-gen-command"
68
+ --protocol-parameters-file " ${ARTIFACTS_DIR_TEMP } /byron.genesis.spec.json" \
69
+ --genesis-output-dir " ${ARTIFACTS_DIR_TEMP } /byron-gen-command"
70
70
71
- cp $SCRIPT_DIRECTORY /configuration/babbage/alonzo-babbage-test-genesis.json " ${ROOT_TEMP } /genesis.alonzo.spec.json"
72
- cp $SCRIPT_DIRECTORY /configuration/babbage/conway-babbage-test-genesis.json " ${ROOT_TEMP } /genesis.conway.spec.json"
71
+ cp $SCRIPT_DIRECTORY /configuration/babbage/alonzo-babbage-test-genesis.json " ${ARTIFACTS_DIR_TEMP } /genesis.alonzo.spec.json"
72
+ cp $SCRIPT_DIRECTORY /configuration/babbage/conway-babbage-test-genesis.json " ${ARTIFACTS_DIR_TEMP } /genesis.conway.spec.json"
73
73
74
74
# Fix 8.1.2, to avoid the following error: 'Command failed: genesis create-staked Error: Error while decoding Shelley genesis at: example/genesis.conway.spec.json Error: Error in $: key "genDelegs" not found'
75
- mv ${ROOT_TEMP } /genesis.conway.spec.json ${ROOT_TEMP } /genesis.conway.spec.json.tmp && cat ${ROOT_TEMP } /genesis.conway.spec.json.tmp | jq ' . += {"genDelegs":{}}' > ${ROOT_TEMP } /genesis.conway.spec.json && rm ${ROOT_TEMP } /genesis.conway.spec.json.tmp
75
+ mv ${ARTIFACTS_DIR_TEMP } /genesis.conway.spec.json ${ARTIFACTS_DIR_TEMP } /genesis.conway.spec.json.tmp && cat ${ARTIFACTS_DIR_TEMP } /genesis.conway.spec.json.tmp | jq ' . += {"genDelegs":{}}' > ${ARTIFACTS_DIR_TEMP } /genesis.conway.spec.json && rm ${ARTIFACTS_DIR_TEMP } /genesis.conway.spec.json.tmp
76
76
77
- cp $SCRIPT_DIRECTORY /configuration/byron/configuration.yaml " ${ROOT_TEMP } /"
78
- $SED -i " ${ROOT_TEMP } /configuration.yaml" \
77
+ cp $SCRIPT_DIRECTORY /configuration/byron/configuration.yaml " ${ARTIFACTS_DIR_TEMP } /"
78
+ $SED -i " ${ARTIFACTS_DIR_TEMP } /configuration.yaml" \
79
79
-e ' s/Protocol: RealPBFT/Protocol: Cardano/' \
80
80
-e ' /Protocol/ aPBftSignatureThreshold: 0.6' \
81
81
-e ' s/minSeverity: Info/minSeverity: Info/' \
@@ -94,15 +94,15 @@ $SED -i "${ROOT_TEMP}/configuration.yaml" \
94
94
-e ' s/LastKnownBlockVersion-Major: 0/LastKnownBlockVersion-Major: 6/' \
95
95
-e ' s/LastKnownBlockVersion-Minor: 2/LastKnownBlockVersion-Minor: 0/'
96
96
97
- echo " TestShelleyHardForkAtEpoch: 0" >> " ${ROOT_TEMP } /configuration.yaml"
98
- echo " TestAllegraHardForkAtEpoch: 0" >> " ${ROOT_TEMP } /configuration.yaml"
99
- echo " TestMaryHardForkAtEpoch: 0" >> " ${ROOT_TEMP } /configuration.yaml"
100
- echo " TestAlonzoHardForkAtEpoch: 0" >> " ${ROOT_TEMP } /configuration.yaml"
101
- echo " TestBabbageHardForkAtEpoch: 0" >> " ${ROOT_TEMP } /configuration.yaml"
102
- echo " TestConwayHardForkAtEpoch: 0" >> " ${ROOT_TEMP } /configuration.yaml"
103
- echo " ExperimentalProtocolsEnabled: True" >> " ${ROOT_TEMP } /configuration.yaml"
97
+ echo " TestShelleyHardForkAtEpoch: 0" >> " ${ARTIFACTS_DIR_TEMP } /configuration.yaml"
98
+ echo " TestAllegraHardForkAtEpoch: 0" >> " ${ARTIFACTS_DIR_TEMP } /configuration.yaml"
99
+ echo " TestMaryHardForkAtEpoch: 0" >> " ${ARTIFACTS_DIR_TEMP } /configuration.yaml"
100
+ echo " TestAlonzoHardForkAtEpoch: 0" >> " ${ARTIFACTS_DIR_TEMP } /configuration.yaml"
101
+ echo " TestBabbageHardForkAtEpoch: 0" >> " ${ARTIFACTS_DIR_TEMP } /configuration.yaml"
102
+ echo " TestConwayHardForkAtEpoch: 0" >> " ${ARTIFACTS_DIR_TEMP } /configuration.yaml"
103
+ echo " ExperimentalProtocolsEnabled: True" >> " ${ARTIFACTS_DIR_TEMP } /configuration.yaml"
104
104
105
- $CARDANO_CLI genesis create-staked --genesis-dir " ${ROOT_TEMP } " \
105
+ $CARDANO_CLI genesis create-staked --genesis-dir " ${ARTIFACTS_DIR_TEMP } " \
106
106
--testnet-magic " ${NETWORK_MAGIC} " \
107
107
--gen-pools ${NUM_SPO_NODES} \
108
108
--supply ${TOTAL_SUPPLY} \
@@ -111,42 +111,42 @@ $CARDANO_CLI genesis create-staked --genesis-dir "${ROOT_TEMP}" \
111
111
--gen-utxo-keys ${NUM_SPO_NODES}
112
112
113
113
# # Customize the Shelley genesis file
114
- cat ${ROOT_TEMP } /genesis.json | jq --argjson slot_length ${SLOT_LENGTH} --argjson epoch_length ${EPOCH_LENGTH} --argjson security_param ${SECURITY_PARAM} ' . + {slotLength: $slot_length, activeSlotsCoeff: 0.50, securityParam: $security_param, epochLength: $epoch_length, maxLovelaceSupply: 10000000000000, updateQuorum: 2}' > ${ROOT_TEMP } /genesis.json.tmp
115
- cat ${ROOT_TEMP } /genesis.json.tmp | jq --raw-output ' .protocolParams.protocolVersion.major = 7 | .protocolParams.minFeeA = 44 | .protocolParams.minFeeB = 155381 | .protocolParams.minUTxOValue = 1000000 | .protocolParams.decentralisationParam = 0.7 | .protocolParams.rho = 0.1 | .protocolParams.tau = 0.1' > ${ROOT_TEMP } /genesis.json
116
- rm ${ROOT_TEMP } /genesis.json.tmp
114
+ cat ${ARTIFACTS_DIR_TEMP } /genesis.json | jq --argjson slot_length ${SLOT_LENGTH} --argjson epoch_length ${EPOCH_LENGTH} --argjson security_param ${SECURITY_PARAM} ' . + {slotLength: $slot_length, activeSlotsCoeff: 0.50, securityParam: $security_param, epochLength: $epoch_length, maxLovelaceSupply: 10000000000000, updateQuorum: 2}' > ${ARTIFACTS_DIR_TEMP } /genesis.json.tmp
115
+ cat ${ARTIFACTS_DIR_TEMP } /genesis.json.tmp | jq --raw-output ' .protocolParams.protocolVersion.major = 7 | .protocolParams.minFeeA = 44 | .protocolParams.minFeeB = 155381 | .protocolParams.minUTxOValue = 1000000 | .protocolParams.decentralisationParam = 0.7 | .protocolParams.rho = 0.1 | .protocolParams.tau = 0.1' > ${ARTIFACTS_DIR_TEMP } /genesis.json
116
+ rm ${ARTIFACTS_DIR_TEMP } /genesis.json.tmp
117
117
118
118
# Step 2: Dispatch artifacts in the correct directories
119
119
120
120
# # Copy the configuration files
121
121
for NODE in ${ALL_NODES} ; do
122
- cp ${ROOT_TEMP } /configuration.yaml ${NODE} /
122
+ cp ${ARTIFACTS_DIR_TEMP } /configuration.yaml ${NODE} /
123
123
done
124
124
125
125
# # Copy the Byron genesis files
126
126
for NODE in ${ALL_NODES} ; do
127
- cp ${ROOT_TEMP } /byron-gen-command/genesis.json ${NODE} /byron/
128
- cp ${ROOT_TEMP } /genesis.spec.json ${NODE} /byron/
127
+ cp ${ARTIFACTS_DIR_TEMP } /byron-gen-command/genesis.json ${NODE} /byron/
128
+ cp ${ARTIFACTS_DIR_TEMP } /genesis.spec.json ${NODE} /byron/
129
129
done
130
130
131
131
# # Copy the Byron delegation artifacts
132
132
for N in ${POOL_NODES_N} ; do
133
- cp ${ROOT_TEMP } /byron-gen-command/delegate-keys.00$(( ${N} - 1 )) .key node-pool${N} /byron/delegate.key
134
- cp ${ROOT_TEMP } /byron-gen-command/delegation-cert.00$(( ${N} - 1 )) .json node-pool${N} /byron/delegate.cert
133
+ cp ${ARTIFACTS_DIR_TEMP } /byron-gen-command/delegate-keys.00$(( ${N} - 1 )) .key node-pool${N} /byron/delegate.key
134
+ cp ${ARTIFACTS_DIR_TEMP } /byron-gen-command/delegation-cert.00$(( ${N} - 1 )) .json node-pool${N} /byron/delegate.cert
135
135
done
136
136
137
137
# # Copy the Shelley genesis files
138
138
for NODE in ${ALL_NODES} ; do
139
- cp ${ROOT_TEMP } /genesis* .json ${NODE} /shelley/
139
+ cp ${ARTIFACTS_DIR_TEMP } /genesis* .json ${NODE} /shelley/
140
140
done
141
141
142
142
# # Copy the SPO artifacts
143
143
for N in ${POOL_NODES_N} ; do
144
- cp ${ROOT_TEMP } /pools/vrf${N} .skey node-pool${N} /shelley/vrf.skey
145
- cp ${ROOT_TEMP } /pools/vrf${N} .vkey node-pool${N} /shelley/vrf.vkey
146
- cp ${ROOT_TEMP } /pools/cold${N} .skey node-pool${N} /shelley/cold.skey
147
- cp ${ROOT_TEMP } /pools/cold${N} .vkey node-pool${N} /shelley/cold.vkey
148
- cp ${ROOT_TEMP } /pools/kes${N} .skey node-pool${N} /shelley/kes.skey
149
- cp ${ROOT_TEMP } /pools/kes${N} .vkey node-pool${N} /shelley/kes.vkey
150
- cp ${ROOT_TEMP } /pools/opcert${N} .counter node-pool${N} /shelley/opcert.counter
151
- cp ${ROOT_TEMP } /pools/opcert${N} .cert node-pool${N} /shelley/opcert.cert
144
+ cp ${ARTIFACTS_DIR_TEMP } /pools/vrf${N} .skey node-pool${N} /shelley/vrf.skey
145
+ cp ${ARTIFACTS_DIR_TEMP } /pools/vrf${N} .vkey node-pool${N} /shelley/vrf.vkey
146
+ cp ${ARTIFACTS_DIR_TEMP } /pools/cold${N} .skey node-pool${N} /shelley/cold.skey
147
+ cp ${ARTIFACTS_DIR_TEMP } /pools/cold${N} .vkey node-pool${N} /shelley/cold.vkey
148
+ cp ${ARTIFACTS_DIR_TEMP } /pools/kes${N} .skey node-pool${N} /shelley/kes.skey
149
+ cp ${ARTIFACTS_DIR_TEMP } /pools/kes${N} .vkey node-pool${N} /shelley/kes.vkey
150
+ cp ${ARTIFACTS_DIR_TEMP } /pools/opcert${N} .counter node-pool${N} /shelley/opcert.counter
151
+ cp ${ARTIFACTS_DIR_TEMP } /pools/opcert${N} .cert node-pool${N} /shelley/opcert.cert
152
152
done
0 commit comments