From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from lists.gentoo.org (pigeon.gentoo.org [208.92.234.80]) by finch.gentoo.org (Postfix) with ESMTP id 1967859CAF for ; Tue, 5 Apr 2016 23:18:54 +0000 (UTC) Received: from pigeon.gentoo.org (localhost [127.0.0.1]) by pigeon.gentoo.org (Postfix) with SMTP id 55685E084C; Tue, 5 Apr 2016 23:18:53 +0000 (UTC) Received: from smtp.gentoo.org (smtp.gentoo.org [140.211.166.183]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by pigeon.gentoo.org (Postfix) with ESMTPS id CF81FE084C for ; Tue, 5 Apr 2016 23:18:52 +0000 (UTC) Received: from oystercatcher.gentoo.org (oystercatcher.gentoo.org [148.251.78.52]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.gentoo.org (Postfix) with ESMTPS id 74060340D77 for ; Tue, 5 Apr 2016 23:18:51 +0000 (UTC) Received: from localhost.localdomain (localhost [127.0.0.1]) by oystercatcher.gentoo.org (Postfix) with ESMTP id B925D7F for ; Tue, 5 Apr 2016 23:18:47 +0000 (UTC) From: "Patrick McLean" To: gentoo-commits@lists.gentoo.org Content-Transfer-Encoding: 8bit Content-type: text/plain; charset=UTF-8 Reply-To: gentoo-dev@lists.gentoo.org, "Patrick McLean" Message-ID: <1459898319.0745f7c477ed0626e71072a4ba0b818bcb887855.chutzpah@gentoo> Subject: [gentoo-commits] repo/gentoo:master commit in: app-emulation/ganeti/files/, app-emulation/ganeti/ X-VCS-Repository: repo/gentoo X-VCS-Files: app-emulation/ganeti/files/ganeti-2.15-kvmd-run-as-daemon-user.patch app-emulation/ganeti/ganeti-2.15.2-r4.ebuild X-VCS-Directories: app-emulation/ganeti/ app-emulation/ganeti/files/ X-VCS-Committer: chutzpah X-VCS-Committer-Name: Patrick McLean X-VCS-Revision: 0745f7c477ed0626e71072a4ba0b818bcb887855 X-VCS-Branch: master Date: Tue, 5 Apr 2016 23:18:47 +0000 (UTC) Precedence: bulk List-Post: List-Help: List-Unsubscribe: List-Subscribe: List-Id: Gentoo Linux mail X-BeenThere: gentoo-commits@lists.gentoo.org X-Archives-Salt: ce44ba05-e935-412a-98a8-9e842fa82abe X-Archives-Hash: 17efc53879915be3f98de86546239ff0 commit: 0745f7c477ed0626e71072a4ba0b818bcb887855 Author: Patrick McLean gentoo org> AuthorDate: Tue Apr 5 23:16:03 2016 +0000 Commit: Patrick McLean gentoo org> CommitDate: Tue Apr 5 23:18:39 2016 +0000 URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=0745f7c4 app-emulation/ganeti: revision bump, fix kvmd user patch Package-Manager: portage-2.2.28 .../ganeti-2.15-kvmd-run-as-daemon-user.patch | 23 +- app-emulation/ganeti/ganeti-2.15.2-r4.ebuild | 312 +++++++++++++++++++++ 2 files changed, 333 insertions(+), 2 deletions(-) diff --git a/app-emulation/ganeti/files/ganeti-2.15-kvmd-run-as-daemon-user.patch b/app-emulation/ganeti/files/ganeti-2.15-kvmd-run-as-daemon-user.patch index bb1bd09..ce347ce 100644 --- a/app-emulation/ganeti/files/ganeti-2.15-kvmd-run-as-daemon-user.patch +++ b/app-emulation/ganeti/files/ganeti-2.15-kvmd-run-as-daemon-user.patch @@ -1,5 +1,24 @@ +diff --git a/Makefile.am b/Makefile.am +index 8910b08..1bbe5fd 100644 +--- a/Makefile.am ++++ b/Makefile.am +@@ -2452,12 +2452,14 @@ $(REPLACE_VARS_SED): $(SHELL_ENV_INIT) Makefile stamp-directories + echo 's#@''PKGLIBDIR@#$(libdir)/ganeti#g'; \ + echo 's#@''GNTMASTERUSER@#$(MASTERD_USER)#g'; \ + echo 's#@''GNTRAPIUSER@#$(RAPI_USER)#g'; \ ++ echo 's#@''GNTKVMDUSER@#$(KVMD_USER)#g'; \ + echo 's#@''GNTCONFDUSER@#$(CONFD_USER)#g'; \ + echo 's#@''GNTWCONFDUSER@#$(WCONFD_USER)#g'; \ + echo 's#@''GNTLUXIDUSER@#$(LUXID_USER)#g'; \ + echo 's#@''GNTNODEDUSER@#$(NODED_USER)#g'; \ + echo 's#@''GNTMONDUSER@#$(MOND_USER)#g'; \ + echo 's#@''GNTRAPIGROUP@#$(RAPI_GROUP)#g'; \ ++ echo 's#@''GNTKVMDGROUP@#$(KVMD_GROUP)#g'; \ + echo 's#@''GNTADMINGROUP@#$(ADMIN_GROUP)#g'; \ + echo 's#@''GNTCONFDGROUP@#$(CONFD_GROUP)#g'; \ + echo 's#@''GNTNODEDGROUP@#$(NODED_GROUP)#g'; \ diff --git a/daemons/daemon-util.in b/daemons/daemon-util.in -index 7636fc9..aec5c92 100644 +index 7636fc9..91ea20b 100644 --- a/daemons/daemon-util.in +++ b/daemons/daemon-util.in @@ -102,6 +102,9 @@ _daemon_usergroup() { @@ -7,7 +26,7 @@ index 7636fc9..aec5c92 100644 echo "@GNTRAPIUSER@:@GNTRAPIGROUP@" ;; + kvmd) -+ echo "@GNTDAEMONSUSER@:@GNTDAEMONSGROUP@" ++ echo "@GNTKVMDUSER@:@GNTKVMDGROUP@" + ;; noded) echo "@GNTNODEDUSER@:@GNTNODEDGROUP@" diff --git a/app-emulation/ganeti/ganeti-2.15.2-r4.ebuild b/app-emulation/ganeti/ganeti-2.15.2-r4.ebuild new file mode 100644 index 0000000..c5dac05 --- /dev/null +++ b/app-emulation/ganeti/ganeti-2.15.2-r4.ebuild @@ -0,0 +1,312 @@ +# Copyright 1999-2016 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Id$ + +EAPI=6 +PYTHON_COMPAT=(python2_7) +PYTHON_REQ_USE="ipv6(+)?" + +inherit user autotools bash-completion-r1 python-single-r1 versionator + +MY_PV="${PV/_rc/~rc}" +MY_PV="${MY_PV/_beta/~beta}" +MY_P="${PN}-${MY_PV}" +SERIES="$(get_version_component_range 1-2)" + +if [[ ${PV} =~ [9]{4,} ]] ; then + EGIT_REPO_URI="git://git.ganeti.org/ganeti.git" + inherit git-2 + KEYWORDS="" +else + SRC_URI="http://downloads.ganeti.org/releases/${SERIES}/${MY_P}.tar.gz" + KEYWORDS="~amd64 ~x86" +fi + +DESCRIPTION="Ganeti is a virtual server management software tool" +HOMEPAGE="http://www.ganeti.org/" + +LICENSE="GPL-2" +SLOT="0" +IUSE="drbd haskell-daemons htools ipv6 kvm lxc monitoring multiple-users rbd syslog test xen" + +REQUIRED_USE="|| ( kvm xen lxc ) + test? ( ipv6 ) + kvm? ( || ( amd64 x86 ) ) + ${PYTHON_REQUIRED_USE}" + +USER_PREFIX="${GANETI_USER_PREFIX:-"gnt-"}" +GROUP_PREFIX="${GANETI_GROUP_PREFIX:-"${USER_PREFIX}"}" + +DEPEND=" + dev-libs/openssl:0 + dev-python/paramiko[${PYTHON_USEDEP}] + dev-python/pyopenssl[${PYTHON_USEDEP}] + dev-python/simplejson[${PYTHON_USEDEP}] + dev-python/pyparsing[${PYTHON_USEDEP}] + dev-python/pyinotify[${PYTHON_USEDEP}] + dev-python/pycurl[${PYTHON_USEDEP}] + dev-python/ipaddr[${PYTHON_USEDEP}] + dev-python/bitarray[${PYTHON_USEDEP}] + dev-python/docutils[${PYTHON_USEDEP}] + net-analyzer/arping + net-analyzer/fping + net-misc/bridge-utils + net-misc/curl[ssl] + net-misc/openssh + net-misc/socat + sys-apps/iproute2 + sys-fs/lvm2 + >=sys-apps/baselayout-2.0 + dev-lang/ghc:0= + dev-haskell/cabal:0= + dev-haskell/cabal-install:0= + >=dev-haskell/mtl-2.1.1:0= + >=dev-haskell/old-time-1.1.0.0:0= + >=dev-haskell/random-1.0.1.1:0= + haskell-daemons? ( >=dev-haskell/text-0.11.1.13:0= ) + >=dev-haskell/transformers-0.3.0.0:0= + + >=dev-haskell/attoparsec-0.10.1.1:0= + =dev-haskell/base64-bytestring-1.0.0.1:0= + =dev-haskell/crypto-4.2.4:0= + =dev-haskell/curl-1.3.7:0= + =dev-haskell/hinotify-0.3.2:0= + =dev-haskell/hslogger-1.1.4:0= + =dev-haskell/json-0.5:0= + =dev-haskell/lens-3.10:0= + =dev-haskell/lifted-base-0.2.0.3:0= + =dev-haskell/monad-control-0.3.1.3:0= + =dev-haskell/network-2.3.0.13:0= + =dev-haskell/parallel-3.2.0.2:3= + =dev-haskell/temporary-1.1.2.3:0= + =dev-haskell/regex-pcre-0.94.2:0= + =dev-haskell/transformers-base-0.4.1:0= + =dev-haskell/utf8-string-0.3.7:0= + =dev-haskell/zlib-0.5.3.3:0= + =dev-haskell/psqueue-1.1:0= + =dev-haskell/snap-core-0.8.1:0= + =dev-haskell/snap-server-0.8.1:0= + =dev-haskell/case-insensitive-0.4.0.1 + + dev-haskell/vector:0= + =app-emulation/xen-3.0 ) + kvm? ( + dev-python/psutil + app-emulation/qemu + ) + lxc? ( app-emulation/lxc ) + drbd? ( + || ( + "${testfile}" + done + + # take the sledgehammer approach to bug #526270 + grep -lr '/bin/sh' "${S}" | xargs -r -- sed -i 's:/bin/sh:/bin/bash:g' + + eapply_user + + [[ ${PV} =~ [9]{4,} ]] && ./autogen.sh + rm autotools/missing + eautoreconf +} + +src_configure () { + # this is kind of a hack to work around the removal of the qemu-kvm wrapper + local kvm_arch + + if use amd64; then + kvm_arch=x86_64 + elif use x86; then + kvm_arch=i386 + elif use kvm; then + die "Could not determine qemu system to use for kvm" + fi + + econf --localstatedir=/var \ + --sharedstatedir=/var \ + --disable-symlinks \ + --with-ssh-initscript=/etc/init.d/sshd \ + --with-export-dir=/var/lib/ganeti-storage/export \ + --with-os-search-path=/usr/share/${PN}/os \ + $(use_enable test haskell-tests) \ + $(usex multiple-users "--with-default-user=" "" "gnt-daemons" "") \ + $(usex multiple-users "--with-user-prefix=" "" "${USER_PREFIX}" "") \ + $(usex multiple-users "--with-default-group=" "" "gnt-daemons" "") \ + $(usex multiple-users "--with-group-prefix=" "" "${GROUP_PREFIX}" "") \ + $(use_enable syslog) \ + $(use_enable monitoring) \ + $(usex kvm '--with-kvm-path=' '' "/usr/bin/qemu-system-${kvm_arch}" '') \ + $(usex haskell-daemons "--enable-confd=haskell" '' '' '') +} + +src_install () { + emake V=1 DESTDIR="${D}" install + + newinitd "${FILESDIR}"/ganeti.initd-r3 ${PN} + newconfd "${FILESDIR}"/ganeti.confd-r2 ${PN} + + if use kvm; then + newinitd "${FILESDIR}"/ganeti-kvm-poweroff.initd ganeti-kvm-poweroff + newconfd "${FILESDIR}"/ganeti-kvm-poweroff.confd ganeti-kvm-poweroff + fi + + # ganeti installs it's own docs in a generic location + rm -rf "${D}"/{usr/share/doc/${PN},run} + + sed -i "s:/usr/$(get_libdir)/${PN}/tools/burnin:burnin:" doc/examples/bash_completion + newbashcomp doc/examples/bash_completion gnt-instance + bashcomp_alias gnt-instance burnin ganeti-{cleaner,confd} \ + h{space,check,scan,info,ail,arep,roller,squeeze,bal} \ + gnt-{os,job,filter,debug,storage,group,node,network,backup,cluster} + + use monitoring && bashcomp_alias gnt-instance mon-collector + + dodoc INSTALL UPGRADE NEWS README doc/*.rst + + docinto html + dodoc -r doc/html/* doc/css/*.css + + docinto examples + dodoc doc/examples/{ganeti.cron,gnt-config-backup} doc/examples/*.ocf + + docinto examples/hooks + dodoc doc/examples/hooks/{ipsec,ethers} + + insinto /etc/cron.d + newins doc/examples/ganeti.cron ${PN} + + insinto /etc/logrotate.d + newins doc/examples/ganeti.logrotate ${PN} + + # need to dodir rather than keepdir here (bug #552482) + dodir /var/lib/${PN} + + keepdir /var/log/${PN}/ + keepdir /usr/share/${PN}/${SERIES}/os/ + keepdir /var/lib/ganeti-storage/{export,file,shared}/ + + dosym ${SERIES} "/usr/share/${PN}/default" + dosym ${SERIES} "/usr/$(get_libdir)/${PN}/default" + + python_fix_shebang "${ED}" "${D}"/usr/"$(get_libdir)"/${PN}/${SERIES} +} + +pkg_postinst() { + if use multiple-users; then + elog "You have enable multiple user support, the users for this must" + elog "be created. You can use the provided tool for this, which is" + elog "located at:" + elog " /usr/$(get_libdir)/${PN}/tools/users-setup" + fi +} + +src_test () { + PATH="${S}/scripts:${S}/src:${PATH}" \ + TMPDIR="/tmp" \ + GANETI_MASTER="$(hostname -f)" \ + emake check || die "emake check failed" +}