aboutsummaryrefslogtreecommitdiff
path: root/share
diff options
context:
space:
mode:
Diffstat (limited to 'share')
-rwxr-xr-xshare/hydractl/sync-media-export26
1 files changed, 17 insertions, 9 deletions
diff --git a/share/hydractl/sync-media-export b/share/hydractl/sync-media-export
index 7b47639..8647acc 100755
--- a/share/hydractl/sync-media-export
+++ b/share/hydractl/sync-media-export
@@ -1,6 +1,6 @@
#!/bin/bash
#
-# Copy git-annex repositories to remote server.
+# Copy git-annex repositories to remote destination.
#
# Parameters
@@ -23,15 +23,23 @@ for file in `ls $MEDIA`; do
cd $MEDIA
- if ssh $DESTINATION if [ -d \"/var/cache/media/$file\" ] \; then echo exists\; fi | grep -q exists; then
- echo "Remote $file already exists, skipping..."
- continue;
- fi
+ # Check for remote or local destinations
+ if [ ! -d "$DESTINATION" ]; then
+ if ssh $DESTINATION if [ -d \"/var/cache/media/$file\" ] \; then echo exists\; fi | grep -q exists; then
+ echo "Remote $file already exists, skipping..."
+ continue;
+ fi
- git clone $file $file.git && \
- rsync -avz $file.git/ $DESTINATION:/var/cache/media/$file/ && \
- rm -rf $file.git
- echo ""
+ git clone $file $file.git && \
+ rsync -avz $file.git/ $DESTINATION:/var/cache/media/$file/ && \
+ rm -rf $file.git
+ echo ""
+ else
+ mkdir -p $DESTINATION/var/cache/media
+ if [ ! -d "$DESTINATION/var/cache/media/$FILE" ]; then
+ ( cd $DESTINATION/var/cache/media && git clone $MEDIA/$file )
+ fi
+ fi
)
fi
done