commit:     93bb7110d713056bd425de553a0f38bcaa4d086f
Author:     Matthew Thode <prometheanfire <AT> gentoo <DOT> org>
AuthorDate: Wed Apr 20 21:29:51 2016 +0000
Commit:     Matt Thode <prometheanfire <AT> gentoo <DOT> org>
CommitDate: Wed Apr 20 21:30:29 2016 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=93bb7110

sys-cluster/cinder: split out storage backends

Package-Manager: portage-2.2.26

 sys-cluster/cinder/cinder-2016.1.9999.ebuild | 25 +++++++++++++++++++------
 sys-cluster/cinder/metadata.xml              |  4 ++++
 2 files changed, 23 insertions(+), 6 deletions(-)

diff --git a/sys-cluster/cinder/cinder-2016.1.9999.ebuild 
b/sys-cluster/cinder/cinder-2016.1.9999.ebuild
index 6c67fbc..b270102 100644
--- a/sys-cluster/cinder/cinder-2016.1.9999.ebuild
+++ b/sys-cluster/cinder/cinder-2016.1.9999.ebuild
@@ -1,4 +1,4 @@
-# Copyright 1999-2015 Gentoo Foundation
+# Copyright 1999-2016 Gentoo Foundation
 # Distributed under the terms of the GNU General Public License v2
 # $Id$
 
@@ -19,8 +19,8 @@ EGIT_BRANCH="stable/mitaka"
 LICENSE="Apache-2.0"
 SLOT="0"
 KEYWORDS=""
-IUSE="+api +scheduler +volume iscsi lvm mysql +memcached postgres sqlite test"
-REQUIRED_USE="|| ( mysql postgres sqlite )"
+IUSE="+api +scheduler +volume infiniband iscsi lio lvm mysql +memcached 
postgres rdma sqlite +tcp test +tgt"
+REQUIRED_USE="|| ( mysql postgres sqlite ) iscsi? ( || ( tgt lio ) ) 
infiniband? ( rdma )"
 
 CDEPEND=">=dev-python/pbr-1.6[${PYTHON_USEDEP}]"
 DEPEND="dev-python/setuptools[${PYTHON_USEDEP}]
@@ -105,7 +105,11 @@ RDEPEND="
        >=dev-python/tooz-1.28.0[${PYTHON_USEDEP}]
        >=dev-python/google-api-python-client-1.4.2[${PYTHON_USEDEP}]
        iscsi? (
-               sys-block/tgt
+               tgt? ( sys-block/tgt )
+               lio? (
+                       sys-block/targetcli 
+                       sys-block/lio-utils
+               )
                sys-block/open-iscsi
        )
        lvm? ( sys-fs/lvm2 )
@@ -119,10 +123,19 @@ RDEPEND="
 
 pkg_setup() {
        linux-info_pkg_setup
-       CONFIG_CHECK_MODULES="ISCSI_TCP"
+       CONFIG_CHECK_MODULES=""
+       if use tcp; then
+               CONFIG_CHECK_MODULES+="SCSI_ISCSI_ATTRS ISCSI_TCP "
+       fi
+       if use rdma; then
+               CONFIG_CHECK_MODULES+="INFINIBAND_ISER "
+       fi
+       if use infiniband; then
+               CONFIG_CHECK_MODULES+="INFINIBAND_IPOIB INFINIBAND_USER_MAD 
INFINIBAND_USER_ACCESS"
+       fi
        if linux_config_exists; then
                for module in ${CONFIG_CHECK_MODULES}; do
-                       linux_chkconfig_present ${module} || ewarn "${module} 
needs to be built as module (builtin doesn't work)"
+                       linux_chkconfig_present ${module} || ewarn "${module} 
needs to be enabled"
                done
        fi
        enewgroup cinder

diff --git a/sys-cluster/cinder/metadata.xml b/sys-cluster/cinder/metadata.xml
index 545b34a..87b3d0f 100644
--- a/sys-cluster/cinder/metadata.xml
+++ b/sys-cluster/cinder/metadata.xml
@@ -12,9 +12,13 @@
   <use>
     <flag name="api">Installs the initscripts for the cinder api service</flag>
     <flag name="iscsi">Allow using an iSCSI remote storage server as pool for 
disk image storage</flag>
+               <flag name="lio">Enable lio storage backend support</flag>
     <flag name="lvm">Allow using the Logical Volume Manager 
(<pkg>sys-fs/lvm2</pkg>) as pool for disk image storage</flag>
     <flag name="memcached">Installs the memcached server</flag>
+               <flag name="rdma">Enable rdma storage backend support</flag>
     <flag name="scheduler">Installs the initscripts for the cinder scheduler 
service</flag>
+               <flag name="tcp">Enables tcp support for the iscsi 
backend</flag>
+               <flag name="tgt">Enable tgt storage backend support</flag>
     <flag name="volume">Installs the initscripts for the cinder volume 
service</flag>
   </use>
   <upstream>

Reply via email to