Fix safer directory deletion in Bash in recovery_1st_stage.sample. master
authorTaiki Koshino <koshino@sraoss.co.jp>
Wed, 10 Sep 2025 06:28:01 +0000 (15:28 +0900)
committerTaiki Koshino <koshino@sraoss.co.jp>
Wed, 10 Sep 2025 06:28:01 +0000 (15:28 +0900)
Quote variables in rm commands to avoid accidental deletion:
rm -rf "${DEST_NODE_PGDATA}"

If the variable is empty, rm could delete unexpected files or directories.

src/sample/scripts/recovery_1st_stage.sample

index f62500f475604545b5118f0d1527f29e5090b271..9cbe33c8a994a93fa196c74487bec961d93c5324 100755 (executable)
@@ -49,7 +49,7 @@ ssh -T ${SSH_OPTIONS} ${POSTGRESQL_STARTUP_USER}@$DEST_NODE_HOST "
 
     set -o errexit
 
-    [ -d \"${DEST_NODE_PGDATA}\" ] && rm -rf ${DEST_NODE_PGDATA}
+    [ -d \"${DEST_NODE_PGDATA}\" ] && rm -rf \"${DEST_NODE_PGDATA}\"
 
     ${PGHOME}/bin/pg_basebackup -h $PRIMARY_NODE_HOST -U $REPLUSER -p $PRIMARY_NODE_PORT -D $DEST_NODE_PGDATA -X stream