Gentoo Archives: gentoo-commits

From: Maxim Koltsov <maksbotan@g.o>
To: gentoo-commits@l.g.o
Subject: [gentoo-commits] dev/maksbotan:master commit in: Documentation/
Date: Sat, 31 Dec 2011 12:34:30
Message-Id: e19e6fcba7e6bba90b07a06f66bbf2c30a08008d.maksbotan@gentoo
1 commit: e19e6fcba7e6bba90b07a06f66bbf2c30a08008d
2 Author: Maxim Koltsov <maksbotan <AT> gentoo <DOT> org>
3 AuthorDate: Sat Dec 31 12:34:43 2011 +0000
4 Commit: Maxim Koltsov <maksbotan <AT> gentoo <DOT> org>
5 CommitDate: Sat Dec 31 12:34:43 2011 +0000
6 URL: http://git.overlays.gentoo.org/gitweb/?p=dev/maksbotan.git;a=commit;h=e19e6fcb
7
8 Implement nice arguments in leech_bump.sh
9
10 ---
11 Documentation/leech_bump.sh | 152 ++++++++++++++++++++++++++++++++++--------
12 1 files changed, 123 insertions(+), 29 deletions(-)
13
14 diff --git a/Documentation/leech_bump.sh b/Documentation/leech_bump.sh
15 index f54422a..abc6fd8 100755
16 --- a/Documentation/leech_bump.sh
17 +++ b/Documentation/leech_bump.sh
18 @@ -18,26 +18,101 @@ changelog_helper() {
19
20 if [[ ${#} -lt 2 && ${1} != "repoman" ]]; then
21 eerror "Not enough arguments"
22 - einfo "Usage: ${0} mode version|message"
23 + einfo "Usage: ${0} mode arguments"
24 einfo "Supported modes are:"
25 einfo " - bump"
26 einfo " - commit"
27 einfo " - repoman"
28 einfo " - delete"
29 einfo " - changelog"
30 + einfo "Supported arguments are:"
31 + einfo " -m --message Commit message"
32 + einfo " -c --changelog Update ChangeLog"
33 + einfo " -N --no-changelog Do not update ChangeLog"
34 + einfo " -v --version Target version for bump"
35 + einfo " -f --bump-from Source version for bump"
36 exit 1
37 fi
38
39 case "${1}" in
40 - bump|commit|repoman|delete|eapi|changelog) ;;
41 + bump|commit|repoman|delete|changelog) ;;
42 *)
43 eerror "Unknown mode ${1}"
44 exit 1
45 ;;
46 esac
47
48 -mode=${1}
49 -version=${2}
50 +mode="${1}"
51 +shift
52 +
53 +while (($#)); do
54 + case "$1" in
55 + -m|--message)
56 + message="${2}"
57 + shift
58 + ;;
59 + -c|--changelog)
60 + run_changelog="1"
61 + shift
62 + ;;
63 + -N|--no-changelog)
64 + run_changelog="0"
65 + shift
66 + ;;
67 + -v|--version)
68 + version="${2}"
69 + shift
70 + ;;
71 + -f|--bump-from)
72 + bump_from="${2}"
73 + shift
74 + ;;
75 + -*)
76 + eerror "Unknown option $1"
77 + ;;
78 + *)
79 + break
80 + ;;
81 + esac
82 + shift
83 +done
84 +
85 +case $mode in
86 + bump)
87 + if [[ -z "${version}" ]]; then
88 + eerror "Please specify target bump version"
89 + exit
90 + fi
91 +
92 + if [[ -z "${bump_from}" ]]; then
93 + bump_from=9999
94 + fi
95 + if [[ ${run_changelog} != "0" ]]; then
96 + run_changelog="1"
97 + fi
98 + ;;
99 + commit)
100 + if [[ -z "${message}" ]]; then
101 + eerror "Please specify commit message"
102 + exit
103 + fi
104 + ;;
105 + delete)
106 + if [[ -z "${version}" ]]; then
107 + eerror "Please specify version to remove"
108 + exit
109 + fi
110 + if [[ ${run_changelog} != "0" ]]; then
111 + run_changelog="1"
112 + fi
113 + ;;
114 + changelog)
115 + if [[ -z ${message} ]]; then
116 + eerror "Please specify ChangeLog message"
117 + exit
118 + fi
119 + ;;
120 +esac
121
122 #checking whether we are in portage tree or overlay
123 if [[ ! -e ./profiles/repo_name ]]; then
124 @@ -64,6 +139,10 @@ for atom in */*; do
125
126 case ${mode} in
127 bump)
128 + if [[ -z "${message}" ]]; then
129 + message="Bump ${atom} to ${version}, thanks to 0xd34df00d"
130 + fi
131 +
132 einfo "Bumping ${atom} to ${version}"
133
134 if [[ -e ${PN}-${version}.ebuild ]]; then
135 @@ -73,33 +152,45 @@ for atom in */*; do
136 continue
137 fi
138
139 - ebegin "Copying ${PN}-9999.ebuild to ${PN}-${version}.ebuild"
140 - cp ${PN}-{9999,${version}}.ebuild
141 + if ! [[ -e "${PN}-${bump_from}.ebuild" ]]; then
142 + ewarn "${atom} lacks ${bump_from} version, skipping bump"
143 + cd - > /dev/null
144 + eoutdent
145 + continue
146 + fi
147 +
148 + ebegin "Copying ${PN}-${bump_from}.ebuild to ${PN}-${version}.ebuild"
149 + cp ${PN}-{${bump_from},${version}}.ebuild
150 eend $?
151
152 ebegin "Setting keywords on ${PN}-${version}.ebuild"
153 - ekeyword ~amd64 ~x86 ${PN}-${version}.ebuild
154 + ekeyword ~all ${PN}-${version}.ebuild > /dev/null
155 eend $?
156
157 ebegin "Running repoman manifest on ${atom}"
158 - repoman manifest
159 + repoman manifest > /dev/null
160 eend $?
161
162 ebegin "Running cvs add ${PN}-${version}.ebuild"
163 - cvs add ${PN}-${version}.ebuild
164 + cvs add ${PN}-${version}.ebuild > /dev/null
165 eend $?
166
167 - ebegin "Generating ChangeLog for ${atom}"
168 - changelog_helper --changelog "${4}" "Bump ${atom} to ${version}, thanks to 0xd34df00d"
169 - eend $?
170 -
171 + if [[ ${run_changelog} == "1" ]]; then
172 + ebegin "Generating ChangeLog for ${atom}"
173 + echangelog ${message} > /dev/null
174 + eend $?
175 + fi
176 ;;
177 commit)
178 - einfo "Commiting ${atom} with message \"${version}\""
179 + einfo "Commiting ${atom} with message \"${message}\""
180
181 - ebegin "Running repoman commit -m \"${version}\""
182 - repoman commit -m "${version}"
183 - eend $?
184 + ebegin "Running repoman commit -m \"${message}\""
185 + if [[ ${run_changelog} == "0" ]]; then
186 + changelog_arg="--echangelog=n"
187 + else
188 + changelog_arg=""
189 + fi
190 + repoman commit ${changelog_arg} -m "${message}"
191
192 ;;
193 repoman)
194 @@ -108,23 +199,26 @@ for atom in */*; do
195
196 ;;
197 delete)
198 - einfo "Deleting ${PN}-${version}"
199 -
200 - rm ${PN}-${version}.ebuild
201 - cvs rm ${PN}-${version}.ebuild
202 - changelog_helper "${3}" "${4}" "Removed old ${PN}-${version}"
203 + if [[ -z "${message}" ]]; then
204 + message="Removed old ${PN}-${version}"
205 + fi
206
207 - ;;
208 - eapi)
209 - einfo "Changing EAPI to 4 in ${atom}-${version}"
210 + ebegin "Deleting ${PN}-${version}"
211 + rm ${PN}-${version}.ebuild
212 + cvs rm ${PN}-${version}.ebuild > /dev/null
213 + eend $?
214
215 - sed -i 's:EAPI="2":EAPI="4":' ${PN}-${version}.ebuild
216 - changelog_helper "${3}" "${4}" "Bumped to EAPI=\"4\""
217 + if [[ ${run_changelog} == "1" ]]; then
218 + ebegin "Generating changelog in ${atom}"
219 + echangelog ${message} > /dev/null
220 + eend $?
221 + fi
222
223 ;;
224 changelog)
225 - einfo "Running echangelog in ${atom}"
226 - echangelog ${version}
227 + ebegin "Running echangelog in ${atom}"
228 + echangelog ${message} > /dev/null
229 + eend $?
230 esac