summaryrefslogtreecommitdiff
Unidiff
Diffstat (more/less context) (ignore whitespace changes)
-rw-r--r--backend/php/properties/php.properties.json4
-rw-r--r--scripts/builder/repository.py10
2 files changed, 8 insertions, 6 deletions
diff --git a/backend/php/properties/php.properties.json b/backend/php/properties/php.properties.json
index 8ce703a..dd25b09 100644
--- a/backend/php/properties/php.properties.json
+++ b/backend/php/properties/php.properties.json
@@ -1,9 +1,9 @@
1{ 1{
2 "request.path": "index.php", 2 "request.path": "index.php",
3 "should.pay.toll": "false" 3 "should.pay.toll": "false",
4 4
5 "development.settings": { 5 "development.settings": {
6 "url": "http://localhost/php/clipperz" 6 "url": "http://localhost/php/clipperz"
7 } 7 }
8 8
9} \ No newline at end of file 9}
diff --git a/scripts/builder/repository.py b/scripts/builder/repository.py
index 9da98a2..f8528c2 100644
--- a/scripts/builder/repository.py
+++ b/scripts/builder/repository.py
@@ -1,75 +1,77 @@
1#!/usr/bin/env python 1#!/usr/bin/env python
2# -*- coding: UTF-8 -*- 2# -*- coding: UTF-8 -*-
3 3
4 4
5def repositoryWithPath (path): 5def repositoryWithPath (path):
6 try: 6 try:
7 from dulwich.repo import Repo 7 from git import Repo
8 8
9 repo = Repo(path) 9 repo = Repo(path)
10 result = GitRepository(repo, path) 10 result = GitRepository(repo, path)
11 except: 11 except ImportError:
12 print "Failed to import git, please install http://gitorious.org/git-python"
13 #except:
12 from mercurial import ui, hg 14 from mercurial import ui, hg
13 15
14 repo = hg.repository(ui.ui(), path) 16 repo = hg.repository(ui.ui(), path)
15 result = HgRepository(repo, path) 17 result = HgRepository(repo, path)
16 18
17 return result 19 return result
18 20
19 21
20#=================================================================== 22#===================================================================
21 23
22 24
23class Repository(object): 25class Repository(object):
24 26
25 def __init__ (self, repository, path): 27 def __init__ (self, repository, path):
26 self.repository = repository 28 self.repository = repository
27 self.path = path 29 self.path = path
28 30
29 31
30 def revision (self): 32 def revision (self):
31 raise NotImplementedError() 33 raise NotImplementedError()
32 34
33 35
34 def areTherePendingChanges (self): 36 def areTherePendingChanges (self):
35 raise NotImplementedError() 37 raise NotImplementedError()
36 38
37 39
38 def version (self): 40 def version (self):
39 result = self.revision() 41 result = self.revision()
40 if self.areTherePendingChanges(): 42 if self.areTherePendingChanges():
41 result = '>>> ' + result + ' <<<' 43 result = '>>> ' + result + ' <<<'
42 44
43 # print "VERSION: " + result 45 # print "VERSION: " + result
44 return result 46 return result
45 47
46 48
47#=================================================================== 49#===================================================================
48 50
49 51
50class GitRepository(Repository): 52class GitRepository(Repository):
51 53
52 def revision (self): 54 def revision (self):
53 return self.repository.refs['HEAD'] 55 return self.repository.head.commit.hexsha
54 56
55 57
56 def areTherePendingChanges (self): 58 def areTherePendingChanges (self):
57 return self.repository.is_dirty() 59 return self.repository.is_dirty()
58 60
59 61
60#=================================================================== 62#===================================================================
61 63
62 64
63class HgRepository(Repository): 65class HgRepository(Repository):
64 #http://mercurial.selenic.com/wiki/MercurialApi 66 #http://mercurial.selenic.com/wiki/MercurialApi
65 67
66 def revision (self): 68 def revision (self):
67 return 'hg:' + str(self.repository['tip']) 69 return 'hg:' + str(self.repository['tip'])
68 70
69 71
70 def areTherePendingChanges (self): 72 def areTherePendingChanges (self):
71 # TODO: FIXME: repository.status() does not report 'unknown(?)' files. :( 73 # TODO: FIXME: repository.status() does not report 'unknown(?)' files. :(
72 return not all(map(lambda fileList: len(fileList) == 0, self.repository.status())) 74 return not all(map(lambda fileList: len(fileList) == 0, self.repository.status()))
73 75
74 76
75#=================================================================== 77#===================================================================