Skip to content

Commit 39d3d10

Browse files
authored
Merge pull request #47 from input-output-hk/next-2025-05-27
Next 2025-05-27
2 parents 7c0477f + 5ac69a8 commit 39d3d10

34 files changed

+1254
-1201
lines changed

Justfile

Lines changed: 8 additions & 263 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,7 @@
1-
import? 'scripts/recipes-aws.just'
2-
import? 'scripts/recipes-custom.just'
3-
import? 'scripts/recipes-governance.just'
1+
import? 'scripts/recipes/aws.just'
2+
import? 'scripts/recipes/demo.just'
3+
import? 'scripts/recipes/custom.just'
4+
import? 'scripts/recipes/governance.just'
45

56
set shell := ["bash", "-uc"]
67
set positional-arguments
@@ -250,11 +251,11 @@ default:
250251

251252
# Deploy select machines
252253
apply *ARGS:
253-
colmena apply --verbose --experimental-flake-eval --on {{ARGS}}
254+
colmena apply --verbose --on {{ARGS}}
254255

255256
# Deploy all machines
256257
apply-all *ARGS:
257-
colmena apply --verbose --experimental-flake-eval {{ARGS}}
258+
colmena apply --verbose {{ARGS}}
258259

259260
# Deploy select machines with the bootstrap key
260261
apply-bootstrap *ARGS:
@@ -868,7 +869,7 @@ ssh-for-all *ARGS:
868869

869870
# Ssh for select
870871
ssh-for-each HOSTNAMES *ARGS:
871-
colmena exec --verbose --experimental-flake-eval --parallel 0 --on {{HOSTNAMES}} {{ARGS}}
872+
colmena exec --verbose --parallel 0 --on {{HOSTNAMES}} {{ARGS}}
872873

873874
# List machine ips based on regex pattern
874875
ssh-list-ips PATTERN:
@@ -894,262 +895,6 @@ ssh-list-names PATTERN:
894895
| get Host
895896
| str join " "
896897

897-
# Start a fork to conway demo
898-
start-demo:
899-
#!/usr/bin/env bash
900-
set -euo pipefail
901-
just stop-node demo
902-
903-
{{stateDir}}
904-
905-
echo "Cleaning state-demo..."
906-
if [ -d state-demo ]; then
907-
chmod -R +w state-demo
908-
rm -rf state-demo
909-
fi
910-
911-
echo "Generating state-demo config..."
912-
913-
export ENV=custom
914-
export GENESIS_DIR=state-demo
915-
export KEY_DIR=state-demo/envs/custom
916-
export DATA_DIR=state-demo/rundir
917-
918-
export CARDANO_NODE_SOCKET_PATH="$STATEDIR/node-demo.socket"
919-
export TESTNET_MAGIC=42
920-
921-
export NUM_GENESIS_KEYS=3
922-
export POOL_NAMES="sp-1 sp-2 sp-3"
923-
export STAKE_POOL_DIR=state-demo/groups/stake-pools
924-
925-
export BULK_CREDS=state-demo/bulk.creds.all.json
926-
export PAYMENT_KEY=state-demo/envs/custom/utxo-keys/rich-utxo
927-
928-
export UNSTABLE=true
929-
export UNSTABLE_LIB=true
930-
export USE_ENCRYPTION=true
931-
export USE_DECRYPTION=true
932-
export USE_NODE_CONFIG_BP=false
933-
export DEBUG=true
934-
935-
export SECURITY_PARAM=8
936-
export SLOT_LENGTH=100
937-
export START_TIME=$(date --utc +"%Y-%m-%dT%H:%M:%SZ" --date " now + 30 seconds")
938-
939-
if [ "${USE_CREATE_TESTNET_DATA:-false}" = true ]; then
940-
ERA_CMD="conway" \
941-
nix run .#job-gen-custom-node-config-data
942-
else
943-
ERA_CMD="alonzo" \
944-
nix run .#job-gen-custom-node-config
945-
fi
946-
947-
ERA_CMD="alonzo" \
948-
nix run .#job-create-stake-pool-keys
949-
950-
if [ "$USE_DECRYPTION" = true ]; then
951-
BFT_CREDS=$(just sops-decrypt-binary "$KEY_DIR"/delegate-keys/bulk.creds.bft.json)
952-
POOL_CREDS=$(just sops-decrypt-binary "$STAKE_POOL_DIR"/no-deploy/bulk.creds.pools.json)
953-
else
954-
BFT_CREDS=$(cat "$KEY_DIR"/delegate-keys/bulk.creds.bft.json)
955-
POOL_CREDS=$(cat "$STAKE_POOL_DIR"/no-deploy/bulk.creds.pools.json)
956-
fi
957-
(
958-
jq -r '.[]' <<< "$BFT_CREDS"
959-
jq -r '.[]' <<< "$POOL_CREDS"
960-
) | jq -s > "$BULK_CREDS"
961-
962-
echo "Start cardano-node in the background. Run \"just stop-node demo\" to stop"
963-
NODE_CONFIG="$DATA_DIR/node-config.json" \
964-
NODE_TOPOLOGY="$DATA_DIR/topology.json" \
965-
SOCKET_PATH="$STATEDIR/node-demo.socket" \
966-
nohup setsid nix run .#run-cardano-node &> "$STATEDIR/node-demo.log" & echo $! > "$STATEDIR/node-demo.pid" &
967-
just set-default-cardano-env demo "" "$PPID"
968-
echo "Sleeping 30 seconds until $(date -d @$(($(date +%s) + 30)))"
969-
sleep 30
970-
echo
971-
972-
if [ "${USE_CREATE_TESTNET_DATA:-false}" = false ]; then
973-
echo "Moving genesis utxo in epoch 0..."
974-
BYRON_SIGNING_KEY="$KEY_DIR"/utxo-keys/shelley.000.skey \
975-
ERA_CMD="alonzo" \
976-
nix run .#job-move-genesis-utxo
977-
echo "Sleeping 10 seconds until $(date -d @$(($(date +%s) + 10)))"
978-
sleep 10
979-
echo
980-
fi
981-
982-
echo "Registering stake pools in epoch 0..."
983-
POOL_RELAY=demo.local \
984-
POOL_RELAY_PORT=3001 \
985-
ERA_CMD="alonzo" \
986-
nix run .#job-register-stake-pools
987-
echo "Sleeping 10 seconds until $(date -d @$(($(date +%s) + 10)))"
988-
sleep 10
989-
echo
990-
991-
WAIT_FOR_TIP() {
992-
TYPE="$1"
993-
TARGET="$2"
994-
EPOCH="$1"
995-
996-
while true; do
997-
[ "$(jq -re ".$TYPE" <<< "$(just query-tip demo)")" = "$TARGET" ] && break;
998-
sleep 2
999-
done
1000-
}
1001-
1002-
echo "Delegating rewards stake key in epoch 0..."
1003-
ERA_CMD="alonzo" \
1004-
nix run .#job-delegate-rewards-stake-key
1005-
echo "Sleeping until epoch 1"
1006-
WAIT_FOR_TIP "epoch" "1"
1007-
echo
1008-
1009-
echo "Forking to babbage in epoch 1..."
1010-
just query-tip demo
1011-
MAJOR_VERSION=7 \
1012-
ERA_CMD="alonzo" \
1013-
nix run .#job-update-proposal-hard-fork
1014-
echo "Sleeping until babbage"
1015-
WAIT_FOR_TIP "era" "Babbage"
1016-
echo
1017-
1018-
echo "Forking to babbage (intra-era) in epoch 2..."
1019-
just query-tip demo
1020-
MAJOR_VERSION=8 \
1021-
ERA_CMD="babbage" \
1022-
nix run .#job-update-proposal-hard-fork
1023-
echo "Sleeping until epoch 3"
1024-
WAIT_FOR_TIP "epoch" "3"
1025-
echo
1026-
1027-
echo "Forking to conway in epoch 3..."
1028-
just query-tip demo
1029-
MAJOR_VERSION=9 \
1030-
ERA_CMD="babbage" \
1031-
nix run .#job-update-proposal-hard-fork
1032-
echo "Sleeping until epoch conway"
1033-
WAIT_FOR_TIP "era" "Conway"
1034-
echo
1035-
1036-
just query-tip demo
1037-
echo
1038-
echo "Finished sequence..."
1039-
echo
1040-
1041-
# Start a fork to conway demo using create-testnet-data-ng job
1042-
start-demo-ng:
1043-
#!/usr/bin/env bash
1044-
set -euo pipefail
1045-
just stop-node demo
1046-
1047-
{{stateDir}}
1048-
1049-
echo "Cleaning state-demo-ng..."
1050-
if [ -d state-demo-ng ]; then
1051-
chmod -R +w state-demo-ng
1052-
rm -rf state-demo-ng
1053-
fi
1054-
1055-
echo "Generating state-demo-ng config..."
1056-
1057-
export ENV=custom
1058-
export GENESIS_DIR=state-demo-ng
1059-
export KEY_DIR=state-demo-ng/envs/custom
1060-
export DATA_DIR=state-demo-ng/rundir
1061-
1062-
export CARDANO_NODE_SOCKET_PATH="$STATEDIR/node-demo.socket"
1063-
export TESTNET_MAGIC=42
1064-
1065-
export NUM_GENESIS_KEYS=3
1066-
export POOL_NAMES="sp-1 sp-2 sp-3"
1067-
export STAKE_POOL_DIR=state-demo-ng/groups/stake-pools
1068-
1069-
export BULK_CREDS=state-demo-ng/bulk.creds.all.json
1070-
export PAYMENT_KEY=state-demo-ng/envs/custom/utxo-keys/rich-utxo
1071-
1072-
export UNSTABLE=true
1073-
export UNSTABLE_LIB=true
1074-
export USE_ENCRYPTION=true
1075-
export USE_DECRYPTION=true
1076-
export USE_NODE_CONFIG_BP=false
1077-
export USE_CREATE_TESTNET_DATA=true
1078-
export DEBUG=true
1079-
1080-
export SECURITY_PARAM=8
1081-
export SLOT_LENGTH=100
1082-
export START_TIME=$(date --utc +"%Y-%m-%dT%H:%M:%SZ" --date " now + 30 seconds")
1083-
1084-
export ERA_CMD=conway
1085-
1086-
nix run .#job-gen-custom-node-config-data-ng
1087-
1088-
nix run .#job-create-stake-pool-keys
1089-
1090-
if [ "$USE_DECRYPTION" = true ]; then
1091-
BOOTSTRAP_CREDS=$(just sops-decrypt-binary "$KEY_DIR"/bootstrap-pool/bulk.creds.bootstrap.json)
1092-
POOL_CREDS=$(just sops-decrypt-binary "$STAKE_POOL_DIR"/no-deploy/bulk.creds.pools.json)
1093-
else
1094-
BOOTSTRAP_CREDS=$(cat "$KEY_DIR"/bootstrap-pool/bulk.creds.bootstrap.json)
1095-
POOL_CREDS=$(cat "$STAKE_POOL_DIR"/no-deploy/bulk.creds.pools.json)
1096-
fi
1097-
(
1098-
jq -r '.[]' <<< "$BOOTSTRAP_CREDS"
1099-
jq -r '.[]' <<< "$POOL_CREDS"
1100-
) | jq -s > "$BULK_CREDS"
1101-
1102-
echo "Start cardano-node in the background. Run \"just stop-node demo\" to stop"
1103-
NODE_CONFIG="$DATA_DIR/node-config.json" \
1104-
NODE_TOPOLOGY="$DATA_DIR/topology.json" \
1105-
SOCKET_PATH="$STATEDIR/node-demo.socket" \
1106-
nohup setsid nix run .#run-cardano-node &> "$STATEDIR/node-demo.log" & echo $! > "$STATEDIR/node-demo.pid" &
1107-
just set-default-cardano-env demo "" "$PPID"
1108-
echo "Sleeping 30 seconds until $(date -d @$(($(date +%s) + 30)))"
1109-
sleep 30
1110-
echo
1111-
1112-
echo "Registering stake pools..."
1113-
POOL_RELAY=demo-ng.local \
1114-
POOL_RELAY_PORT=3001 \
1115-
nix run .#job-register-stake-pools
1116-
echo "Sleeping 10 seconds until $(date -d @$(($(date +%s) + 7)))"
1117-
sleep 10
1118-
echo
1119-
1120-
echo "Delegating rewards stake key..."
1121-
nix run .#job-delegate-rewards-stake-key
1122-
echo "Sleeping 10 seconds until $(date -d @$(($(date +%s) + 7)))"
1123-
sleep 10
1124-
echo
1125-
1126-
echo "Retiring the bootstrap pool..."
1127-
BOOTSTRAP_POOL_DIR="$KEY_DIR/bootstrap-pool" \
1128-
RICH_KEY="$KEY_DIR/utxo-keys/rich-utxo" \
1129-
nix run .#job-retire-bootstrap-pool
1130-
sleep 10
1131-
echo
1132-
1133-
WAIT_FOR_TIP() {
1134-
TYPE="$1"
1135-
TARGET="$2"
1136-
EPOCH="$1"
1137-
1138-
while true; do
1139-
[ "$(jq -re ".$TYPE" <<< "$(just query-tip demo)")" = "$TARGET" ] && break;
1140-
sleep 2
1141-
done
1142-
}
1143-
1144-
echo "Sleeping until epoch 1 when the bootstrap pool retires"
1145-
WAIT_FOR_TIP "epoch" "1"
1146-
echo
1147-
1148-
just query-tip demo
1149-
echo
1150-
echo "Finished sequence..."
1151-
echo
1152-
1153898
# Start a local node for a specific env
1154899
start-node ENV:
1155900
#!/usr/bin/env bash
@@ -1324,7 +1069,7 @@ tofu *ARGS:
13241069

13251070
tofu init -reconfigure
13261071
tofu workspace select -or-create "$WORKSPACE"
1327-
tofu ${ARGS[@]} ${VAR_FILE:+-var-file=<("${SOPS[@]}" "$VAR_FILE")}
1072+
tofu "${ARGS[@]:0:1}" ${VAR_FILE:+-var-file=<("${SOPS[@]}" "$VAR_FILE")} "${ARGS[@]:1}"
13281073

13291074
# Truncate a select chain after slot
13301075
truncate-chain ENV SLOT:

docs/environments/mainnet/config-bp.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -15,7 +15,7 @@
1515
"LedgerDB": {
1616
"Backend": "V2InMemory",
1717
"NumOfDiskSnapshots": 2,
18-
"QueryBatchSize": 100,
18+
"QueryBatchSize": 100000,
1919
"SnapshotInterval": 4320
2020
},
2121
"MaxKnownMajorProtocolVersion": 2,

docs/environments/mainnet/config.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -15,7 +15,7 @@
1515
"LedgerDB": {
1616
"Backend": "V2InMemory",
1717
"NumOfDiskSnapshots": 2,
18-
"QueryBatchSize": 100,
18+
"QueryBatchSize": 100000,
1919
"SnapshotInterval": 4320
2020
},
2121
"MaxKnownMajorProtocolVersion": 2,

docs/environments/preprod/config-bp.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -13,7 +13,7 @@
1313
"LedgerDB": {
1414
"Backend": "V2InMemory",
1515
"NumOfDiskSnapshots": 2,
16-
"QueryBatchSize": 100,
16+
"QueryBatchSize": 100000,
1717
"SnapshotInterval": 4320
1818
},
1919
"MinBigLedgerPeersForTrustedState": 5,

docs/environments/preprod/config.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -13,7 +13,7 @@
1313
"LedgerDB": {
1414
"Backend": "V2InMemory",
1515
"NumOfDiskSnapshots": 2,
16-
"QueryBatchSize": 100,
16+
"QueryBatchSize": 100000,
1717
"SnapshotInterval": 4320
1818
},
1919
"MinBigLedgerPeersForTrustedState": 5,

docs/environments/preview/config-bp.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -15,7 +15,7 @@
1515
"LedgerDB": {
1616
"Backend": "V2InMemory",
1717
"NumOfDiskSnapshots": 2,
18-
"QueryBatchSize": 100,
18+
"QueryBatchSize": 100000,
1919
"SnapshotInterval": 864
2020
},
2121
"MinBigLedgerPeersForTrustedState": 5,

docs/environments/preview/config.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -15,7 +15,7 @@
1515
"LedgerDB": {
1616
"Backend": "V2InMemory",
1717
"NumOfDiskSnapshots": 2,
18-
"QueryBatchSize": 100,
18+
"QueryBatchSize": 100000,
1919
"SnapshotInterval": 864
2020
},
2121
"MinBigLedgerPeersForTrustedState": 5,

docs/explain/old-node-configs.md

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -48,6 +48,11 @@
4848
4949
## Version Reference:
5050
51+
* Node `10.4.1`
52+
* Environment configs can be found in `result/environments/config/` after running:
53+
```bash
54+
nix run github:input-output-hk/cardano-playground/node-10.4.1-config#job-gen-env-config
55+
5156
* Node `10.3.1`
5257
* Environment configs can be found in `result/environments/config/` after running:
5358
```bash

0 commit comments

Comments
 (0)