--files-only mode, -h --help flags
This commit is contained in:
@@ -17,11 +17,23 @@ ARCHIVE_NAME="sync.tar.gz"
|
||||
|
||||
# Parse command line arguments
|
||||
SFTP_ONLY=false
|
||||
FILES_ONLY=false
|
||||
|
||||
for arg in "$@"; do
|
||||
if [ "$arg" = "--sftp-only" ]; then
|
||||
SFTP_ONLY=true
|
||||
echo -e "${YELLOW}Sftp only mode enabled${NC}"
|
||||
fi
|
||||
case "$arg" in
|
||||
-h|--help)
|
||||
cat "$SCRIPT_DIR/MANUAL"
|
||||
exit 0
|
||||
;;
|
||||
--sftp-only)
|
||||
SFTP_ONLY=true
|
||||
echo -e "${YELLOW}SFTP only mode enabled${NC}"
|
||||
;;
|
||||
--files-only)
|
||||
FILES_ONLY=true
|
||||
echo -e "${YELLOW}Files only mode enabled${NC}"
|
||||
;;
|
||||
esac
|
||||
done
|
||||
|
||||
# Function to add entry to .gitignore if not already present
|
||||
@@ -73,7 +85,11 @@ echo "Starting project sync..."
|
||||
|
||||
# Step 1: SSH into server and create tar archive
|
||||
echo "Creating archive on server..."
|
||||
sshpass -p "${SSH_PASSWORD}" ssh ${SERVER_HOST} "cd ${SERVER_PROJECT_PATH} && tar -czf ../${ARCHIVE_NAME} ."
|
||||
if [ "$FILES_ONLY" = true ]; then
|
||||
sshpass -p "${SSH_PASSWORD}" ssh ${SERVER_HOST} "cd ${SERVER_PROJECT_PATH} && tar -czf ../${ARCHIVE_NAME} --exclude='node_modules' --exclude='vendor' ."
|
||||
else
|
||||
sshpass -p "${SSH_PASSWORD}" ssh ${SERVER_HOST} "cd ${SERVER_PROJECT_PATH} && tar -czf ../${ARCHIVE_NAME} ."
|
||||
fi
|
||||
|
||||
if [ $? -ne 0 ]; then
|
||||
echo -e "${RED}Failed to create archive on server${NC}"
|
||||
@@ -118,6 +134,11 @@ sshpass -p "${SSH_PASSWORD}" ssh ${SERVER_HOST} "rm ~/${ARCHIVE_NAME}"
|
||||
|
||||
echo -e "${GREEN}File sync complete!${NC}"
|
||||
|
||||
# Skip helper scripts and config generation in files-only mode
|
||||
if [ "$FILES_ONLY" = true ]; then
|
||||
exit 0
|
||||
fi
|
||||
|
||||
# Create .vscode sftp.json file
|
||||
mkdir -p .vscode
|
||||
|
||||
|
||||
Reference in New Issue
Block a user