Web   ·   Wiki   ·   Activities   ·   Blog   ·   Lists   ·   Chat   ·   Meeting   ·   Bugs   ·   Git   ·   Translate   ·   Archive   ·   People   ·   Donate
summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorSimon Schampijer <simon@schampijer.de>2010-09-30 09:21:03 (GMT)
committer Simon Schampijer <simon@schampijer.de>2010-09-30 09:21:03 (GMT)
commit589ea42181540923283e3d417f1a059de80d9f61 (patch)
treee2805794311c657d049ed37b5dad466a5324bf80
parente105a882613523c5dd06828e1d9c2daeb4077e5d (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.
-rwxr-xr-xrelease19
1 files changed, 6 insertions, 13 deletions
diff --git a/release b/release
index b478b67..7bf77eb 100755
--- a/release
+++ b/release
@@ -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