summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorCarl Hetherington <cth@carlh.net>2014-07-18 13:10:09 +0000
committerCarl Hetherington <cth@carlh.net>2014-07-18 13:10:09 +0000
commitd4b685ee3dbf69242d14ef7307ec960b4e161edc (patch)
tree2b1edeff51a33ddef8b4139587c5ad25afa9c497
parentfba449f4386981ca1d8638b3272dcb63cf3008e9 (diff)
parentac75ac45521450ba2f4594d23130780053627957 (diff)
Merge branch 'master' into working-dir-changes
-rwxr-xr-xcdist17
1 files changed, 12 insertions, 5 deletions
diff --git a/cdist b/cdist
index 211acd6..7f1e5fe 100755
--- a/cdist
+++ b/cdist
@@ -193,7 +193,7 @@ class Version:
self.devel = False
def __str__(self):
- s = '%d.%02d.%d' % (self.major, self.minor, self.micro)
+ s = '%d.%d.%d' % (self.major, self.minor, self.micro)
if self.devel:
s += 'devel'
@@ -520,6 +520,7 @@ class Project(object):
self.directory = directory
self.version = None
self.specifier = specifier
+ self.git_commit = None
if self.specifier is None:
self.specifier = 'master'
@@ -532,8 +533,9 @@ class Project(object):
command('git clone %s %s/%s.git %s/src/%s' % (flags, config.get('git_prefix'), self.name, target.work_dir_cdist(), self.name))
os.chdir('%s/src/%s' % (target.work_dir_cdist(), self.name))
command('git checkout %s %s %s' % (flags, self.specifier, redirect))
- command('git submodule init')
- command('git submodule update')
+ self.git_commit = command_and_read('git rev-parse --short=7 HEAD').readline().strip()
+ command('git submodule init --quiet')
+ command('git submodule update --quiet')
os.chdir(self.directory)
proj = '%s/src/%s/%s' % (target.work_dir_cdist(), self.name, self.directory)
@@ -590,6 +592,11 @@ def append_version_to_debian_changelog(version):
command('dch -b -v %s-1 "New upstream release."' % version)
+def devel_to_git(project, filename):
+ if project.git_commit is not None:
+ filename = filename.replace('devel', '-%s' % project.git_commit)
+ return filename
+
#
# Command-line parser
#
@@ -646,10 +653,10 @@ elif args.command == 'package':
except:
pass
for p in packages:
- copyfile(p, '%s/%s' % (out, os.path.basename(p)))
+ copyfile(p, '%s/%s' % (out, os.path.basename(devel_to_git(project, p))))
else:
for p in packages:
- copyfile(p, '%s/%s' % (args.output, os.path.basename(p)))
+ copyfile(p, '%s/%s' % (args.output, os.path.basename(devel_to_git(project, p))))
if not args.keep:
target.cleanup()