Gentoo Archives: gentoo-commits

From: "Patrick McLean (chutzpah)" <chutzpah@g.o>
To: gentoo-commits@l.g.o
Subject: [gentoo-commits] gentoo-x86 commit in app-emulation/ganeti: ganeti-2.12.1-r2.ebuild ChangeLog ganeti-2.12.1-r1.ebuild
Date: Sat, 07 Mar 2015 00:14:01
Message-Id: 20150307001358.9B37D1332D@oystercatcher.gentoo.org
1 chutzpah 15/03/07 00:13:58
2
3 Modified: ChangeLog
4 Added: ganeti-2.12.1-r2.ebuild
5 Removed: ganeti-2.12.1-r1.ebuild
6 Log:
7 Revision bump, update distributive less-than dep to 4.4.
8
9 (Portage version: 2.2.18/cvs/Linux x86_64, signed Manifest commit with key 0xE3F69979BB4B8928DA78E3D17CBF44EF)
10
11 Revision Changes Path
12 1.99 app-emulation/ganeti/ChangeLog
13
14 file : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/app-emulation/ganeti/ChangeLog?rev=1.99&view=markup
15 plain: http://sources.gentoo.org/viewvc.cgi/gentoo-x86/app-emulation/ganeti/ChangeLog?rev=1.99&content-type=text/plain
16 diff : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/app-emulation/ganeti/ChangeLog?r1=1.98&r2=1.99
17
18 Index: ChangeLog
19 ===================================================================
20 RCS file: /var/cvsroot/gentoo-x86/app-emulation/ganeti/ChangeLog,v
21 retrieving revision 1.98
22 retrieving revision 1.99
23 diff -u -r1.98 -r1.99
24 --- ChangeLog 6 Mar 2015 18:27:43 -0000 1.98
25 +++ ChangeLog 7 Mar 2015 00:13:58 -0000 1.99
26 @@ -1,6 +1,12 @@
27 # ChangeLog for app-emulation/ganeti
28 # Copyright 1999-2015 Gentoo Foundation; Distributed under the GPL v2
29 -# $Header: /var/cvsroot/gentoo-x86/app-emulation/ganeti/ChangeLog,v 1.98 2015/03/06 18:27:43 chutzpah Exp $
30 +# $Header: /var/cvsroot/gentoo-x86/app-emulation/ganeti/ChangeLog,v 1.99 2015/03/07 00:13:58 chutzpah Exp $
31 +
32 +*ganeti-2.12.1-r2 (07 Mar 2015)
33 +
34 + 07 Mar 2015; Patrick McLean <chutzpah@g.o> +ganeti-2.12.1-r2.ebuild,
35 + -ganeti-2.12.1-r1.ebuild:
36 + Revision bump, update distributive less-than dep to 4.4.
37
38 *ganeti-2.12.1-r1 (06 Mar 2015)
39
40
41
42
43 1.1 app-emulation/ganeti/ganeti-2.12.1-r2.ebuild
44
45 file : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/app-emulation/ganeti/ganeti-2.12.1-r2.ebuild?rev=1.1&view=markup
46 plain: http://sources.gentoo.org/viewvc.cgi/gentoo-x86/app-emulation/ganeti/ganeti-2.12.1-r2.ebuild?rev=1.1&content-type=text/plain
47
48 Index: ganeti-2.12.1-r2.ebuild
49 ===================================================================
50 # Copyright 1999-2015 Gentoo Foundation
51 # Distributed under the terms of the GNU General Public License v2
52 # $Header: /var/cvsroot/gentoo-x86/app-emulation/ganeti/ganeti-2.12.1-r2.ebuild,v 1.1 2015/03/07 00:13:58 chutzpah Exp $
53
54 EAPI=5
55 PYTHON_COMPAT=(python2_7)
56 use test && PYTHON_REQ_USE="ipv6"
57
58 inherit eutils user confutils autotools bash-completion-r1 python-single-r1 versionator pax-utils
59
60 MY_PV="${PV/_rc/~rc}"
61 #MY_PV="${PV/_beta/~beta}"
62 MY_P="${PN}-${MY_PV}"
63 SERIES="$(get_version_component_range 1-2)"
64
65 if [[ ${PV} == "9999" ]] ; then
66 EGIT_REPO_URI="git://git.ganeti.org/ganeti.git"
67 inherit git-2
68 KEYWORDS=""
69 # you will need to pull in the haskell overlay for pandoc
70 GIT_DEPEND="app-text/pandoc
71 dev-python/docutils
72 dev-python/sphinx
73 media-libs/gd[fontconfig,jpeg,png,truetype]
74 media-gfx/graphviz
75 media-fonts/urw-fonts"
76 else
77 SRC_URI="http://downloads.ganeti.org/releases/${SERIES}/${P}.tar.gz"
78 KEYWORDS="~amd64 ~x86"
79 fi
80
81 DESCRIPTION="Ganeti is a virtual server management software tool"
82 HOMEPAGE="http://code.google.com/p/ganeti/"
83
84 LICENSE="GPL-2"
85 SLOT="0"
86 IUSE="drbd haskell-daemons htools ipv6 kvm lxc monitoring multiple-users rbd syslog test xen"
87 REQUIRED_USE="|| ( kvm xen lxc )"
88
89 USER_PREFIX="${GANETI_USER_PREFIX:-"gnt-"}"
90 GROUP_PREFIX="${GANETI_GROUP_PREFIX:-"${USER_PREFIX}"}"
91
92 # the haskell less-than atoms list are resolver hints, they aren't actual
93 # direct dependencies, just hints to help the resolver fufill the dependency
94 # on an older transformer.
95 # these need to stay until 2.14.0
96 DEPEND="
97 dev-libs/openssl:0
98 dev-python/paramiko[${PYTHON_USEDEP}]
99 dev-python/pyopenssl[${PYTHON_USEDEP}]
100 dev-python/pyparsing[${PYTHON_USEDEP}]
101 dev-python/pycurl[${PYTHON_USEDEP}]
102 dev-python/pyinotify[${PYTHON_USEDEP}]
103 dev-python/simplejson[${PYTHON_USEDEP}]
104 dev-python/ipaddr[${PYTHON_USEDEP}]
105 dev-python/bitarray[${PYTHON_USEDEP}]
106 net-analyzer/arping
107 net-analyzer/fping
108 net-misc/bridge-utils
109 net-misc/curl[ssl]
110 net-misc/openssh
111 net-misc/socat
112 sys-apps/iproute2
113 sys-fs/lvm2
114 >=sys-apps/baselayout-2.0
115 >=dev-lang/ghc-7.6.0:0=
116 >=dev-haskell/json-0.9:0=
117 <dev-haskell/monad-control-1.0.0.0:0=
118 <dev-haskell/transformers-0.4.0:0=
119 dev-haskell/curl:0=
120 dev-haskell/network:0=
121 dev-haskell/parallel:3=
122 >=dev-haskell/hslogger-1.2.6:0=
123 dev-haskell/snap-server:0=
124 dev-haskell/utf8-string:0=
125 dev-haskell/deepseq:0=
126 dev-haskell/attoparsec:0=
127 dev-haskell/crypto:0=
128 dev-haskell/vector:0=
129 dev-haskell/hinotify:0=
130 dev-haskell/regex-pcre-builtin:0=
131 dev-haskell/zlib:0=
132 >=dev-haskell/lifted-base-0.2.3.3:0=
133 <dev-haskell/lens-3.10:0=
134 dev-haskell/base64-bytestring:0=
135 <dev-haskell/mtl-2.2
136 <dev-haskell/contravariant-0.6
137 <dev-haskell/profunctors-4.3
138 <dev-haskell/distributive-0.4.4
139 <dev-haskell/comonad-4.2.2
140 <dev-haskell/transformers-compat-0.3
141 <dev-haskell/transformers-base-0.4.4
142 <dev-haskell/semigroupoids-4.0
143 <dev-haskell/semigroupoid-extras-4.0
144 <dev-haskell/groupoids-4.0
145 xen? ( >=app-emulation/xen-3.0 )
146 kvm? ( app-emulation/qemu )
147 lxc? ( app-emulation/lxc )
148 drbd? ( <sys-cluster/drbd-8.5 )
149 rbd? ( sys-cluster/ceph )
150 ipv6? ( net-misc/ndisc6 )
151 haskell-daemons? ( dev-haskell/text:0= )
152 ${PYTHON_DEPS}
153 ${GIT_DEPEND}"
154 RDEPEND="${DEPEND}
155 !app-emulation/ganeti-htools"
156 DEPEND+="sys-devel/m4
157 test? (
158 dev-python/mock
159 dev-python/pyyaml
160 dev-haskell/haddock:0=
161 dev-haskell/test-framework:0=
162 dev-haskell/test-framework-hunit:0=
163 dev-haskell/test-framework-quickcheck2:0=
164 dev-haskell/temporary:0=
165 sys-apps/fakeroot
166 net-misc/socat
167 dev-util/shelltestrunner
168 )"
169
170 PATCHES=(
171 "${FILESDIR}/${PN}-2.12-start-stop-daemon-args.patch"
172 "${FILESDIR}/${PN}-2.11-add-pgrep.patch"
173 "${FILESDIR}/${PN}-2.12-daemon-util.patch"
174 "${FILESDIR}/${PN}-2.7-fix-tests.patch"
175 "${FILESDIR}/${PN}-2.9-disable-root-tests.patch"
176 "${FILESDIR}/${PN}-2.11-regex-builtin.patch"
177 "${FILESDIR}/${PN}-2.9-skip-cli-test.patch"
178 "${FILESDIR}/${PN}-2.10-rundir.patch"
179 "${FILESDIR}/${PN}-2.12-qemu-enable-kvm.patch"
180 "${FILESDIR}/${PN}-2.11-tests.patch"
181 "${FILESDIR}/${PN}-lockdir.patch"
182 "${FILESDIR}/${PN}-2.11-useradd.patch"
183 "${FILESDIR}/${PN}-2.11-dont-nest-libdir.patch"
184 "${FILESDIR}/${PN}-2.11-dont-print-man-help.patch"
185 "${FILESDIR}/${PN}-2.11-daemon-util-tests.patch"
186 "${FILESDIR}/${PN}-2.12-tests.patch"
187 )
188
189 REQUIRED_USE="kvm? ( || ( amd64 x86 ) )"
190
191 S="${WORKDIR}/${MY_P}"
192
193 pkg_setup () {
194 local user
195 confutils_use_depend_all haskell-daemons htools
196 python-single-r1_pkg_setup
197
198 if use multiple-users; then
199 for user in gnt-{masterd,confd,luxid,rapi,daemons,admin}; do
200 enewgroup ${user}
201 enewuser ${user} -1 -1 -1 ${user}
202 done
203 fi
204 }
205
206 src_prepare() {
207 local testfile
208 epatch "${PATCHES[@]}"
209
210 # not sure why these tests are failing
211 # should remove this on next version bump if possible
212 for testfile in test/py/import-export_unittest.bash; do
213 printf '#!/bin/bash\ntrue\n' > "${testfile}"
214 done
215
216 [[ ${PV} == "9999" ]] && ./autogen.sh
217 rm autotools/missing
218 eautoreconf
219 }
220
221 src_configure () {
222 # this is kind of a hack to work around the removal of the qemu-kvm wrapper
223 local kvm_arch
224
225 if use amd64; then
226 kvm_arch=x86_64
227 elif use x86; then
228 kvm_arch=i386
229 elif use kvm; then
230 die "Could not determine qemu system to use for kvm"
231 fi
232
233 econf --localstatedir=/var \
234 --sharedstatedir=/var \
235 --disable-symlinks \
236 --docdir=/usr/share/doc/${P} \
237 --with-ssh-initscript=/etc/init.d/sshd \
238 --with-export-dir=/var/lib/ganeti-storage/export \
239 --with-os-search-path=/usr/share/${PN}/os \
240 $(usex multiple-users "--with-user-prefix=" "" "${USER_PREFIX}" "") \
241 $(usex multiple-users "--with-group-prefix=" "" "${GROUP_PREFIX}" "") \
242 $(use_enable syslog) \
243 $(use_enable monitoring) \
244 $(usex kvm '--with-kvm-path=' '' "/usr/bin/qemu-system-${kvm_arch}" '') \
245 $(usex haskell-daemons "--enable-confd=haskell" '' '' '')
246 }
247
248 src_install () {
249 emake V=1 DESTDIR="${D}" install || die "emake install failed"
250
251 newinitd "${FILESDIR}"/ganeti.initd-r3 ${PN}
252 newconfd "${FILESDIR}"/ganeti.confd-r2 ${PN}
253
254 if use kvm; then
255 newinitd "${FILESDIR}"/ganeti-kvm-poweroff.initd ganeti-kvm-poweroff
256 newconfd "${FILESDIR}"/ganeti-kvm-poweroff.confd ganeti-kvm-poweroff
257 fi
258
259 # ganeti installs it's own docs in a generic location
260 rm -rf "${D}"/{usr/share/doc/${PN},run}
261
262 newbashcomp doc/examples/bash_completion ganeti
263
264 dodoc INSTALL UPGRADE NEWS README doc/*.rst
265 dohtml -r doc/html/* doc/css/*.css
266
267 docinto examples
268 dodoc doc/examples/{ganeti.cron,gnt-config-backup} doc/examples/*.ocf
269
270 docinto examples/hooks
271 dodoc doc/examples/hooks/{ipsec,ethers}
272
273 insinto /etc/cron.d
274 newins doc/examples/ganeti.cron ${PN}
275
276 insinto /etc/logrotate.d
277 newins doc/examples/ganeti.logrotate ${PN}
278
279 keepdir /var/{lib,log}/${PN}/
280 keepdir /usr/share/${PN}/${SERIES}/os/
281 keepdir /var/lib/ganeti-storage/{export,file,shared}/
282
283 dosym ${SERIES} "/usr/share/${PN}/default"
284 dosym ${SERIES} "/usr/$(get_libdir)/${PN}/default"
285
286 python_fix_shebang "${ED}" "${D}"/usr/"$(get_libdir)"/${PN}/${SERIES}
287 }
288
289 pkg_postinst() {
290 if use multiple-users; then
291 elog "You have enable multiple user support, the users for this must"
292 elog "be created. You can use the provided tool for this, which is"
293 elog "located at:"
294 elog " /usr/$(get_libdir)/${PN}/tools/users-setup"
295 fi
296 }
297
298 src_test () {
299 PATH="${S}/scripts:${S}/src:${PATH}" \
300 TMPDIR="/tmp" \
301 emake check || die "emake check failed"
302 }