Diffstat (limited to 'scripts/builder/repository.py') (more/less context) (ignore whitespace changes)
-rw-r--r-- | scripts/builder/repository.py | 11 |
1 files changed, 10 insertions, 1 deletions
diff --git a/scripts/builder/repository.py b/scripts/builder/repository.py index a47e249..7ac2324 100644 --- a/scripts/builder/repository.py +++ b/scripts/builder/repository.py | |||
@@ -6,22 +6,24 @@ def repositoryWithPath (path): | |||
6 | try: | 6 | try: |
7 | from mercurial import ui, hg | 7 | from mercurial import ui, hg |
8 | 8 | ||
9 | repo = hg.repository(ui.ui(), path) | 9 | repo = hg.repository(ui.ui(), path) |
10 | result = HgRepository(repo, path) | 10 | result = HgRepository(repo, path) |
11 | except: | 11 | except: |
12 | try: | 12 | try: |
13 | from git import Repo | 13 | from git import Repo |
14 | |||
15 | repo = Repo(path) | 14 | repo = Repo(path) |
16 | result = GitRepository(repo, path) | 15 | result = GitRepository(repo, path) |
16 | |||
17 | except ImportError, exception: | 17 | except ImportError, exception: |
18 | print "Failed to import git, please install http://gitorious.org/git-python" | 18 | print "Failed to import git, please install http://gitorious.org/git-python" |
19 | raise exception | 19 | raise exception |
20 | except: | ||
21 | result = SnapshotRepository('', path) | ||
20 | 22 | ||
21 | 23 | ||
22 | return result | 24 | return result |
23 | 25 | ||
24 | 26 | ||
25 | #=================================================================== | 27 | #=================================================================== |
26 | 28 | ||
27 | 29 | ||
@@ -81,8 +83,15 @@ class HgRepository(Repository): | |||
81 | 83 | ||
82 | 84 | ||
83 | def areTherePendingChanges (self): | 85 | def areTherePendingChanges (self): |
84 | # TODO: FIXME: repository.status() does not report 'unknown(?)' files. :( | 86 | # TODO: FIXME: repository.status() does not report 'unknown(?)' files. :( |
85 | return not all(map(lambda fileList: len(fileList) == 0, self.repository.status())) | 87 | return not all(map(lambda fileList: len(fileList) == 0, self.repository.status())) |
86 | 88 | ||
87 | 89 | ||
88 | #=================================================================== | 90 | #=================================================================== |
91 | |||
92 | class SnapshotRepository(Repository): | ||
93 | def revision (self): | ||
94 | return 'SNAPSHOT' | ||
95 | |||
96 | def areTherePendingChanges (self): | ||
97 | return False | ||