Author: jleroux
Date: Mon May 2 21:15:33 2011 New Revision: 1098794 URL: http://svn.apache.org/viewvc?rev=1098794&view=rev Log: Convenient scripts to backport fixes from trunk Added: ofbiz/branches/release11.04/mergefromtrunk.bat (with props) ofbiz/branches/release11.04/mergefromtrunk.sh (with props) Added: ofbiz/branches/release11.04/mergefromtrunk.bat URL: http://svn.apache.org/viewvc/ofbiz/branches/release11.04/mergefromtrunk.bat?rev=1098794&view=auto ============================================================================== --- ofbiz/branches/release11.04/mergefromtrunk.bat (added) +++ ofbiz/branches/release11.04/mergefromtrunk.bat Mon May 2 21:15:33 2011 @@ -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/release11.04/mergefromtrunk.bat ------------------------------------------------------------------------------ svn:eol-style = LF Propchange: ofbiz/branches/release11.04/mergefromtrunk.bat ------------------------------------------------------------------------------ svn:executable = * Propchange: ofbiz/branches/release11.04/mergefromtrunk.bat ------------------------------------------------------------------------------ svn:keywords = Date Rev Author URL Id Added: ofbiz/branches/release11.04/mergefromtrunk.sh URL: http://svn.apache.org/viewvc/ofbiz/branches/release11.04/mergefromtrunk.sh?rev=1098794&view=auto ============================================================================== --- ofbiz/branches/release11.04/mergefromtrunk.sh (added) +++ ofbiz/branches/release11.04/mergefromtrunk.sh Mon May 2 21:15:33 2011 @@ -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/release11.04/mergefromtrunk.sh ------------------------------------------------------------------------------ svn:eol-style = LF Propchange: ofbiz/branches/release11.04/mergefromtrunk.sh ------------------------------------------------------------------------------ svn:executable = * Propchange: ofbiz/branches/release11.04/mergefromtrunk.sh ------------------------------------------------------------------------------ svn:keywords = Date Rev Author URL Id |
Free forum by Nabble | Edit this page |