From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from pigeon.gentoo.org ([208.92.234.80] helo=lists.gentoo.org) by finch.gentoo.org with esmtp (Exim 4.60) (envelope-from ) id 1Rgy8s-000681-F2 for garchives@archives.gentoo.org; Sat, 31 Dec 2011 12:34:30 +0000 Received: from pigeon.gentoo.org (localhost [127.0.0.1]) by pigeon.gentoo.org (Postfix) with SMTP id 5371421C04D; Sat, 31 Dec 2011 12:34:23 +0000 (UTC) Received: from smtp.gentoo.org (smtp.gentoo.org [140.211.166.183]) by pigeon.gentoo.org (Postfix) with ESMTP id 0E07B21C04D for ; Sat, 31 Dec 2011 12:34:22 +0000 (UTC) Received: from pelican.gentoo.org (unknown [66.219.59.40]) (using TLSv1 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by smtp.gentoo.org (Postfix) with ESMTPS id 7175D1B4018 for ; Sat, 31 Dec 2011 12:34:22 +0000 (UTC) Received: from localhost.localdomain (localhost [127.0.0.1]) by pelican.gentoo.org (Postfix) with ESMTP id DBF9B8004C for ; Sat, 31 Dec 2011 12:34:21 +0000 (UTC) From: "Maxim Koltsov" To: gentoo-commits@lists.gentoo.org Content-type: text/plain; charset=UTF-8 Reply-To: gentoo-dev@lists.gentoo.org, "Maxim Koltsov" Message-ID: Subject: [gentoo-commits] dev/maksbotan:master commit in: Documentation/ X-VCS-Repository: dev/maksbotan X-VCS-Files: Documentation/leech_bump.sh X-VCS-Directories: Documentation/ X-VCS-Committer: maksbotan X-VCS-Committer-Name: Maxim Koltsov X-VCS-Revision: e19e6fcba7e6bba90b07a06f66bbf2c30a08008d Date: Sat, 31 Dec 2011 12:34:21 +0000 (UTC) Precedence: bulk List-Post: List-Help: List-Unsubscribe: List-Subscribe: List-Id: Gentoo Linux mail X-BeenThere: gentoo-commits@lists.gentoo.org Content-Transfer-Encoding: quoted-printable X-Archives-Salt: 56b5f85e-1971-4b9b-8576-7cd79430ab8e X-Archives-Hash: 8627914f4875cb88650a9b727c8c246b commit: e19e6fcba7e6bba90b07a06f66bbf2c30a08008d Author: Maxim Koltsov gentoo org> AuthorDate: Sat Dec 31 12:34:43 2011 +0000 Commit: Maxim Koltsov gentoo org> CommitDate: Sat Dec 31 12:34:43 2011 +0000 URL: http://git.overlays.gentoo.org/gitweb/?p=3Ddev/maksbotan.git;= a=3Dcommit;h=3De19e6fcb Implement nice arguments in leech_bump.sh --- Documentation/leech_bump.sh | 152 ++++++++++++++++++++++++++++++++++---= ----- 1 files changed, 123 insertions(+), 29 deletions(-) diff --git a/Documentation/leech_bump.sh b/Documentation/leech_bump.sh index f54422a..abc6fd8 100755 --- a/Documentation/leech_bump.sh +++ b/Documentation/leech_bump.sh @@ -18,26 +18,101 @@ changelog_helper() { =20 if [[ ${#} -lt 2 && ${1} !=3D "repoman" ]]; then eerror "Not enough arguments" - einfo "Usage: ${0} mode version|message" + einfo "Usage: ${0} mode arguments" einfo "Supported modes are:" einfo " - bump" einfo " - commit" einfo " - repoman" einfo " - delete" einfo " - changelog" + einfo "Supported arguments are:" + einfo " -m --message Commit message" + einfo " -c --changelog Update ChangeLog" + einfo " -N --no-changelog Do not update ChangeLog" + einfo " -v --version Target version for bump" + einfo " -f --bump-from Source version for bump" exit 1 fi =20 case "${1}" in - bump|commit|repoman|delete|eapi|changelog) ;; + bump|commit|repoman|delete|changelog) ;; *) eerror "Unknown mode ${1}" exit 1 ;; esac =20 -mode=3D${1} -version=3D${2} +mode=3D"${1}" +shift + +while (($#)); do + case "$1" in + -m|--message) + message=3D"${2}" + shift + ;; + -c|--changelog) + run_changelog=3D"1" + shift + ;; + -N|--no-changelog) + run_changelog=3D"0" + shift + ;; + -v|--version) + version=3D"${2}" + shift + ;; + -f|--bump-from) + bump_from=3D"${2}" + shift + ;; + -*) + eerror "Unknown option $1" + ;; + *) + break + ;; + esac + shift +done + +case $mode in + bump) + if [[ -z "${version}" ]]; then + eerror "Please specify target bump version" + exit + fi + + if [[ -z "${bump_from}" ]]; then + bump_from=3D9999 + fi + if [[ ${run_changelog} !=3D "0" ]]; then + run_changelog=3D"1" + fi + ;; + commit) + if [[ -z "${message}" ]]; then + eerror "Please specify commit message" + exit + fi + ;; + delete) + if [[ -z "${version}" ]]; then + eerror "Please specify version to remove" + exit + fi + if [[ ${run_changelog} !=3D "0" ]]; then + run_changelog=3D"1" + fi + ;; + changelog) + if [[ -z ${message} ]]; then + eerror "Please specify ChangeLog message" + exit + fi + ;; +esac =20 #checking whether we are in portage tree or overlay if [[ ! -e ./profiles/repo_name ]]; then @@ -64,6 +139,10 @@ for atom in */*; do =20 case ${mode} in bump) + if [[ -z "${message}" ]]; then + message=3D"Bump ${atom} to ${version}, thanks to 0xd34df00d" + fi + einfo "Bumping ${atom} to ${version}" =20 if [[ -e ${PN}-${version}.ebuild ]]; then @@ -73,33 +152,45 @@ for atom in */*; do continue fi =20 - ebegin "Copying ${PN}-9999.ebuild to ${PN}-${version}.ebuild" - cp ${PN}-{9999,${version}}.ebuild + if ! [[ -e "${PN}-${bump_from}.ebuild" ]]; then + ewarn "${atom} lacks ${bump_from} version, skipping bump" + cd - > /dev/null + eoutdent + continue + fi + + ebegin "Copying ${PN}-${bump_from}.ebuild to ${PN}-${version}.eb= uild" + cp ${PN}-{${bump_from},${version}}.ebuild eend $? =20 ebegin "Setting keywords on ${PN}-${version}.ebuild" - ekeyword ~amd64 ~x86 ${PN}-${version}.ebuild + ekeyword ~all ${PN}-${version}.ebuild > /dev/null eend $? =20 ebegin "Running repoman manifest on ${atom}" - repoman manifest + repoman manifest > /dev/null eend $? =20 ebegin "Running cvs add ${PN}-${version}.ebuild" - cvs add ${PN}-${version}.ebuild + cvs add ${PN}-${version}.ebuild > /dev/null eend $? =20 - ebegin "Generating ChangeLog for ${atom}" - changelog_helper --changelog "${4}" "Bump ${atom} to ${version},= thanks to 0xd34df00d" - eend $? - =20 + if [[ ${run_changelog} =3D=3D "1" ]]; then + ebegin "Generating ChangeLog for ${atom}" + echangelog ${message} > /dev/null + eend $? + fi ;; commit) - einfo "Commiting ${atom} with message \"${version}\"" + einfo "Commiting ${atom} with message \"${message}\"" =20 - ebegin "Running repoman commit -m \"${version}\"" - repoman commit -m "${version}" - eend $? + ebegin "Running repoman commit -m \"${message}\"" + if [[ ${run_changelog} =3D=3D "0" ]]; then + changelog_arg=3D"--echangelog=3Dn" + else + changelog_arg=3D"" + fi + repoman commit ${changelog_arg} -m "${message}" =20 ;; repoman) @@ -108,23 +199,26 @@ for atom in */*; do =20 ;; delete) - einfo "Deleting ${PN}-${version}" - =20 - rm ${PN}-${version}.ebuild - cvs rm ${PN}-${version}.ebuild - changelog_helper "${3}" "${4}" "Removed old ${PN}-${version}" + if [[ -z "${message}" ]]; then + message=3D"Removed old ${PN}-${version}" + fi =20 - ;; - eapi) - einfo "Changing EAPI to 4 in ${atom}-${version}" + ebegin "Deleting ${PN}-${version}" + rm ${PN}-${version}.ebuild + cvs rm ${PN}-${version}.ebuild > /dev/null + eend $? =20 - sed -i 's:EAPI=3D"2":EAPI=3D"4":' ${PN}-${version}.ebuild - changelog_helper "${3}" "${4}" "Bumped to EAPI=3D\"4\"" + if [[ ${run_changelog} =3D=3D "1" ]]; then + ebegin "Generating changelog in ${atom}" + echangelog ${message} > /dev/null + eend $? + fi =20 ;; changelog) - einfo "Running echangelog in ${atom}" - echangelog ${version} + ebegin "Running echangelog in ${atom}" + echangelog ${message} > /dev/null + eend $? esac =20 =20