You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@ofbiz.apache.org by ja...@apache.org on 2012/04/30 10:14:26 UTC

svn commit: r1332096 - in /ofbiz/branches/release12.04: mergefromtrunk.bat mergefromtrunk.sh

Author: jacopoc
Date: Mon Apr 30 08:14:26 2012
New Revision: 1332096

URL: http://svn.apache.org/viewvc?rev=1332096&view=rev
Log:
Added scripts to merge bug fixes from trunk.

Added:
    ofbiz/branches/release12.04/mergefromtrunk.bat   (with props)
    ofbiz/branches/release12.04/mergefromtrunk.sh   (with props)

Added: ofbiz/branches/release12.04/mergefromtrunk.bat
URL: http://svn.apache.org/viewvc/ofbiz/branches/release12.04/mergefromtrunk.bat?rev=1332096&view=auto
==============================================================================
--- ofbiz/branches/release12.04/mergefromtrunk.bat (added)
+++ ofbiz/branches/release12.04/mergefromtrunk.bat Mon Apr 30 08:14:26 2012
@@ -0,0 +1,66 @@
+echo off
+rem #####################################################################
+rem Licensed to the Apache Software Foundation (ASF) under one
+rem or more contributor license agreements.  See the NOTICE file
+rem distributed with this work for additional information
+rem regarding copyright ownership.  The ASF licenses this file
+rem to you under the Apache License, Version 2.0 (the
+rem "License"); you may not use this file except in compliance
+rem with the License.  You may obtain a copy of the License at
+rem
+rem http://www.apache.org/licenses/LICENSE-2.0
+rem
+rem Unless required by applicable law or agreed to in writing,
+rem software distributed under the License is distributed on an
+rem "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+rem KIND, either express or implied.  See the License for the
+rem specific language governing permissions and limitations
+rem under the License.
+rem #####################################################################
+rem interactive DOS version of mergefromtrunk.sh.
+rem to use : launch and pass the trunk version number to merge in release
+
+rem since we have now svn:mergeinfo changing root ("."), we need to update before merging
+svn up
+
+rem version to merge
+set /p version=version to merge :
+set /a prevRev=%version% - 1
+
+rem build the comment
+echo "Applied fix from trunk for revision: %version%" > comment.tmp
+svn log https://svn.apache.org/repos/asf/ofbiz/trunk -r %version% > log.tmp
+copy comment.tmp + log.tmp = comment.tmp
+del log.tmp
+rem keep the comment.tmp file svn ignored. In case of trouble always happier to keep trace.  It will be overidden in next backport.
+
+rem commit the backport to release with comment fom file
+echo on
+svn merge -r %prevRev%:%version% https://svn.apache.org/repos/asf/ofbiz/trunk
+echo off
+
+:menu
+echo y) tests
+echo n) exit
+
+echo Do you want to run tests (else the commit will be done automatically using the comment grabed from trunk by the merge)?
+choice /c:yn 
+if errorlevel = 2 goto commit
+if errorlevel = 1 goto tests
+
+:commit
+echo on
+svn commit -F comment.tmp
+goto exit
+
+:tests
+echo on
+ant clean-all
+ant run-install
+ant run-tests
+echo off
+
+echo You can now do the commit by hand if all is OK. The comment grabed from trunk by the merge is in the file comment.tmp at root
+
+:exit
+pause
\ No newline at end of file

Propchange: ofbiz/branches/release12.04/mergefromtrunk.bat
------------------------------------------------------------------------------
    svn:eol-style = CRLF

Propchange: ofbiz/branches/release12.04/mergefromtrunk.bat
------------------------------------------------------------------------------
    svn:executable = *

Added: ofbiz/branches/release12.04/mergefromtrunk.sh
URL: http://svn.apache.org/viewvc/ofbiz/branches/release12.04/mergefromtrunk.sh?rev=1332096&view=auto
==============================================================================
--- ofbiz/branches/release12.04/mergefromtrunk.sh (added)
+++ ofbiz/branches/release12.04/mergefromtrunk.sh Mon Apr 30 08:14:26 2012
@@ -0,0 +1,119 @@
+#!/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.
+#####################################################################
+set -e
+
+# this script requires a posix shell; namely, $(( math evaluation.
+
+help() {
+	cat << _EOF_
+$0 [options]
+
+mergefromtrunk.sh merge \$rev		Apply revision \$rev from trunk.
+mergefromtrunk.sh test			Run test suite(clean-all, run-install, run-tests).
+mergefromtrunk.sh commit		Commit current fix to svn.
+mergefromtrunk.sh abort			Abort current merge session.
+
+-h | --help		Show this help.
+_EOF_
+}
+
+cmd=""
+rev=""
+while [ $# -gt 0 ]; do
+	case "$1" in
+		(-h|--help)
+			help
+			exit 0
+			;;
+		(-*)
+			echo "Unknown arg ($1)." 1>&2
+			help 1>&2
+			exit 1
+			;;
+		(*)
+			if [ z = "z$cmd" ]; then
+				cmd="$1"
+			else
+				case "$cmd" in
+					(merge)
+						rev="$1"
+						;;
+					(*)
+						echo "Too many arguments." 1>&2
+						help 1>&2
+						exit 1
+						;;
+				esac
+			fi
+			;;
+	esac
+	shift
+done
+case "$cmd" in
+	(merge)
+		if [ z = "z$rev" ]; then
+			echo "Need a revision." 1>&2
+			help 1>&2
+			exit 1
+		fi
+		if [ -d runtime/merge-state ]; then
+			echo "Merge session already started." 1>&2
+			help 1>&2
+			exit 1
+		fi
+		mkdir -p runtime/merge-state
+		echo "$rev" > runtime/merge-state/revision
+		# do not run any of the following commands in a complex
+		# chained pipe; if one of the commands in the pipe fails,
+		# it isn't possible to detect the failure.
+		printf "Applied fix from trunk for revision: %s \n===\n\n" "$rev" > runtime/merge-state/log-message
+		svn log https://svn.apache.org/repos/asf/ofbiz/trunk -r "$rev" > runtime/merge-state/log.txt
+		set -- $(wc -l runtime/merge-state/log.txt)
+		head -n $(($1 - 1)) < runtime/merge-state/log.txt > runtime/merge-state/log.txt.head
+		tail -n $(($1 - 4)) < runtime/merge-state/log.txt.head >> runtime/merge-state/log-message
+		prevRev=$(($rev - 1))
+		svn up
+		svn merge -r "$prevRev:$rev" https://svn.apache.org/repos/asf/ofbiz/trunk 
+		;;
+	(test)
+		ant clean-all
+		ant run-install
+		ant run-tests
+		;;
+	(commit)
+		svn commit -F runtime/merge-state/log-message
+		rm -rf runtime/merge-state
+		;;
+	(abort)
+		svn resolved . -R
+		svn revert . -R
+		rm -rf runtime/merge-state
+		;;
+	("")
+		echo "Need a command and a revision." 1>&2
+		help 1>&2
+		exit 1
+		;;
+	(*)
+		echo "Unknown command($cmd)." 1>&2
+		help 1>&2
+		exit 1
+		;;
+esac

Propchange: ofbiz/branches/release12.04/mergefromtrunk.sh
------------------------------------------------------------------------------
    svn:eol-style = LF

Propchange: ofbiz/branches/release12.04/mergefromtrunk.sh
------------------------------------------------------------------------------
    svn:executable = *

Propchange: ofbiz/branches/release12.04/mergefromtrunk.sh
------------------------------------------------------------------------------
    svn:keywords = Date Rev Author URL Id