mirror of
				https://github.com/apache/cloudstack.git
				synced 2025-10-26 08:42:29 +01:00 
			
		
		
		
	Adding new release manager scripts to master (used for 4.1.0 RCs)
Signed-off-by: Chip Childers <chipchilders@apache.org>
This commit is contained in:
		
							parent
							
								
									a1912d9ce2
								
							
						
					
					
						commit
						c064afe069
					
				| @ -18,33 +18,34 @@ | |||||||
| 
 | 
 | ||||||
| version='TESTBUILD' | version='TESTBUILD' | ||||||
| sourcedir=~/cloudstack/ | sourcedir=~/cloudstack/ | ||||||
| outputdir=~/cs-asf-build/ | outputdir=/tmp/cloudstack-build/ | ||||||
| branch='master' | branch='master' | ||||||
| tag='no' | tag='no' | ||||||
| certid='X' | certid='X' | ||||||
|  | committosvn='X' | ||||||
| 
 | 
 | ||||||
| usage(){ | usage(){ | ||||||
|     echo "usage: $0 -v version [-b branch] [-s source dir] [-o output dir] [-t [-u]] [-h]" |     echo "usage: $0 -v version [-b branch] [-s source dir] [-o output dir] [-t] [-u] [-c] [-h]" | ||||||
|     echo "  -v sets the version" |     echo "  -v sets the version" | ||||||
|     echo "  -b sets the branch (defaults to 'master')" |     echo "  -b sets the branch (defaults to 'master')" | ||||||
|     echo "  -s sets the source directory (defaults to $sourcedir)" |     echo "  -s sets the source directory (defaults to $sourcedir)" | ||||||
|     echo "  -o sets the output directory (defaults to $outputdir)" |     echo "  -o sets the output directory (defaults to $outputdir)" | ||||||
|     echo "  -t tags the git repo with the version" |     echo "  -t tags the git repo with the version" | ||||||
|     echo "  -u sets the certificate ID to sign the tag with (if not provided, the default key is attempted)" |     echo "  -u sets the certificate ID to sign with (if not provided, the default key is attempted)" | ||||||
|     echo "  -k sets the key to sign the tarball with" |     echo "  -c commits build artifacts to cloudstack dev dist dir in svn" | ||||||
|     echo "  -h" |     echo "  -h" | ||||||
| } | } | ||||||
| 
 | 
 | ||||||
| while getopts v:s:o:b:tu:k:h opt | while getopts v:s:o:b:u:tch opt | ||||||
| do | do | ||||||
|     case "$opt" in |     case "$opt" in | ||||||
|       v)  version="$OPTARG";; |       v)  version="$OPTARG";; | ||||||
|       s)  sourcedir="$OPTARG";; |       s)  sourcedir="$OPTARG";; | ||||||
|       o)  outputdir="$OPTARG";; |       o)  outputdir="$OPTARG";; | ||||||
|       b)  branch="$OPTARG";; |       b)  branch="$OPTARG";; | ||||||
|       t)  tag='yes';; |       t)  tag="yes";; | ||||||
|       u)  certid="$OPTARG";; |       u)  certid="$OPTARG";; | ||||||
|       k)  keyid="--default-key $OPTARG";; |       c)  committosvn="yes";; | ||||||
|       h)  usage |       h)  usage | ||||||
|           exit 0;; |           exit 0;; | ||||||
|       /?)       # unknown flag |       /?)       # unknown flag | ||||||
| @ -54,7 +55,7 @@ do | |||||||
| done | done | ||||||
| shift `expr $OPTIND - 1` | shift `expr $OPTIND - 1` | ||||||
| 
 | 
 | ||||||
| if [ $version == 'TESTBUILD' ]; then | if [ $version == "TESTBUILD" ]; then | ||||||
|     echo >&2 "A version must be specified with the -v option: build_asf.sh -v 4.0.0.RC1" |     echo >&2 "A version must be specified with the -v option: build_asf.sh -v 4.0.0.RC1" | ||||||
|     exit 1 |     exit 1 | ||||||
| fi | fi | ||||||
| @ -63,8 +64,8 @@ echo "Using version: $version" | |||||||
| echo "Using source directory: $sourcedir" | echo "Using source directory: $sourcedir" | ||||||
| echo "Using output directory: $outputdir" | echo "Using output directory: $outputdir" | ||||||
| echo "Using branch: $branch" | echo "Using branch: $branch" | ||||||
| if [ $tag == 'yes' ]; then | if [ "$tag" == "yes" ]; then | ||||||
|     if [ $certid == 'X' ]; then |     if [ "$certid" == "X" ]; then | ||||||
|         echo "Tagging the branch with the version number, and signing the branch with your default certificate." |         echo "Tagging the branch with the version number, and signing the branch with your default certificate." | ||||||
|     else |     else | ||||||
|         echo "Tagging the branch with the version number, and signing the branch with certificate ID $certid." |         echo "Tagging the branch with the version number, and signing the branch with certificate ID $certid." | ||||||
| @ -80,13 +81,38 @@ else | |||||||
| fi | fi | ||||||
| 
 | 
 | ||||||
| cd $sourcedir | cd $sourcedir | ||||||
|  | 
 | ||||||
|  | echo 'checking out correct branch' | ||||||
|  | git checkout $branch | ||||||
|  | 
 | ||||||
|  | echo 'determining current mvn version' | ||||||
|  | export currentversion=`mvn org.apache.maven.plugins:maven-help-plugin:2.1.1:evaluate -Dexpression=project.version | grep -v '\['` | ||||||
|  | echo "found $currentversion" | ||||||
|  | 
 | ||||||
|  | echo 'setting version numbers' | ||||||
|  | mvn versions:set -DnewVersion=$version -P vmware -P developer -P systemvm -P simulator -P baremetal -P ucs -Dnonoss | ||||||
|  | mv deps/XenServerJava/pom.xml.versionsBackup deps/XenServerJava/pom.xml | ||||||
|  | perl -pi -e 's/$ENV{'currentversion'}/$ENV{'version'}/' deps/XenServerJava/pom.xml | ||||||
|  | perl -pi -e 's/$ENV{'currentversion'}/$ENV{'version'}/' tools/apidoc/pom.xml | ||||||
|  | git clean -f | ||||||
|  | 
 | ||||||
|  | echo 'commit changes' | ||||||
|  | git commit -a -s -m "Updating pom.xml version numbers for release $version" | ||||||
|  | export commitsh=`git show HEAD | head -n 1 | cut -d ' ' -f 2` | ||||||
|  | 
 | ||||||
|  | echo "committed as $commitsh" | ||||||
|  | 
 | ||||||
| echo 'archiving' | echo 'archiving' | ||||||
| git archive --format=tar --prefix=apache-cloudstack-$version-src/ $branch > $outputdir/apache-cloudstack-$version-src.tar | git archive --format=tar --prefix=apache-cloudstack-$version-src/ $branch > $outputdir/apache-cloudstack-$version-src.tar | ||||||
| bzip2 $outputdir/apache-cloudstack-$version-src.tar | bzip2 $outputdir/apache-cloudstack-$version-src.tar | ||||||
| 
 | 
 | ||||||
| cd $outputdir | cd $outputdir | ||||||
| echo 'armor' | echo 'armor' | ||||||
| gpg -v $keyid --armor --output apache-cloudstack-$version-src.tar.bz2.asc --detach-sig apache-cloudstack-$version-src.tar.bz2 | if [ "$certid" == "X" ]; then | ||||||
|  |   gpg -v --armor --output apache-cloudstack-$version-src.tar.bz2.asc --detach-sig apache-cloudstack-$version-src.tar.bz2 | ||||||
|  | else | ||||||
|  |   gpg -v --default-key $certid --armor --output apache-cloudstack-$version-src.tar.bz2.asc --detach-sig apache-cloudstack-$version-src.tar.bz2 | ||||||
|  | fi | ||||||
| 
 | 
 | ||||||
| echo 'md5' | echo 'md5' | ||||||
| gpg -v --print-md MD5 apache-cloudstack-$version-src.tar.bz2 > apache-cloudstack-$version-src.tar.bz2.md5 | gpg -v --print-md MD5 apache-cloudstack-$version-src.tar.bz2 > apache-cloudstack-$version-src.tar.bz2.md5 | ||||||
| @ -97,12 +123,39 @@ gpg -v --print-md SHA512 apache-cloudstack-$version-src.tar.bz2 > apache-cloudst | |||||||
| echo 'verify' | echo 'verify' | ||||||
| gpg -v --verify apache-cloudstack-$version-src.tar.bz2.asc apache-cloudstack-$version-src.tar.bz2 | gpg -v --verify apache-cloudstack-$version-src.tar.bz2.asc apache-cloudstack-$version-src.tar.bz2 | ||||||
| 
 | 
 | ||||||
| if [ $tag == 'yes' ]; then | if [ "$tag" == "yes" ]; then | ||||||
|   echo 'tag' |   echo 'tag' | ||||||
|   cd $sourcedir |   cd $sourcedir | ||||||
|   if [ $certid == 'X' ]; then |   if [ "$certid" == "X" ]; then | ||||||
|       git tag -s $version -m "Tagging release $version on branch $branch." |       git tag -s $version -m "Tagging release $version on branch $branch." | ||||||
|   else |   else | ||||||
|       git tag -u $certid -s $version -m "Tagging release $version on branch $branch." |       git tag -u $certid -s $version -m "Tagging release $version on branch $branch." | ||||||
|   fi |   fi | ||||||
| fi | fi | ||||||
|  | 
 | ||||||
|  | if [ "$committosvn" == "yes" ]; then | ||||||
|  |   echo 'committing artifacts to svn' | ||||||
|  |   rm -Rf /tmp/cloudstack-dev-dist | ||||||
|  |   cd /tmp | ||||||
|  |   svn co https://dist.apache.org/repos/dist/dev/cloudstack/ cloudstack-dev-dist | ||||||
|  |   cd cloudstack-dev-dist | ||||||
|  |   if [ -d "$version" ]; then | ||||||
|  |     cd $version | ||||||
|  |     svn rm * | ||||||
|  |   else | ||||||
|  |     mkdir $version | ||||||
|  |     svn add $version | ||||||
|  |     cd $version | ||||||
|  |   fi | ||||||
|  |   cp $outputdir/apache-cloudstack-$version-src.tar.bz2 . | ||||||
|  |   cp $outputdir/apache-cloudstack-$version-src.tar.bz2.asc . | ||||||
|  |   cp $outputdir/apache-cloudstack-$version-src.tar.bz2.md5 . | ||||||
|  |   cp $outputdir/apache-cloudstack-$version-src.tar.bz2.sha . | ||||||
|  |   svn add apache-cloudstack-$version-src.tar.bz2 | ||||||
|  |   svn add apache-cloudstack-$version-src.tar.bz2.asc | ||||||
|  |   svn add apache-cloudstack-$version-src.tar.bz2.md5 | ||||||
|  |   svn add apache-cloudstack-$version-src.tar.bz2.sha | ||||||
|  |   svn commit -m "Committing release candidate artifacts for $version to dist/dev/cloudstack in preparation for release vote" | ||||||
|  | fi | ||||||
|  | 
 | ||||||
|  | echo "completed.  use commit-sh of $commitsh when starting the VOTE thread" | ||||||
|  | |||||||
							
								
								
									
										75
									
								
								tools/build/setnextversion.sh
									
									
									
									
									
										Executable file
									
								
							
							
						
						
									
										75
									
								
								tools/build/setnextversion.sh
									
									
									
									
									
										Executable file
									
								
							| @ -0,0 +1,75 @@ | |||||||
|  | #!/bin/sh | ||||||
|  | # Licensed to the Apache Software Foundation (ASF) under one | ||||||
|  | # or more contributor license agreements.  See the NOTICE file | ||||||
|  | # distributed with this work for additional information | ||||||
|  | # regarding copyright ownership.  The ASF licenses this file | ||||||
|  | # to you under the Apache License, Version 2.0 (the | ||||||
|  | # "License"); you may not use this file except in compliance | ||||||
|  | # with the License.  You may obtain a copy of the License at | ||||||
|  | #  | ||||||
|  | #   http://www.apache.org/licenses/LICENSE-2.0 | ||||||
|  | #  | ||||||
|  | # Unless required by applicable law or agreed to in writing, | ||||||
|  | # software distributed under the License is distributed on an | ||||||
|  | # "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY | ||||||
|  | # KIND, either express or implied.  See the License for the | ||||||
|  | # specific language governing permissions and limitations | ||||||
|  | # under the License. | ||||||
|  | 
 | ||||||
|  | version='TESTBUILD' | ||||||
|  | sourcedir=~/cloudstack/ | ||||||
|  | branch='master' | ||||||
|  | 
 | ||||||
|  | usage(){ | ||||||
|  |     echo "usage: $0 -v version [-b branch] [-s source dir] [-h]" | ||||||
|  |     echo "  -v sets the version" | ||||||
|  |     echo "  -b sets the branch (defaults to 'master')" | ||||||
|  |     echo "  -s sets the source directory (defaults to $sourcedir)" | ||||||
|  |     echo "  -h" | ||||||
|  | } | ||||||
|  | 
 | ||||||
|  | while getopts v:s:b:h opt | ||||||
|  | do | ||||||
|  |     case "$opt" in | ||||||
|  |       v)  version="$OPTARG";; | ||||||
|  |       s)  sourcedir="$OPTARG";; | ||||||
|  |       b)  branch="$OPTARG";; | ||||||
|  |       h)  usage | ||||||
|  |           exit 0;; | ||||||
|  |       /?)       # unknown flag | ||||||
|  |           usage | ||||||
|  |           exit 1;; | ||||||
|  |     esac | ||||||
|  | done | ||||||
|  | shift `expr $OPTIND - 1` | ||||||
|  | 
 | ||||||
|  | if [ $version == 'TESTBUILD' ]; then | ||||||
|  |     echo >&2 "A version must be specified with the -v option: $0 -v 4.0.0.RC1" | ||||||
|  |     exit 1 | ||||||
|  | fi | ||||||
|  | 
 | ||||||
|  | echo "Using version: $version" | ||||||
|  | echo "Using source directory: $sourcedir" | ||||||
|  | echo "Using branch: $branch" | ||||||
|  | 
 | ||||||
|  | cd $sourcedir | ||||||
|  | 
 | ||||||
|  | echo 'checking out correct branch' | ||||||
|  | git checkout $branch | ||||||
|  | 
 | ||||||
|  | echo 'determining current mvn version' | ||||||
|  | export currentversion=`mvn org.apache.maven.plugins:maven-help-plugin:2.1.1:evaluate -Dexpression=project.version | grep -v '\['` | ||||||
|  | echo "found $currentversion" | ||||||
|  | 
 | ||||||
|  | echo 'setting version numbers' | ||||||
|  | mvn versions:set -DnewVersion=$version -P vmware -P developer -P systemvm -P simulator -P baremetal -P ucs -Dnonoss | ||||||
|  | mv deps/XenServerJava/pom.xml.versionsBackup deps/XenServerJava/pom.xml | ||||||
|  | perl -pi -e 's/$ENV{'currentversion'}/$ENV{'version'}/' deps/XenServerJava/pom.xml | ||||||
|  | perl -pi -e 's/$ENV{'currentversion'}/$ENV{'version'}/' tools/apidoc/pom.xml | ||||||
|  | git clean -f | ||||||
|  | 
 | ||||||
|  | echo 'commit changes' | ||||||
|  | git commit -a -s -m "Updating pom.xml version numbers for release $version" | ||||||
|  | export commitsh=`git show HEAD | head -n 1 | cut -d ' ' -f 2` | ||||||
|  | 
 | ||||||
|  | echo "committed as $commitsh" | ||||||
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user