From b76232bc92bb23e306b5f665d3672b18e3212bfe Mon Sep 17 00:00:00 2001 From: Colin Dixon Date: Tue, 13 Jan 2015 21:59:33 -0500 Subject: [PATCH] Add version-bump.sh Copied from https://wiki.opendaylight.org/view/File:Version-bump.sh Change-Id: Iabc3f41b42161ff7aecac2a6cec8bf7024374487 Signed-off-by: Thanh Ha Signed-off-by: Colin Dixon --- version-bump.sh | 60 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 60 insertions(+) create mode 100644 version-bump.sh diff --git a/version-bump.sh b/version-bump.sh new file mode 100644 index 00000000..45143159 --- /dev/null +++ b/version-bump.sh @@ -0,0 +1,60 @@ +#!/bin/sh + +# @License EPL-1.0 +############################################################################## +# Copyright (c) 2014 The Linux Foundation and others. +# +# All rights reserved. This program and the accompanying materials +# are made available under the terms of the Eclipse Public License v1.0 +# which accompanies this distribution, and is available at +# http://www.eclipse.org/legal/epl-v10.html +# +# Contributors: +# Colin Dixon - Initial implementation +############################################################################## + +# In general, versions should be: ..[-] +# * Human readable tag should not have any dots in it +# * SNAPSHOT is used for development +# +# Master before release: x.y.z-SNAPSHOT (or x.y-SNAPSHOT in which case we treat it as x.y.0-SNAPSHOT) +# at release: x.y.z-Helium +# stable/helium after release: x.y.(z+1)-SNAPSHOT +# master after release: x.(y+1).0-SNAPSHOT +# Autorelease on master: is "PreLithium-" +# Autorelease on stable/helium: is "PreHeliumSR1-" +# Release job on master: is "Lithium" +# Release job on stable/helium: is "HeliumSR1" +# +# Some things have a date for a version, e.g., 2014.09.24.4 +# * We treat this as YYYY.MM.DD. +# * Note that all such dates currently in ODL are in YANG tools +# * They are all now YYYY.MM.DD.7 since 7 is the minor version for yangtools + + +# The goal of this script is to: +# 1.) take all x.y.z-Helium versions to x.y.(z+1)-SNAPSHOT and +# 2.) take all x.y.z-SNAPSHOT versions to x.(y+1).0-SNAPSHOT + +RELEASE_TAG="Helium-SR1" +FILENAMES="pom.xml features.xml" + +for name in $FILENAMES +do + # Do the -SNAPSHOT conversion first so that we don't double bump versions + # Changes x.y.z-SNAPSHOT to x.(y+1).0-SNAPSHOT in pom.xml files (if z is missing treat as 0) + find . -type f -name "$name" -exec perl -i -pe "s/([^\d.]\d+)\.(\d+)\.(\d+)-SNAPSHOT/\$1.@{[1+\$2]}.0-SNAPSHOT/g" {} + + find . -type f -name "$name" -exec perl -i -pe "s/([^\d.]\d+)\.(\d+)-SNAPSHOT/\$1.@{[1+\$2]}.0-SNAPSHOT/g" {} + + + # Changes YYYY.MM.DD.y.z-Helium to YYYY.MM.DD.7-SNAPSHOT in pom.xml files + find . -type f -name "$name" -exec perl -i -pe "s/(\d\d\d\d\.\d\d\.\d\d)\.(\d+)\.(\d+)-SNAPSHOT/\$1.7-SNAPSHOT/g" {} + + find . -type f -name "$name" -exec perl -i -pe "s/(\d\d\d\d\.\d\d\.\d\d)\.(\d+)-SNAPSHOT/\$1.7-SNAPSHOT/g" {} + + + # Changes x.y.z-Helium to x.y.(z+1)-SNAPSHOT in pom.xml files (if z is missing treat as 0) + find . -type f -name "$name" -exec perl -i -pe "s/([^\d.]\d+)\.(\d+)\.(\d+)-$RELEASE_TAG/\$1.\$2.@{[1+\$3]}-SNAPSHOT/g" {} + + find . -type f -name "$name" -exec perl -i -pe "s/([^\d.]\d+)\.(\d+)-$RELEASE_TAG/\$1.\$2.1-SNAPSHOT/g" {} + + + # Changes YYYY.MM.DD.y.z-Helium to YYMMDD.y.(z+1)-SNAPSHOT in pom.xml files (if z is missing treat as 0) + find . -type f -name "$name" -exec perl -i -pe "s/(\d\d\d\d\.\d\d\.\d\d)\.(\d+)\.(\d+)-$RELEASE_TAG/\$1.\$2.@{[1+\$3]}-SNAPSHOT/g" {} + + find . -type f -name "$name" -exec perl -i -pe "s/(\d\d\d\d\.\d\d\.\d\d)\.(\d+)-$RELEASE_TAG/\$1.\$2.1-SNAPSHOT/g" {} + +done -- 2.16.6