#!/bin/bash # Script to sync Strapi data between environments # Usage: ./scripts/strapi-sync.sh [export|import] [filename] COMMAND=$1 FILENAME=$2 if [ -z "$COMMAND" ]; then echo "Usage: $0 [export|import] [filename]" exit 1 fi if [ "$COMMAND" == "export" ]; then if [ -z "$FILENAME" ]; then FILENAME="strapi-export-$(date +%Y%m%d%H%M%S).tar.gz" fi echo "Exporting Strapi data to $FILENAME..." docker-compose exec cms npm run strapi export -- --no-encrypt -f "$FILENAME" docker cp $(docker-compose ps -q cms):/opt/app/$FILENAME . echo "Export complete: $FILENAME" fi if [ "$COMMAND" == "import" ]; then if [ -z "$FILENAME" ]; then echo "Please specify a filename to import" exit 1 fi echo "Importing Strapi data from $FILENAME..." docker cp $FILENAME $(docker-compose ps -q cms):/opt/app/$FILENAME docker-compose exec cms npm run strapi import -- -f "$FILENAME" --force echo "Import complete" fi