summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRichard Ipsum <richardipsum@fastmail.co.uk>2014-11-16 18:37:01 +0000
committerRichard Ipsum <richard.ipsum@codethink.co.uk>2015-01-23 10:50:25 +0000
commitc6606b8b078957dd7d6d5d74b5e83f40561baf39 (patch)
treedf987956162f56a5ac7a14d9f03b03305307f075
parentf2f3e4e5f3d5162890d03494f405cff5177aaad8 (diff)
downloadmorph-c6606b8b078957dd7d6d5d74b5e83f40561baf39.tar.gz
Add relative_to_root_repo to sysbranchdir
-rw-r--r--morphlib/sysbranchdir.py6
1 files changed, 6 insertions, 0 deletions
diff --git a/morphlib/sysbranchdir.py b/morphlib/sysbranchdir.py
index 4dbc5f6c..8da2a386 100644
--- a/morphlib/sysbranchdir.py
+++ b/morphlib/sysbranchdir.py
@@ -107,6 +107,11 @@ class SystemBranchDirectory(object):
return os.path.join(self.root_directory, relative)
+ def relative_to_root_repo(self, path): # pragma: no cover
+ gitdirpath = self.get_git_directory_name(self.root_repository_url)
+
+ return os.path.relpath(os.path.abspath(path), gitdirpath)
+
def get_git_directory_name(self, repo_url):
'''Return directory pathname for a given git repository.
@@ -123,6 +128,7 @@ class SystemBranchDirectory(object):
'''
found_repo = self._find_git_directory(repo_url)
+
if not found_repo:
return self._fabricate_git_directory_name(repo_url)
return found_repo