diff options
author | Simon Schampijer <simon@schampijer.de> | 2010-09-30 09:21:03 (GMT) |
---|---|---|
committer | Simon Schampijer <simon@schampijer.de> | 2010-09-30 09:21:03 (GMT) |
commit | 589ea42181540923283e3d417f1a059de80d9f61 (patch) | |
tree | e2805794311c657d049ed37b5dad466a5324bf80 /release | |
parent | e105a882613523c5dd06828e1d9c2daeb4077e5d (diff) |
Make sure we have the last tag for the interval of commits
We use 'git describe' for that task. The '--tags' option
will look in all the tags, as well the ones not
annotated. '--abbrev=0' suppresses the abbreviated
object name.
Diffstat (limited to 'release')
-rwxr-xr-x | release | 19 |
1 files changed, 6 insertions, 13 deletions
@@ -36,20 +36,13 @@ class ReleaseReport(object): self.testcases = [] def generate(self): - p = subprocess.Popen(['git', 'tag'], stdout=subprocess.PIPE) - tags = p.stdout.read().split('\n') - tags = [ tag for tag in tags if tag.startswith('v') ] - + p = subprocess.Popen(['git', 'describe', '--tags', '--abbrev=0'], + stdout=subprocess.PIPE) + last_tag = p.stdout.read().strip('\n') release_tag = 'v' + self.version - try: - i = tags.index(release_tag) - except ValueError: - print 'The tag you provided does not exist.' - return - - if i > 0: - previous = tags[i - 1] - interval = previous + '..' + release_tag + + if last_tag: + interval = last_tag + '..' + release_tag else: interval = release_tag |