Browse Source

unify dump and restore scripts

Davide Alberani 6 years ago
parent
commit
0824ffffab
3 changed files with 27 additions and 7 deletions
  1. 1 1
      docker-tools/Dockerfile
  2. 0 6
      docker-tools/mongodump/run.sh
  3. 26 0
      docker-tools/run.sh

+ 1 - 1
docker-tools/mongodump/Dockerfile → docker-tools/Dockerfile

@@ -6,4 +6,4 @@ LABEL \
 VOLUME ["/data"]
 
 COPY run.sh /
-CMD ["/run.sh"]
+ENTRYPOINT ["/run.sh"]

+ 0 - 6
docker-tools/mongodump/run.sh

@@ -1,6 +0,0 @@
-#!/bin/sh
-
-mongodump --host mongo --out /tmp/ --db eventman
-cd /tmp
-tar cfz /data/eventman-dump-`date +'%Y-%m-%dT%H:%M:%S'`.tgz eventman
-

+ 26 - 0
docker-tools/run.sh

@@ -0,0 +1,26 @@
+#!/bin/sh
+
+if [ $# -lt 1 ] ; then
+	exit 1
+fi
+
+cmd="$1"
+
+if [ "${cmd}" = "--dump" ] ; then
+	echo "INFO: dumping..."
+	mongodump --host mongo --out /tmp/ --db eventman
+	cd /tmp
+	tar cfz /data/eventman-dump-`date +'%Y-%m-%dT%H:%M:%S'`.tgz eventman
+elif [ "${cmd}" = "--restore" ] ; then
+	if [ -z "$2" ] ; then
+		echo "ERROR: missing argument to --restore"
+		exit 2
+	fi
+	echo "INFO: restoring $2..."
+	tar xfz "/data/$2" -C /tmp
+	mongorestore --host mongo -d eventman /tmp/eventman
+else
+	echo "ERROR: command not recognized: use --dump or --restore dumps/file.tgz"
+	exit 3
+fi
+