app-emulation/ganeti-instance-image: Revision bump, add patch to fix with new lvm2
authorPatrick McLean <chutzpah@gentoo.org>
Sat, 8 Sep 2018 00:26:05 +0000 (17:26 -0700)
committerPatrick McLean <chutzpah@gentoo.org>
Sat, 8 Sep 2018 00:29:04 +0000 (17:29 -0700)
Package-Manager: Portage-2.3.49, Repoman-2.3.10

app-emulation/ganeti-instance-image/files/ganeti-2.15.2-os-image-common_sh.patch [new file with mode: 0644]
app-emulation/ganeti-instance-image/ganeti-instance-image-0.6-r1.ebuild [new file with mode: 0644]

diff --git a/app-emulation/ganeti-instance-image/files/ganeti-2.15.2-os-image-common_sh.patch b/app-emulation/ganeti-instance-image/files/ganeti-2.15.2-os-image-common_sh.patch
new file mode 100644 (file)
index 0000000..73e7ab8
--- /dev/null
@@ -0,0 +1,43 @@
+--- a/common.sh.in        2018-09-05 23:23:07.811528673 +0000
++++ b/common.sh.in        2018-09-06 00:10:36.993693654 +0000
+@@ -284,13 +284,13 @@
+     blockdev="$1"
+     filesystem_dev_base=`$KPARTX -l -p- $blockdev | \
+                             grep -m 1 -- "-1.*$blockdev" | \
+-                            $AWK '{print $1}'`
++                            $AWK '{print $1}' | sed -r -e 's/-([0-9]{1,2})$/p\1/g'`
+     if [ -z "$filesystem_dev_base" ]; then
+         log_error "Cannot interpret kpartx output and get partition mapping"
+         exit 1
+     fi
+     $KPARTX -a -p- $blockdev > /dev/null
+-    filesystem_dev="/dev/mapper/${filesystem_dev_base/%-1/}"
++    filesystem_dev="/dev/mapper/${filesystem_dev_base/%p1/}"
+     if [ ! -b "/dev/mapper/$filesystem_dev_base" ]; then
+         log_error "Can't find kpartx mapped partition: /dev/mapper/$filesystem_dev_base"
+         exit 1
+@@ -302,17 +302,17 @@
+     filesystem_dev="$1"
+     partition="$2"
+     if [ "${SWAP}" = "yes" -a -z "${KERNEL_PATH}" ] ; then
+-        boot_dev="${filesystem_dev}-1"
+-        swap_dev="${filesystem_dev}-2"
+-        root_dev="${filesystem_dev}-3"
++        boot_dev="${filesystem_dev}p1"
++        swap_dev="${filesystem_dev}p2"
++        root_dev="${filesystem_dev}p3"
+     elif [ "${SWAP}" = "no" -a -z "${KERNEL_PATH}" ] ; then
+-        boot_dev="${filesystem_dev}-1"
+-        root_dev="${filesystem_dev}-2"
++        boot_dev="${filesystem_dev}p1"
++        root_dev="${filesystem_dev}p2"
+     elif [ "${SWAP}" = "yes" -a -n "${KERNEL_PATH}" ] ; then
+-        swap_dev="${filesystem_dev}-1"
++        swap_dev="${filesystem_dev}p1"
+         root_dev="${filesystem_dev}-2"
+     elif [ "${SWAP}" = "no" -a -n "${KERNEL_PATH}" ] ; then
+-        root_dev="${filesystem_dev}-1"
++        root_dev="${filesystem_dev}p1"
+     fi
+     echo "$(eval "echo \${$(echo ${partition}_dev)"})"
+ }
diff --git a/app-emulation/ganeti-instance-image/ganeti-instance-image-0.6-r1.ebuild b/app-emulation/ganeti-instance-image/ganeti-instance-image-0.6-r1.ebuild
new file mode 100644 (file)
index 0000000..6d10cc0
--- /dev/null
@@ -0,0 +1,52 @@
+# Copyright 1999-2018 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+if [[ ${PV} == "9999" ]]; then
+       EGIT_REPO_URI="git://git.osuosl.org/${PN}.git"
+       EGIT_BRANCH="master"
+       inherit git-r3 autotools
+else
+       SRC_URI="http://ftp.osuosl.org/pub/osl/ganeti-instance-image/${P}.tar.gz"
+fi
+
+DESCRIPTION="Scripts to build out CD or image based VMs using Ganeti"
+HOMEPAGE="http://code.osuosl.org/projects/ganeti-image"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+IUSE=""
+
+DEPEND=""
+RDEPEND="app-arch/dump
+       >=app-emulation/ganeti-2.15.2-r7
+       app-emulation/qemu
+       sys-apps/util-linux
+       sys-fs/multipath-tools
+       sys-fs/e2fsprogs"
+
+PATCHES=(
+       "${FILESDIR}/ganeti-2.15.2-os-image-common_sh.patch"
+)
+
+src_prepare() {
+       default
+       if [[ ${PV} == "9999" ]]; then
+               eautoreconf
+       fi
+}
+
+src_configure() {
+       econf --with-default-dir=/etc/ganeti
+}
+
+src_install() {
+       emake DESTDIR="${D}" install || die "install failed"
+
+       rm -rf "${D}"/usr/share/doc/${PN}
+       dodoc README.markdown NEWS ChangeLog
+       insinto /etc/ganeti
+       newins defaults ${PN}
+}