forked from finn/tinyboard
onboard-spoke.sh: use script-based rclone mount with sleep 90 for reliable boot ordering, add per-spoke mount log
This commit is contained in:
@@ -230,8 +230,15 @@ echo "${SPOKE_NAME} ${TUNNEL_PORT} ${KEY_PATH} ${MOUNT_POINT}" >> "$REGISTRY"
|
|||||||
info "$SPOKE_NAME registered."
|
info "$SPOKE_NAME registered."
|
||||||
|
|
||||||
header "Setting Up Auto-Mount"
|
header "Setting Up Auto-Mount"
|
||||||
MOUNT_CMD="/usr/bin/rclone mount ${SPOKE_NAME}-remote: ${MOUNT_POINT} --config ${HOME}/.config/rclone/rclone.conf --vfs-cache-mode writes --allow-other --allow-non-empty --daemon"
|
MOUNT_SCRIPT="${HOME}/mount-${SPOKE_NAME}.sh"
|
||||||
CRON_ENTRY="@reboot ${MOUNT_CMD}"
|
cat > "$MOUNT_SCRIPT" << MOUNTEOF
|
||||||
|
#!/usr/bin/env bash
|
||||||
|
sleep 90
|
||||||
|
/usr/bin/rclone mount ${SPOKE_NAME}-remote: ${MOUNT_POINT} --config ${HOME}/.config/rclone/rclone.conf --vfs-cache-mode writes --allow-other --allow-non-empty --daemon
|
||||||
|
MOUNTEOF
|
||||||
|
chmod +x "$MOUNT_SCRIPT"
|
||||||
|
|
||||||
|
CRON_ENTRY="@reboot $MOUNT_SCRIPT >> ${HOME}/rclone-${SPOKE_NAME}.log 2>&1"
|
||||||
EXISTING=$(crontab -l 2>/dev/null || true)
|
EXISTING=$(crontab -l 2>/dev/null || true)
|
||||||
if echo "$EXISTING" | grep -qF "${SPOKE_NAME}-remote:"; then
|
if echo "$EXISTING" | grep -qF "${SPOKE_NAME}-remote:"; then
|
||||||
warn "Crontab entry for ${SPOKE_NAME}-remote already exists, skipping."
|
warn "Crontab entry for ${SPOKE_NAME}-remote already exists, skipping."
|
||||||
@@ -245,7 +252,7 @@ else
|
|||||||
fi
|
fi
|
||||||
info "Starting mount now..."
|
info "Starting mount now..."
|
||||||
mkdir -p "$MOUNT_POINT"
|
mkdir -p "$MOUNT_POINT"
|
||||||
eval "$MOUNT_CMD" 2>/dev/null && info "Mounted ${SPOKE_NAME} at ${MOUNT_POINT}." || warn "Mount failed — will retry on next reboot."
|
/usr/bin/rclone mount ${SPOKE_NAME}-remote: ${MOUNT_POINT} --config ${HOME}/.config/rclone/rclone.conf --vfs-cache-mode writes --allow-other --allow-non-empty --daemon 2>/dev/null && info "Mounted ${SPOKE_NAME} at ${MOUNT_POINT}." || warn "Mount failed — will retry on next reboot."
|
||||||
|
|
||||||
header "Onboarding Complete"
|
header "Onboarding Complete"
|
||||||
echo -e " Spoke: ${GREEN}$SPOKE_NAME${NC}"
|
echo -e " Spoke: ${GREEN}$SPOKE_NAME${NC}"
|
||||||
|
|||||||
Reference in New Issue
Block a user