From 08a6f7c1fa9eee8353122edd6352bc3915e5af32 Mon Sep 17 00:00:00 2001 From: pgdalmeida Date: Wed, 16 Sep 2026 18:27:27 +0200 Subject: [PATCH] Exclude hardware.ini from the deploy rsync so --delete cannot erase it --- deploy.sh | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/deploy.sh b/deploy.sh index 159fa3d..7f5d5f6 100755 --- a/deploy.sh +++ b/deploy.sh @@ -183,6 +183,14 @@ ssh "$REMOTE_HOST" "mkdir -p '$REMOTE_DIR'" # config, operator-exported camera settings, captured output) and are # deliberately NOT mirrored, so a deploy never clobbers them. # +# hardware.ini is excluded for the same reason but one step further: it normally +# lives in /etc/fire_gimbal_control/, out of reach of this rsync entirely, and +# the exclude covers the fallback location (beside config.ini) that the +# resolution chain also accepts. Without it, --delete would erase a machine's +# assembly description on the next deploy - the same way it once erased a +# freshly exported camera profile. --push-config does NOT override this: the +# assembly of a tower is not something you push from a dev box. +# # The profile XMLs matter especially: they are exported on the DEVICE from the # VimbaX Viewer, which is where the camera is, so they exist nowhere in this # repo. Without these excludes `--delete` erases them on the next deploy - which @@ -214,6 +222,7 @@ rsync -avz --delete \ --exclude '.vscode' \ --exclude '__pycache__' \ --exclude '.deploy.env' \ + --exclude 'hardware.ini' \ "${CONFIG_EXCLUDES[@]}" \ --exclude 'config.ini.bak-*' \ --exclude 'config/camera_profiles/**/*.xml' \