commit:     7dca0fdcc3589079f30b13817badd6b59bbbd1a9
Author:     Matthew Thode <prometheanfire <AT> gentoo <DOT> org>
AuthorDate: Thu Mar 16 16:11:45 2017 +0000
Commit:     Matt Thode <prometheanfire <AT> gentoo <DOT> org>
CommitDate: Thu Mar 16 16:11:45 2017 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=7dca0fdc

sys-cluster/nova: 15.0.1 bup just for DrEeevil

Package-Manager: Portage-2.3.3, Repoman-2.3.1

 sys-cluster/nova/Manifest           |   2 +
 sys-cluster/nova/nova-15.0.1.ebuild | 230 ++++++++++++++++++++++++++++++++++++
 2 files changed, 232 insertions(+)

diff --git a/sys-cluster/nova/Manifest b/sys-cluster/nova/Manifest
index 205c9698236..3ee503e1abd 100644
--- a/sys-cluster/nova/Manifest
+++ b/sys-cluster/nova/Manifest
@@ -5,5 +5,7 @@ DIST nova-13.1.3.tar.gz 5427465 SHA256 
48af5378d8b0efb3479b8eb2a440f4f7dab01e763
 DIST nova-14.0.3.tar.gz 5584926 SHA256 
e5a93e747824cb77a0d389a3e74eaaa63954048530df942533c68bda1534e826 SHA512 
9fff4b9370799f05c8d0984d19020ff794ffec3924e607eb2677e29e87990c32f9132e0f70137e8bb2142140476cc612e0dfdb1abeb3a8e6ae14b98703b1dffc
 WHIRLPOOL 
e73cfeb570722e081ee28f4ff06ef3175af93e2d82c1bced374178192296186d387c23e0b1d835253e3a33e70ee5681f70c0fc7867a6f080d16083dd4364b210
 DIST nova-14.0.4.tar.gz 5586891 SHA256 
c7f4b14e5fa50a6a232d31a1561e6ea7b9fc6877d244d3ee71e47bf26ee8e5aa SHA512 
e66a74faf6dc7e389ae892b992071dc9e1b41500a3d597aeef6367beb4008d9d39827f0cad53619c8e30d1fb309f2edb127519a3563372b0de8c35b9d90a7944
 WHIRLPOOL 
de3dc8cc7358570b031abd693ae98771f00489ea7ead8d9f8169388a0ba708e68b52bcde976f202682469d338fea92d3edb1b551019b38b6eb391966d112f177
 DIST nova-15.0.0.tar.gz 5730683 SHA256 
f3769208225ba7257273f7a97ffa2bc8cfa2372f61082fbcbae9b0fd5fcb0aa6 SHA512 
999e4ca1de8fe1cee73cfb559fa6ad2f38e55937541d3ddb7f76a773d2056bfdbbbf490efe959acd09d4fb456c186b1601a47eaa4e794ec8067458904b7182af
 WHIRLPOOL 
ce7d396e7fad0dd73d40922dfc2d6fc382954daea77325b57d651295fb76c60a0baa7d3efac34a3e6938a25007d0a1ab2a749e952080e08ab032f89ddc7a0aeb
+DIST nova-15.0.1.tar.gz 5734645 SHA256 
9e6d41c63f7774349f4ce10c0640fafcba81e2ae8f6525ea3817e376581b599c SHA512 
6ad9fe16a35ba07c0875e5d07e2f18adc015d4ca77df587eaaef0242f178310a915dadfd32f41d47a629013df9382ea6a23ea7e9c05006af7570583b3e9415c4
 WHIRLPOOL 
84b474d5772be8b88cace4e18be76976f43f9d8935daa594186e8f4e49269ebb349e4c5d26865e1971e04ca6e85f4a64bac18e2a66cd4e117d1782bf9bea0a4a
 DIST nova.conf.sample-15.0.0 344760 SHA256 
09c086c981505a6e775a4e2073856b1d38998d97b92062f019095f98d7d26e1f SHA512 
5c55c752c8752876acbd8d2348abb39d6a8449f637ad2a6515f5c9f4619dbad73c4ae7a6ac4cd164656a0c466ed000a4d68a291050a03a5641fe96b3dd7f732d
 WHIRLPOOL 
22f174d402e6d9c3e1e18da0cdec883209013083c66eb2b5a2921546fb609c1a19de594832afa8f40ee26a999f2596c563eb16ba1a08035895b5d6c72a729125
+DIST nova.conf.sample-15.0.1 344760 SHA256 
09c086c981505a6e775a4e2073856b1d38998d97b92062f019095f98d7d26e1f SHA512 
5c55c752c8752876acbd8d2348abb39d6a8449f637ad2a6515f5c9f4619dbad73c4ae7a6ac4cd164656a0c466ed000a4d68a291050a03a5641fe96b3dd7f732d
 WHIRLPOOL 
22f174d402e6d9c3e1e18da0cdec883209013083c66eb2b5a2921546fb609c1a19de594832afa8f40ee26a999f2596c563eb16ba1a08035895b5d6c72a729125
 DIST nova.conf.sample-2017.1.9999 344760 SHA256 
09c086c981505a6e775a4e2073856b1d38998d97b92062f019095f98d7d26e1f SHA512 
5c55c752c8752876acbd8d2348abb39d6a8449f637ad2a6515f5c9f4619dbad73c4ae7a6ac4cd164656a0c466ed000a4d68a291050a03a5641fe96b3dd7f732d
 WHIRLPOOL 
22f174d402e6d9c3e1e18da0cdec883209013083c66eb2b5a2921546fb609c1a19de594832afa8f40ee26a999f2596c563eb16ba1a08035895b5d6c72a729125

diff --git a/sys-cluster/nova/nova-15.0.1.ebuild 
b/sys-cluster/nova/nova-15.0.1.ebuild
new file mode 100644
index 00000000000..8091ac78fa2
--- /dev/null
+++ b/sys-cluster/nova/nova-15.0.1.ebuild
@@ -0,0 +1,230 @@
+# Copyright 1999-2017 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+PYTHON_COMPAT=( python2_7 python3_4 )
+
+inherit distutils-r1 eutils linux-info multilib user
+
+DESCRIPTION="Cloud computing fabric controller (main part of an IaaS system) 
in Python"
+HOMEPAGE="https://launchpad.net/nova";
+SRC_URI="https://dev.gentoo.org/~prometheanfire/dist/openstack/nova/ocata/nova.conf.sample
 -> nova.conf.sample-${PV}
+       https://tarballs.openstack.org/${PN}/${P}.tar.gz";
+
+LICENSE="Apache-2.0"
+SLOT="0"
+KEYWORDS="~amd64 ~arm64 ~x86"
+IUSE="+compute compute-only iscsi +memcached mysql +novncproxy openvswitch 
postgres +rabbitmq sqlite"
+REQUIRED_USE="
+       !compute-only? ( || ( mysql postgres sqlite ) )
+       compute-only? ( compute !rabbitmq !memcached !mysql !postgres !sqlite )"
+
+CDEPEND="
+       >=dev-python/setuptools-16.0[${PYTHON_USEDEP}]
+       !~dev-python/setuptools-24.0.0[${PYTHON_USEDEP}]
+       !~dev-python/setuptools-34.0.0[${PYTHON_USEDEP}]
+       !~dev-python/setuptools-34.0.1[${PYTHON_USEDEP}]
+       !~dev-python/setuptools-34.0.2[${PYTHON_USEDEP}]
+       !~dev-python/setuptools-34.0.3[${PYTHON_USEDEP}]
+       !~dev-python/setuptools-34.1.0[${PYTHON_USEDEP}]
+       !~dev-python/setuptools-34.1.1[${PYTHON_USEDEP}]
+       !~dev-python/setuptools-34.2.0[${PYTHON_USEDEP}]
+       !~dev-python/setuptools-34.3.0[${PYTHON_USEDEP}]
+       >=dev-python/pbr-1.8[${PYTHON_USEDEP}]
+       <dev-python/pbr-2.0.0[${PYTHON_USEDEP}]"
+DEPEND="
+       ${CDEPEND}
+       app-admin/sudo"
+
+RDEPEND="
+       ${CDEPEND}
+       compute-only? (
+               >=dev-python/sqlalchemy-1.0.10[${PYTHON_USEDEP}]
+               <dev-python/sqlalchemy-1.1.0[${PYTHON_USEDEP}]
+       )
+       sqlite? (
+               >=dev-python/sqlalchemy-1.0.10[sqlite,${PYTHON_USEDEP}]
+               <dev-python/sqlalchemy-1.1.0[sqlite,${PYTHON_USEDEP}]
+       )
+       mysql? (
+               >=dev-python/pymysql-0.7.6[${PYTHON_USEDEP}]
+               !~dev-python/pymysql-0.7.7[${PYTHON_USEDEP}]
+               >=dev-python/sqlalchemy-1.0.10[${PYTHON_USEDEP}]
+               <dev-python/sqlalchemy-1.1.0[${PYTHON_USEDEP}]
+       )
+       postgres? (
+               >=dev-python/psycopg-2.5.0[${PYTHON_USEDEP}]
+               >=dev-python/sqlalchemy-1.0.10[${PYTHON_USEDEP}]
+               <dev-python/sqlalchemy-1.1.0[${PYTHON_USEDEP}]
+       )
+       >=dev-python/decorator-3.4.0[${PYTHON_USEDEP}]
+       >=dev-python/eventlet-0.18.4[${PYTHON_USEDEP}]
+       >=dev-python/jinja-2.8[${PYTHON_USEDEP}]
+       !~dev-python/jinja-2.9.0[${PYTHON_USEDEP}]
+       !~dev-python/jinja-2.9.1[${PYTHON_USEDEP}]
+       !~dev-python/jinja-2.9.2[${PYTHON_USEDEP}]
+       !~dev-python/jinja-2.9.3[${PYTHON_USEDEP}]
+       !~dev-python/jinja-2.9.4[${PYTHON_USEDEP}]
+       >=dev-python/keystonemiddleware-4.12.0[${PYTHON_USEDEP}]
+       >=dev-python/lxml-2.3[${PYTHON_USEDEP}]
+       !~dev-python/lxml-3.7.0[${PYTHON_USEDEP}]
+       >=dev-python/routes-1.12.3[${PYTHON_USEDEP}]
+       !~dev-python/routes-2.0[${PYTHON_USEDEP}]
+       !~dev-python/routes-2.1[$(python_gen_usedep 'python2_7')]
+       !~dev-python/routes-2.3[${PYTHON_USEDEP}]
+       >=dev-python/cryptography-1.0[${PYTHON_USEDEP}]
+       !~dev-python/cryptography-1.3.0[${PYTHON_USEDEP}]
+       >=dev-python/webob-1.6.0[${PYTHON_USEDEP}]
+       >=dev-python/greenlet-0.3.2[${PYTHON_USEDEP}]
+       >=dev-python/pastedeploy-1.5.0-r1[${PYTHON_USEDEP}]
+       dev-python/paste[${PYTHON_USEDEP}]
+       >=dev-python/prettytable-0.7.1[${PYTHON_USEDEP}]
+       <dev-python/prettytable-0.8[${PYTHON_USEDEP}]
+       >=dev-python/sqlalchemy-migrate-0.9.6[${PYTHON_USEDEP}]
+       >=dev-python/netaddr-0.7.13[${PYTHON_USEDEP}]
+       !~dev-python/netaddr-0.7.16[${PYTHON_USEDEP}]
+       >=dev-python/netifaces-0.10.4[${PYTHON_USEDEP}]
+       >=dev-python/paramiko-2.0[${PYTHON_USEDEP}]
+       >=dev-python/Babel-2.3.4[${PYTHON_USEDEP}]
+       >=dev-python/iso8601-0.1.11[${PYTHON_USEDEP}]
+       >=dev-python/jsonschema-2.0.0[${PYTHON_USEDEP}]
+       !~dev-python/jsonschema-2.5.0[${PYTHON_USEDEP}]
+       <dev-python/jsonschema-3.0.0[${PYTHON_USEDEP}]
+       >=dev-python/python-cinderclient-1.6.0[${PYTHON_USEDEP}]
+       !~dev-python/python-cinderclient-1.7.0[${PYTHON_USEDEP}]
+       !~dev-python/python-cinderclient-1.7.1[${PYTHON_USEDEP}]
+       >=dev-python/keystoneauth-2.18.0[${PYTHON_USEDEP}]
+       >=dev-python/python-neutronclient-5.1.0[${PYTHON_USEDEP}]
+       >=dev-python/python-glanceclient-2.5.0[${PYTHON_USEDEP}]
+       >=dev-python/requests-2.10.0[${PYTHON_USEDEP}]
+       !~dev-python/requests-2.12.2[${PYTHON_USEDEP}]
+       >=dev-python/six-1.9.0[${PYTHON_USEDEP}]
+       >=dev-python/stevedore-1.17.1[${PYTHON_USEDEP}]
+       >=dev-python/websockify-0.8.0[${PYTHON_USEDEP}]
+       >=dev-python/oslo-cache-1.5.0[${PYTHON_USEDEP}]
+       >=dev-python/oslo-concurrency-3.8.0[${PYTHON_USEDEP}]
+       >=dev-python/oslo-config-3.14.0[${PYTHON_USEDEP}]
+       !~dev-python/oslo-config-3.18.0[${PYTHON_USEDEP}]
+       >=dev-python/oslo-context-2.9.0[${PYTHON_USEDEP}]
+       >=dev-python/oslo-log-3.11.0[${PYTHON_USEDEP}]
+       >=dev-python/oslo-reports-0.6.0[${PYTHON_USEDEP}]
+       >=dev-python/oslo-serialization-1.10.0[${PYTHON_USEDEP}]
+       >=dev-python/oslo-utils-3.18.0[${PYTHON_USEDEP}]
+       >=dev-python/oslo-db-4.15.0[${PYTHON_USEDEP}]
+       >=dev-python/oslo-rootwrap-5.0.0[${PYTHON_USEDEP}]
+       >=dev-python/oslo-messaging-5.14.0[${PYTHON_USEDEP}]
+       >=dev-python/oslo-policy-1.17.0[${PYTHON_USEDEP}]
+       >=dev-python/oslo-privsep-1.9.0[${PYTHON_USEDEP}]
+       >=dev-python/oslo-i18n-2.1.0[${PYTHON_USEDEP}]
+       >=dev-python/oslo-service-1.10.0[${PYTHON_USEDEP}]
+       >=dev-python/rfc3986-0.3.1[${PYTHON_USEDEP}]
+       >=dev-python/oslo-middleware-3.0.0[${PYTHON_USEDEP}]
+       >=dev-python/psutil-3.0.1[${PYTHON_USEDEP}]
+       >=dev-python/oslo-versionedobjects-1.17.0[${PYTHON_USEDEP}]
+       >=dev-python/os-brick-1.8.0[${PYTHON_USEDEP}]
+       >=dev-python/os-vif-1.4.0[${PYTHON_USEDEP}]
+       >=dev-python/os-win-1.4.0[${PYTHON_USEDEP}]
+       >=dev-python/castellan-0.4.0[${PYTHON_USEDEP}]
+       >=dev-python/microversion-parse-0.1.2[${PYTHON_USEDEP}]
+       >=dev-python/os-xenapi-0.1.1[${PYTHON_USEDEP}]
+       dev-python/libvirt-python[${PYTHON_USEDEP}]
+       app-emulation/libvirt[iscsi?]
+       novncproxy? ( www-apps/novnc )
+       sys-apps/iproute2
+       openvswitch? ( net-misc/openvswitch )
+       rabbitmq? ( net-misc/rabbitmq-server )
+       memcached? (
+               net-misc/memcached
+               >=dev-python/python-memcached-1.58
+       )
+       sys-fs/sysfsutils
+       sys-fs/multipath-tools
+       net-misc/bridge-utils
+       compute? (
+               app-cdr/cdrtools
+               sys-fs/dosfstools
+               app-emulation/qemu
+       )
+       iscsi? (
+               sys-fs/lsscsi
+               >=sys-block/open-iscsi-2.0.873-r1
+       )"
+
+#PATCHES=(
+#)
+
+pkg_setup() {
+       linux-info_pkg_setup
+       CONFIG_CHECK_MODULES="BLK_DEV_NBD VHOST_NET IP6_NF_FILTER 
IP6_NF_IPTABLES IP_NF_TARGET_REJECT \
+       IP_NF_MANGLE IP_NF_TARGET_MASQUERADE NF_NAT_IPV4 IP_NF_FILTER 
IP_NF_IPTABLES \
+       NF_CONNTRACK_IPV4 NF_DEFRAG_IPV4 NF_NAT_IPV4 NF_NAT NF_CONNTRACK 
NETFILTER_XTABLES \
+       ISCSI_TCP SCSI_DH DM_MULTIPATH DM_SNAPSHOT"
+       if linux_config_exists; then
+               for module in ${CONFIG_CHECK_MODULES}; do
+                       linux_chkconfig_present ${module} || ewarn "${module} 
needs to be enabled in kernel"
+               done
+       fi
+       enewgroup nova
+       enewuser nova -1 -1 /var/lib/nova nova
+}
+
+python_prepare_all() {
+       sed -i '/^hacking/d' test-requirements.txt || die
+       distutils-r1_python_prepare_all
+}
+
+python_install_all() {
+       distutils-r1_python_install_all
+
+       if use !compute-only; then
+               for svc in api cert conductor consoleauth network scheduler 
spicehtml5proxy xvpvncproxy; do
+                       newinitd "${FILESDIR}/nova.initd" "nova-${svc}"
+               done
+       fi
+       use compute && newinitd "${FILESDIR}/nova.initd" "nova-compute"
+       use novncproxy && newinitd "${FILESDIR}/nova.initd" "nova-novncproxy"
+
+       diropts -m 0750 -o nova -g qemu
+       dodir /var/log/nova /var/lib/nova/instances
+       diropts -m 0750 -o nova -g nova
+
+       insinto /etc/nova
+       insopts -m 0640 -o nova -g nova
+       newins "${DISTDIR}/nova.conf.sample-${PV}" "nova.conf.sample"
+       doins "${FILESDIR}/nova-compute.conf"
+       doins "${S}/etc/nova/"*
+       # rootwrap filters
+       insopts -m 0644
+       insinto /etc/nova/rootwrap.d
+       doins "etc/nova/rootwrap.d/api-metadata.filters"
+       doins "etc/nova/rootwrap.d/compute.filters"
+       doins "etc/nova/rootwrap.d/network.filters"
+
+       # add sudoers definitions for user nova
+       insinto /etc/sudoers.d/
+       insopts -m 0600 -o root -g root
+       doins "${FILESDIR}/nova-sudoers"
+
+       if use iscsi ; then
+               # Install udev rules for handle iscsi disk with right links 
under /dev
+               udev_newrules "${FILESDIR}/openstack-scsi-disk.rules" 
60-openstack-scsi-disk.rules
+
+               insinto /etc/nova/
+               doins "${FILESDIR}/scsi-openscsi-link.sh"
+       fi
+}
+
+python_install() {
+       distutils-r1_python_install
+       # copy migration conf file (not coppied on install via setup.py script)
+       insinto "$(python_get_sitedir)/db/sqlalchemy/migrate_repo/"
+       doins "nova/db/sqlalchemy/migrate_repo/migrate.cfg"
+       # copy the CA cert dir (not coppied on install via setup.py script)
+       cp -R "${S}/nova/CA" "${D}/$(python_get_sitedir)/nova/" || die 
"installing CA files failed"
+}
+
+pkg_postinst() {
+       if use iscsi ; then
+               elog "iscsid needs to be running if you want cinder to connect"
+       fi
+}

Reply via email to