summaryrefslogtreecommitdiffstats
path: root/utils/test/result_collection_api/update/backup.py
diff options
context:
space:
mode:
authorSerenaFeng <feng.xiaowei@zte.com.cn>2016-06-07 14:34:14 +0800
committerSerenaFeng <feng.xiaowei@zte.com.cn>2016-06-07 14:52:09 +0800
commit5ac39a0e6c542ac2857d4d877c0df02598cf9b4f (patch)
treecf223478412d4e2bbaac6f53774ab65942a6ca4e /utils/test/result_collection_api/update/backup.py
parent1fe98dbd9ea08d14f6d14ceb0309903f4031961d (diff)
add mongodb backup and restore scripts in testAPI
add directory update add files backup.py restore.py utils.py JIRA: FUNCTEST-297 Change-Id: I6e8b6c4b87b6081e67bc3e1a7605c83d0232e3ca Signed-off-by: SerenaFeng <feng.xiaowei@zte.com.cn>
Diffstat (limited to 'utils/test/result_collection_api/update/backup.py')
-rw-r--r--utils/test/result_collection_api/update/backup.py44
1 files changed, 44 insertions, 0 deletions
diff --git a/utils/test/result_collection_api/update/backup.py b/utils/test/result_collection_api/update/backup.py
new file mode 100644
index 000000000..faa4fd410
--- /dev/null
+++ b/utils/test/result_collection_api/update/backup.py
@@ -0,0 +1,44 @@
+##############################################################################
+# Copyright (c) 2016 ZTE Corporation
+# feng.xiaowei@zte.com.cn
+# All rights reserved. This program and the accompanying materials
+# are made available under the terms of the Apache License, Version 2.0
+# which accompanies this distribution, and is available at
+# http://www.apache.org/licenses/LICENSE-2.0
+##############################################################################
+import os
+import argparse
+import datetime
+
+from utils import execute, main, get_abspath
+
+parser = argparse.ArgumentParser(description='Backup MongoDBs')
+
+parser.add_argument('-u', '--url',
+ type=str,
+ required=False,
+ default='mongodb://127.0.0.1:27017/',
+ help='Mongo DB URL for Backups')
+parser.add_argument('-o', '--output_dir',
+ type=str,
+ required=False,
+ default='./',
+ help='Output directory for the backup.')
+
+parser.add_argument('-d', '--db',
+ type=str,
+ required=False,
+ default='test_results_collection',
+ help='database for the backup.')
+
+
+def backup(args):
+ db = args.db
+ out = get_abspath(args.output_dir)
+ now = datetime.datetime.now()
+ out = os.path.join(out, '%s__%s' % (db, now.strftime('%Y_%m_%d_%H%M%S')))
+ cmd = ['mongodump', '-o', '%s' % out]
+ execute(cmd, args)
+
+if __name__ == '__main__':
+ main(backup, parser)