aboutsummaryrefslogtreecommitdiffstats
path: root/rrs/tools/common.py
diff options
context:
space:
mode:
Diffstat (limited to 'rrs/tools/common.py')
-rw-r--r--rrs/tools/common.py28
1 files changed, 28 insertions, 0 deletions
diff --git a/rrs/tools/common.py b/rrs/tools/common.py
new file mode 100644
index 0000000000..5922ce9ee9
--- /dev/null
+++ b/rrs/tools/common.py
@@ -0,0 +1,28 @@
+# Common functionality for RRS tools.
+#
+# Copyright (C) 2015 Intel Corporation
+# Author: Anibal Limon <anibal.limon@linux.intel.com>
+#
+# Licensed under the MIT license, see COPYING.MIT for details
+
+def common_setup():
+ import sys, os
+ sys.path.insert(0, os.path.realpath(os.path.join(os.path.dirname(__file__), '../../')))
+
+def update_repo(fetchdir, repo_name, repo_url, pull, logger):
+ import os
+ from layerindex import utils, recipeparse
+
+ path = os.path.join(fetchdir, repo_name)
+
+ logger.info("Fetching %s from remote repository %s"
+ % (repo_name, repo_url))
+ if not os.path.exists(path):
+ out = utils.runcmd("git clone %s %s" % (repo_url, repo_name),
+ fetchdir, logger = logger)
+ elif pull == True:
+ out = utils.runcmd("git pull", path, logger = logger)
+ else:
+ out = utils.runcmd("git fetch", path, logger = logger)
+
+ return path