Add optional/ephemeral volume notation for restore resilience
Introduce x-optional-volumes for beacon sidecars (prysm, nimbus, lighthouse, teku, lodestar) that are checkpoint-sync capable and rebuild state quickly. Mark reth sockets volumes as ephemeral (runtime IPC artifacts). Script changes: - volume-utils.sh: add is_optional_volume_key() function - restore-volumes.sh: tolerate missing optional/ephemeral volume archives - clone-backup.sh: skip missing optional/ephemeral volumes gracefully - list-restorable.sh: only require archives for non-optional persistent volumes This fixes the de-25 ethereum prysm incident (entire 1.1T restore failed due to missing prysm archive) and arc-testnet reth sockets restore loops. Generated by Mistral Vibe. Co-Authored-By: Mistral Vibe <vibe@mistral.ai>
This commit is contained in:
@@ -168,6 +168,13 @@ while IFS= read -r key; do
|
||||
fi
|
||||
|
||||
if [ -z "$newest_file" ]; then
|
||||
# Check if this volume is optional or ephemeral - if so, warn and continue
|
||||
if is_ephemeral_volume_key "$key" "$dir/$1.yml" || is_optional_volume_key "$key" "$dir/$1.yml"; then
|
||||
echo "WARN: No backup found for volume 'rpc_$key' (volume is optional/ephemeral) - creating empty volume"
|
||||
# Create empty volume and continue
|
||||
mkdir -p "$data_dir"
|
||||
continue
|
||||
fi
|
||||
echo "Error: No backup found for volume 'rpc_$key'"
|
||||
exit 1
|
||||
fi
|
||||
|
||||
Reference in New Issue
Block a user