aboutsummaryrefslogtreecommitdiffstats
path: root/build/bin/tagrelease.py
diff options
context:
space:
mode:
Diffstat (limited to 'build/bin/tagrelease.py')
-rw-r--r--build/bin/tagrelease.py133
1 files changed, 0 insertions, 133 deletions
diff --git a/build/bin/tagrelease.py b/build/bin/tagrelease.py
deleted file mode 100644
index 871d34515e..0000000000
--- a/build/bin/tagrelease.py
+++ /dev/null
@@ -1,133 +0,0 @@
-#!/usr/bin/python
-
-import os,sys,re
-
-###############################################################################
-# Read maps
-###############################################################################
-def readMap(fin, separator):
- lines = map(lambda x: x.strip(), fin.readlines())
-
- values = {}
- for line in lines:
- if line == "":
- continue
-
- m = re.match(separator, line)
- if not m:
- print "Line '%s' not parseable." % line
- sys.exit(1)
- values[m.group(1)] = m.group(2)
-
- return values
-
-def getSvnInfo():
- if os.path.exists(".svn"):
- pin = os.popen("svn info", "r")
- elif os.path.exists(".git"):
- pin = os.popen("git svn info", "r")
- values = readMap(pin, r'^([^:]+):\s*(.+)$')
- pin.close()
- return values
-
-def readProperties(filename):
- fin = open(filename, "r")
- values = readMap(fin, r'^([^=]+)\s*=\s*(.+)$')
- fin.close()
- return values
-
-###############################################################################
-# Help
-###############################################################################
-def helpAndExit():
- print "Usage: build/bin/tagrelease <command> [parameters...]"
- print "Commands:"
- print "\ttag <version> <changeset>"
- sys.exit(1)
-
-###############################################################################
-# Checks if a tag exists
-###############################################################################
-def isTagged(trgUrl):
- return not os.system("svn list --depth empty %s 2> /dev/null" % trgUrl)
-
-###############################################################################
-# Tag
-###############################################################################
-def checkNotTagged(tagUrl):
- if isTagged(tagUrl):
- print "The tag '%s' already exists." % tagUrl
- sys.exit(1)
-
-def tag(product, srcUrl, trgUrl, version, changeset, dryrun = 1):
- # Check that the tag doesn't already exist
- checkNotTagged(trgUrl)
-
- tagComment = "Tagged %s %s release." % (product, version)
- tagCmd = "svn copy -m \"%s\" %s %s" % (tagComment, srcUrl+"@"+changeset, trgUrl)
- print tagCmd
-
- # TODO enable
- # error = os.system(tagCmd)
- error = 0
- if error:
- print "Tagging failed."
- sys.exit(1)
-
-###############################################################################
-# Tag command
-###############################################################################
-def tagCommand(version, changeset):
- # Check parameters
- m = re.match(r'^[0-9]+\.[0-9]+\.[0-9]+(\.\w+)?$', version)
- if not m:
- print "Invalid version number '%s'" % version
- sys.exit(1)
- m = re.match(r'^[0-9]+$', changeset)
- if not m:
- print "Invalid changeset number '%s'" % changeset
- sys.exit(1)
-
- # Repository parameters
- svnInfo = getSvnInfo()
- url = svnInfo["URL"]
- repoRoot = svnInfo["Repository Root"]
- tagUrl = repoRoot+"/releases/"+version
-
- # Check that neither tag exists
- checkNotTagged(tagUrl)
-
- # Do the tagging
- tag("Vaadin", url, tagUrl, version, changeset)
-
-###############################################################################
-# Verify command
-###############################################################################
-def verifyCommand(version, changeset):
- # Check parameters
- # TODO Put to a function
- m = re.match(r'^[0-9]+\.[0-9]+\.[0-9]+(\.\w+)?$', version)
- if not m:
- print "Invalid version number '%s'" % version
- sys.exit(1)
- m = re.match(r'^[0-9]+$', changeset)
- if not m:
- print "Invalid changeset number '%s'" % changeset
- sys.exit(1)
-
- print "Verification not yet implemented, but ok."
-
-###############################################################################
-# Main
-###############################################################################
-
-if len(sys.argv) < 2:
- helpAndExit()
-
-if sys.argv[1] == "tag" and len(sys.argv) == 4:
- tagCommand(sys.argv[2], sys.argv[3])
-elif sys.argv[1] == "verify" and len(sys.argv) == 4:
- verifyCommand(sys.argv[2], sys.argv[3])
-else:
- print "Invalid command or number of parameters."
- helpAndExit()