diff options
author | Matthew Thode <prometheanfire@gentoo.org> | 2013-09-05 20:57:34 +0000 |
---|---|---|
committer | Matthew Thode <prometheanfire@gentoo.org> | 2013-09-05 20:57:34 +0000 |
commit | c74c0cc0ef5bbc8edba53ee33466313ed4d78fe8 (patch) | |
tree | 012098a4ea0ff593db19386c42dbbf900773e835 /sys-cluster/nova | |
parent | updating websockify to 0.5.1 for sys-cluster/nova (diff) | |
download | gentoo-2-c74c0cc0ef5bbc8edba53ee33466313ed4d78fe8.tar.gz gentoo-2-c74c0cc0ef5bbc8edba53ee33466313ed4d78fe8.tar.bz2 gentoo-2-c74c0cc0ef5bbc8edba53ee33466313ed4d78fe8.zip |
updatign deps, some havana stuff, some init stuff, fixing bugs 483384 482698
(Portage version: 2.1.12.2/cvs/Linux x86_64, signed Manifest commit with key 0x2471eb3e40ac5ac3)
Diffstat (limited to 'sys-cluster/nova')
-rw-r--r-- | sys-cluster/nova/ChangeLog | 11 | ||||
-rw-r--r-- | sys-cluster/nova/files/nova-confd | 4 | ||||
-rw-r--r-- | sys-cluster/nova/files/nova-initd | 63 | ||||
-rw-r--r-- | sys-cluster/nova/files/nova-sudoers | 3 | ||||
-rw-r--r-- | sys-cluster/nova/metadata.xml | 12 | ||||
-rw-r--r-- | sys-cluster/nova/nova-2012.2.4-r5.ebuild (renamed from sys-cluster/nova/nova-2012.2.4-r4.ebuild) | 51 | ||||
-rw-r--r-- | sys-cluster/nova/nova-2013.1.3-r2.ebuild (renamed from sys-cluster/nova/nova-2013.1.3.ebuild) | 47 | ||||
-rw-r--r-- | sys-cluster/nova/nova-2013.1.9999.ebuild | 53 | ||||
-rw-r--r-- | sys-cluster/nova/nova-9999.ebuild | 70 |
9 files changed, 256 insertions, 58 deletions
diff --git a/sys-cluster/nova/ChangeLog b/sys-cluster/nova/ChangeLog index dcebe2f65c92..bcde2e06db55 100644 --- a/sys-cluster/nova/ChangeLog +++ b/sys-cluster/nova/ChangeLog @@ -1,6 +1,15 @@ # ChangeLog for sys-cluster/nova # Copyright 1999-2013 Gentoo Foundation; Distributed under the GPL v2 -# $Header: /var/cvsroot/gentoo-x86/sys-cluster/nova/ChangeLog,v 1.22 2013/08/22 04:55:51 prometheanfire Exp $ +# $Header: /var/cvsroot/gentoo-x86/sys-cluster/nova/ChangeLog,v 1.23 2013/09/05 20:57:34 prometheanfire Exp $ + +*nova-2012.2.4-r5 (05 Sep 2013) +*nova-2013.1.3-r2 (05 Sep 2013) + + 05 Sep 2013; Matthew Thode <prometheanfire@gentoo.org> +files/nova-confd, + +files/nova-initd, +files/nova-sudoers, +nova-2012.2.4-r5.ebuild, + +nova-2013.1.3-r2.ebuild, -nova-2012.2.4-r4.ebuild, -nova-2013.1.3.ebuild, + metadata.xml, nova-2013.1.9999.ebuild, nova-9999.ebuild: + updatign deps, some havana stuff, some init stuff, fixing bugs 483384 482698 22 Aug 2013; Matthew Thode <prometheanfire@gentoo.org> nova-2012.2.4-r4.ebuild, nova-2013.1.3.ebuild, nova-2013.1.9999.ebuild: diff --git a/sys-cluster/nova/files/nova-confd b/sys-cluster/nova/files/nova-confd new file mode 100644 index 000000000000..e18217ea030f --- /dev/null +++ b/sys-cluster/nova/files/nova-confd @@ -0,0 +1,4 @@ +#Don't touch this unless you know what you are doing +PID_PATH=/run/nova +LOCKDIR_PATH=/var/lock/nova + diff --git a/sys-cluster/nova/files/nova-initd b/sys-cluster/nova/files/nova-initd new file mode 100644 index 000000000000..952e865493b2 --- /dev/null +++ b/sys-cluster/nova/files/nova-initd @@ -0,0 +1,63 @@ +#!/sbin/runscript +# Copyright 1999-2013 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 + +BASENAME=$(echo $SVCNAME | cut -d '-' -f 1) +SERVERNAME=$(echo $SVCNAME | cut -d '-' -f 2) + +depend() { + need net +} + +checkconfig() { + if [ ! -r /etc/conf.d/$BASENAME ]; then + eerror "No nova conf.d file found: /etc/conf.d/$BASENAME)" + return 1 + fi + return 0 +} + +start() { + checkconfig || return $? + . /etc/conf.d/$BASENAME + + ebegin "Starting ${SVCNAME}" + if [ ! -d ${PID_PATH} ]; then + mkdir ${PID_PATH} + chown nova:root ${PID_PATH} + fi + + if [ ! -d ${LOCKDIR_PATH} ]; then + mkdir ${LOCKDIR_PATH} + chown nova:root ${LOCKDIR_PATH} + fi + + start-stop-daemon --start \ + --quiet \ + --user nova \ + --pidfile "${PID_PATH}/${SVCNAME}.pid" \ + --make-pidfile \ + --background \ + --exec /usr/bin/nova-${SERVERNAME} -- --config-file /etc/nova/nova.conf + + eend $? "Failed to start ${SVCNAME}" +} + +stop() { + checkconfig || return $? + . /etc/conf.d/$BASENAME + + ebegin "Stopping ${SVCNAME}" + + start-stop-daemon --stop \ + --quiet \ + --user nova \ + --pidfile "${PID_PATH}/${SVCNAME}.pid" \ + --exec /usr/bin/nova-${SERVERNAME} -- --config-file /etc/nova/nova.conf + + eend $? "Failed to stop ${SVCNAME}" +} + +#restart() { +# +#} diff --git a/sys-cluster/nova/files/nova-sudoers b/sys-cluster/nova/files/nova-sudoers new file mode 100644 index 000000000000..f15b3285b7d4 --- /dev/null +++ b/sys-cluster/nova/files/nova-sudoers @@ -0,0 +1,3 @@ +Defaults:nova !requiretty + +nova ALL = (root) NOPASSWD: /usr/bin/nova-rootwrap diff --git a/sys-cluster/nova/metadata.xml b/sys-cluster/nova/metadata.xml index d2bf26f9c6f4..e6379ce54911 100644 --- a/sys-cluster/nova/metadata.xml +++ b/sys-cluster/nova/metadata.xml @@ -9,5 +9,17 @@ Nova is a cloud computing fabric controller (the main part of an IaaS system). It is written in Python. </longdescription> + <use> + <flag name="api">Installs the initscripts for the nova api service</flag> + <flag name="cert">Installs the initscripts for the nova scheduler service</flag> + <flag name="compute">Installs the initscripts for the nova volume service</flag> + <flag name="conductor">Installs the initscripts for the nova conductor service</flag> + <flag name="consoleauth">Installs the initscripts for the nova consoleauth service</flag> + <flag name="network">Installs the initscripts for the nova network service</flag> + <flag name="novncproxy">Installs the initscripts for the nova novncproxy service</flag> + <flag name="scheduler">Installs the initscripts for the nova scheduler service</flag> + <flag name="spicehtml5proxy">Installs the initscripts for the nova spicehtml5proxy service</flag> + <flag name="xvpvncproxy">Installs the initscripts for the nova xvpvncproxy service</flag> + </use> </pkgmetadata> diff --git a/sys-cluster/nova/nova-2012.2.4-r4.ebuild b/sys-cluster/nova/nova-2012.2.4-r5.ebuild index c6b90d561441..e721292c604b 100644 --- a/sys-cluster/nova/nova-2012.2.4-r4.ebuild +++ b/sys-cluster/nova/nova-2012.2.4-r5.ebuild @@ -1,11 +1,11 @@ # Copyright 1999-2013 Gentoo Foundation # Distributed under the terms of the GNU General Public License v2 -# $Header: /var/cvsroot/gentoo-x86/sys-cluster/nova/nova-2012.2.4-r4.ebuild,v 1.3 2013/08/22 04:55:51 prometheanfire Exp $ +# $Header: /var/cvsroot/gentoo-x86/sys-cluster/nova/nova-2012.2.4-r5.ebuild,v 1.1 2013/09/05 20:57:34 prometheanfire Exp $ EAPI=5 PYTHON_COMPAT=( python2_7 ) -inherit distutils-r1 eutils +inherit distutils-r1 eutils multilib DESCRIPTION="Nova is a cloud computing fabric controller (main part of an IaaS system). It is written in Python." @@ -15,24 +15,25 @@ SRC_URI="http://launchpad.net/${PN}/folsom/${PV}/+download/${P}.tar.gz" LICENSE="Apache-2.0" SLOT="0" KEYWORDS="~amd64 ~x86" -IUSE="" +IUSE="+api +cert +compute +conductor +consoleauth +network +novncproxy +scheduler +spicehtml5proxy +xvpvncproxy" -DEPEND="dev-python/setuptools[${PYTHON_USEDEP}]" +DEPEND="dev-python/setuptools[${PYTHON_USEDEP}] + app-admin/sudo" -RDEPEND="=dev-python/amqplib-0.6.1 +RDEPEND="~dev-python/amqplib-0.6.1[${PYTHON_USEDEP}] >=dev-python/anyjson-0.2.4[${PYTHON_USEDEP}] >=dev-python/sqlalchemy-0.7.8 <=dev-python/sqlalchemy-0.7.9 =dev-python/boto-2.1.1[${PYTHON_USEDEP}] - >=dev-python/eventlet-0.9.17 - =dev-python/kombu-1.0.4-r1[${PYTHON_USEDEP}] - =dev-python/routes-1.12.3-r1[${PYTHON_USEDEP}] - =dev-python/webob-1.0.8-r1[${PYTHON_USEDEP}] + >=dev-python/eventlet-0.9.17[${PYTHON_USEDEP}] + ~dev-python/kombu-1.0.4[${PYTHON_USEDEP}] + ~dev-python/routes-1.12.3[${PYTHON_USEDEP}] + ~dev-python/webob-1.0.8[${PYTHON_USEDEP}] >=dev-python/greenlet-0.3.1[${PYTHON_USEDEP}] - =dev-python/pastedeploy-1.5.0-r1[${PYTHON_USEDEP}] + ~dev-python/pastedeploy-1.5.0[${PYTHON_USEDEP}] dev-python/paste[${PYTHON_USEDEP}] - >=dev-python/sqlalchemy-migrate-0.7.2 - dev-python/netaddr + >=dev-python/sqlalchemy-migrate-0.7.2[${PYTHON_USEDEP}] + dev-python/netaddr[${PYTHON_USEDEP}] =dev-python/suds-0.4 dev-python/paramiko[${PYTHON_USEDEP}] >=dev-python/Babel-0.9.6[${PYTHON_USEDEP}] @@ -50,11 +51,31 @@ PATCHES=( "${FILESDIR}/2012.2.4-CVE-2013-4185.patch" ) +pkg_setup() { + enewgroup nova + enewuser nova -1 -1 /var/lib/nova nova +} + python_install() { distutils-r1_python_install + newconfd "${FILESDIR}/nova-confd" "nova" + newinitd "${FILESDIR}/nova-initd" "nova" + use api && dosym /etc/init.d/nova /etc/init.d/nova-api + use cert && dosym /etc/init.d/nova /etc/init.d/nova-cert + use compute && dosym /etc/init.d/nova /etc/init.d/nova-compute + use conductor && dosym /etc/init.d/nova /etc/init.d/nova-conductor + use consoleauth && dosym /etc/init.d/nova /etc/init.d/nova-consoleauth + use network && dosym /etc/init.d/nova /etc/init.d/nova-network + use novncproxy &&dosym /etc/init.d/nova /etc/init.d/nova-nonvncproxy + use scheduler && dosym /etc/init.d/nova /etc/init.d/nova-scheduler + use spicehtml5proxy && dosym /etc/init.d/nova /etc/init.d/nova-spicehtml5proxy + use xvpvncproxy && dosym /etc/init.d/nova /etc/init.d/nova-xvpncproxy + + dodir /var/log/nova + fowners nova:nova /var/log/nova + keepdir /etc/nova insinto /etc/nova - newins "etc/nova/nova.conf.sample" "nova.conf" newins "etc/nova/api-paste.ini" "api-paste.ini" newins "etc/nova/logging_sample.conf" "logging_sample.conf" @@ -72,4 +93,8 @@ python_install() { #copy the CA cert dir (not coppied on install via setup.py script) cp -R "${S}/nova/CA" "${D}/usr/$(get_libdir)/python2.7/site-packages/nova/" || die "isntalling CA files failed" + + #add sudoers definitions for user nova + insinto /etc/sudoers.d/ + doins "${FILESDIR}/nova-sudoers" } diff --git a/sys-cluster/nova/nova-2013.1.3.ebuild b/sys-cluster/nova/nova-2013.1.3-r2.ebuild index 4705be447ab8..1edf078fe4be 100644 --- a/sys-cluster/nova/nova-2013.1.3.ebuild +++ b/sys-cluster/nova/nova-2013.1.3-r2.ebuild @@ -1,6 +1,6 @@ # Copyright 1999-2013 Gentoo Foundation # Distributed under the terms of the GNU General Public License v2 -# $Header: /var/cvsroot/gentoo-x86/sys-cluster/nova/nova-2013.1.3.ebuild,v 1.3 2013/08/22 04:55:51 prometheanfire Exp $ +# $Header: /var/cvsroot/gentoo-x86/sys-cluster/nova/nova-2013.1.3-r2.ebuild,v 1.1 2013/09/05 20:57:34 prometheanfire Exp $ EAPI=5 PYTHON_COMPAT=( python2_7 ) @@ -15,25 +15,26 @@ SRC_URI="http://launchpad.net/${PN}/grizzly/${PV}/+download/${P}.tar.gz" LICENSE="Apache-2.0" SLOT="0" KEYWORDS="~amd64 ~x86" -IUSE="" +IUSE="+api +cert +compute +conductor +consoleauth +network +novncproxy +scheduler +spicehtml5proxy +xvpvncproxy" -DEPEND="dev-python/setuptools[${PYTHON_USEDEP}]" +DEPEND="dev-python/setuptools[${PYTHON_USEDEP}] + app-admin/sudo" RDEPEND=">=dev-python/amqplib-0.6.1[${PYTHON_USEDEP}] >=dev-python/anyjson-0.2.4[${PYTHON_USEDEP}] - >=dev-python/cheetah-2.4.4 + >=dev-python/cheetah-2.4.4[${PYTHON_USEDEP}] >=dev-python/sqlalchemy-0.7.8 <=dev-python/sqlalchemy-0.7.99 dev-python/boto[${PYTHON_USEDEP}] >=dev-python/eventlet-0.9.17[${PYTHON_USEDEP}] >=dev-python/kombu-1.0.4-r1[${PYTHON_USEDEP}] >=dev-python/routes-1.12.3-r1[${PYTHON_USEDEP}] - =dev-python/webob-1.2.3-r1[${PYTHON_USEDEP}] + ~dev-python/webob-1.2.3[${PYTHON_USEDEP}] >=dev-python/greenlet-0.3.1[${PYTHON_USEDEP}] >=dev-python/pastedeploy-1.5.0-r1[${PYTHON_USEDEP}] dev-python/paste[${PYTHON_USEDEP}] - >=dev-python/sqlalchemy-migrate-0.7.2 - dev-python/netaddr + >=dev-python/sqlalchemy-migrate-0.7.2[${PYTHON_USEDEP}] + dev-python/netaddr[${PYTHON_USEDEP}] >=dev-python/suds-0.4 dev-python/paramiko[${PYTHON_USEDEP}] dev-python/pyasn1[${PYTHON_USEDEP}] @@ -44,10 +45,10 @@ RDEPEND=">=dev-python/amqplib-0.6.1[${PYTHON_USEDEP}] >=dev-python/python-cinderclient-1.0.1[${PYTHON_USEDEP}] >=dev-python/python-glanceclient-0.5.0[${PYTHON_USEDEP}] <dev-python/python-glanceclient-2[${PYTHON_USEDEP}] - >=dev-python/python-quantumclient-2.2.0[${PYTHON_USEDEP}] - <=dev-python/python-quantumclient-3.0.0[${PYTHON_USEDEP}] + >=dev-python/python-neutronclient-2.2.0[${PYTHON_USEDEP}] + <=dev-python/python-neutronclient-3.0.0[${PYTHON_USEDEP}] >=dev-python/python-keystoneclient-0.2.0[${PYTHON_USEDEP}] - >=dev-python/stevedore-0.7 + >=dev-python/stevedore-0.7[${PYTHON_USEDEP}] <dev-python/websockify-0.4[${PYTHON_USEDEP}] >=dev-python/oslo-config-1.1.0[${PYTHON_USEDEP}] virtual/python-argparse[${PYTHON_USEDEP}]" @@ -56,11 +57,31 @@ PATCHES=( ) # "${FILESDIR}/nova-grizzly-1-CVE-2013-2096.patch" +pkg_setup() { + enewgroup nova + enewuser nova -1 -1 /var/lib/nova nova +} + python_install() { distutils-r1_python_install + newconfd "${FILESDIR}/nova-confd" "nova" + newinitd "${FILESDIR}/nova-initd" "nova" + use api && dosym /etc/init.d/nova /etc/init.d/nova-api + use cert && dosym /etc/init.d/nova /etc/init.d/nova-cert + use compute && dosym /etc/init.d/nova /etc/init.d/nova-compute + use conductor && dosym /etc/init.d/nova /etc/init.d/nova-conductor + use consoleauth && dosym /etc/init.d/nova /etc/init.d/nova-consoleauth + use network && dosym /etc/init.d/nova /etc/init.d/nova-network + use novncproxy &&dosym /etc/init.d/nova /etc/init.d/nova-nonvncproxy + use scheduler && dosym /etc/init.d/nova /etc/init.d/nova-scheduler + use spicehtml5proxy && dosym /etc/init.d/nova /etc/init.d/nova-spicehtml5proxy + use xvpvncproxy && dosym /etc/init.d/nova /etc/init.d/nova-xvpncproxy + + dodir /var/log/nova + fowners nova:nova /var/log/nova + keepdir /etc/nova insinto /etc/nova - newins "etc/nova/nova.conf.sample" "nova.conf" doins "etc/nova/api-paste.ini" doins "etc/nova/logging_sample.conf" @@ -77,4 +98,8 @@ python_install() { #copy the CA cert dir (not coppied on install via setup.py script) cp -R "${S}/nova/CA" "${D}/usr/$(get_libdir)/python2.7/site-packages/nova/" || die "isntalling CA files failed" + + #add sudoers definitions for user nova + insinto /etc/sudoers.d/ + doins "${FILESDIR}/nova-sudoers" } diff --git a/sys-cluster/nova/nova-2013.1.9999.ebuild b/sys-cluster/nova/nova-2013.1.9999.ebuild index c2ce3e27c966..9b82fc5b437d 100644 --- a/sys-cluster/nova/nova-2013.1.9999.ebuild +++ b/sys-cluster/nova/nova-2013.1.9999.ebuild @@ -1,11 +1,11 @@ # Copyright 1999-2013 Gentoo Foundation # Distributed under the terms of the GNU General Public License v2 -# $Header: /var/cvsroot/gentoo-x86/sys-cluster/nova/nova-2013.1.9999.ebuild,v 1.4 2013/08/22 04:55:51 prometheanfire Exp $ +# $Header: /var/cvsroot/gentoo-x86/sys-cluster/nova/nova-2013.1.9999.ebuild,v 1.5 2013/09/05 20:57:34 prometheanfire Exp $ EAPI=5 PYTHON_COMPAT=( python2_7 ) -inherit distutils-r1 eutils git-2 +inherit distutils-r1 eutils git-2 multilib DESCRIPTION="Nova is a cloud computing fabric controller (main part of an IaaS system). It is written in Python." @@ -16,25 +16,26 @@ EGIT_BRANCH="stable/grizzly" LICENSE="Apache-2.0" SLOT="0" KEYWORDS="" -IUSE="" +IUSE="+api +cert +compute +conductor +consoleauth +network +novncproxy +scheduler +spicehtml5proxy +xvpvncproxy" -DEPEND="dev-python/setuptools[${PYTHON_USEDEP}]" +DEPEND="dev-python/setuptools[${PYTHON_USEDEP}] + app-admin/sudo" RDEPEND=">=dev-python/amqplib-0.6.1[${PYTHON_USEDEP}] >=dev-python/anyjson-0.2.4[${PYTHON_USEDEP}] - >=dev-python/cheetah-2.4.4 + >=dev-python/cheetah-2.4.4[${PYTHON_USEDEP}] >=dev-python/sqlalchemy-0.7.8 <=dev-python/sqlalchemy-0.7.99 dev-python/boto[${PYTHON_USEDEP}] >=dev-python/eventlet-0.9.17[${PYTHON_USEDEP}] >=dev-python/kombu-1.0.4-r1[${PYTHON_USEDEP}] >=dev-python/routes-1.12.3-r1[${PYTHON_USEDEP}] - =dev-python/webob-1.2.3-r1[${PYTHON_USEDEP}] + ~dev-python/webob-1.2.3[${PYTHON_USEDEP}] >=dev-python/greenlet-0.3.1[${PYTHON_USEDEP}] >=dev-python/pastedeploy-1.5.0-r1[${PYTHON_USEDEP}] dev-python/paste[${PYTHON_USEDEP}] - >=dev-python/sqlalchemy-migrate-0.7.2 - dev-python/netaddr + >=dev-python/sqlalchemy-migrate-0.7.2[${PYTHON_USEDEP}] + dev-python/netaddr[${PYTHON_USEDEP}] >=dev-python/suds-0.4 dev-python/paramiko[${PYTHON_USEDEP}] dev-python/pyasn1[${PYTHON_USEDEP}] @@ -45,10 +46,10 @@ RDEPEND=">=dev-python/amqplib-0.6.1[${PYTHON_USEDEP}] >=dev-python/python-cinderclient-1.0.1[${PYTHON_USEDEP}] >=dev-python/python-glanceclient-0.5.0[${PYTHON_USEDEP}] <dev-python/python-glanceclient-2[${PYTHON_USEDEP}] - >=dev-python/python-quantumclient-2.2.0[${PYTHON_USEDEP}] - <=dev-python/python-quantumclient-3.0.0[${PYTHON_USEDEP}] + >=dev-python/python-neutronclient-2.2.0[${PYTHON_USEDEP}] + <=dev-python/python-neutronclient-3.0.0[${PYTHON_USEDEP}] >=dev-python/python-keystoneclient-0.2.0[${PYTHON_USEDEP}] - >=dev-python/stevedore-0.7 + >=dev-python/stevedore-0.7[${PYTHON_USEDEP}] <dev-python/websockify-0.4[${PYTHON_USEDEP}] >=dev-python/oslo-config-1.1.0[${PYTHON_USEDEP}] virtual/python-argparse[${PYTHON_USEDEP}]" @@ -56,11 +57,31 @@ RDEPEND=">=dev-python/amqplib-0.6.1[${PYTHON_USEDEP}] PATCHES=( ) +pkg_setup() { + enewgroup nova + enewuser nova -1 -1 /var/lib/nova nova +} + python_install() { distutils-r1_python_install + newconfd "${FILESDIR}/nova-confd" "nova" + newinitd "${FILESDIR}/nova-initd" "nova" + use api && dosym /etc/init.d/nova /etc/init.d/nova-api + use cert && dosym /etc/init.d/nova /etc/init.d/nova-cert + use compute && dosym /etc/init.d/nova /etc/init.d/nova-compute + use conductor && dosym /etc/init.d/nova /etc/init.d/nova-conductor + use consoleauth && dosym /etc/init.d/nova /etc/init.d/nova-consoleauth + use network && dosym /etc/init.d/nova /etc/init.d/nova-network + use novncproxy &&dosym /etc/init.d/nova /etc/init.d/nova-nonvncproxy + use scheduler && dosym /etc/init.d/nova /etc/init.d/nova-scheduler + use spicehtml5proxy && dosym /etc/init.d/nova /etc/init.d/nova-spicehtml5proxy + use xvpvncproxy && dosym /etc/init.d/nova /etc/init.d/nova-xvpncproxy + + dodir /var/log/nova + fowners nova:nova /var/log/nova + keepdir /etc/nova insinto /etc/nova - newins "etc/nova/nova.conf.sample" "nova.conf" doins "etc/nova/api-paste.ini" doins "etc/nova/logging_sample.conf" @@ -70,11 +91,15 @@ python_install() { doins "etc/nova/rootwrap.d/api-metadata.filters" doins "etc/nova/rootwrap.d/compute.filters" doins "etc/nova/rootwrap.d/network.filters" - doins "etc/nova/rootwrap.d/baremetal-compute-ipmi.filters" - doins "etc/nova/rootwrap.d/baremetal-deploy-helper.filters" + #copy migration conf file (not coppied on install via setup.py script) insinto /usr/$(get_libdir)/python2.7/site-packages/nova/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}/usr/$(get_libdir)/python2.7/site-packages/nova/" || die "isntalling CA files failed" + + #add sudoers definitions for user nova + insinto /etc/sudoers.d/ + doins "${FILESDIR}/nova-sudoers" } diff --git a/sys-cluster/nova/nova-9999.ebuild b/sys-cluster/nova/nova-9999.ebuild index ea0963e4cd6c..c201776d8152 100644 --- a/sys-cluster/nova/nova-9999.ebuild +++ b/sys-cluster/nova/nova-9999.ebuild @@ -1,66 +1,94 @@ # Copyright 1999-2013 Gentoo Foundation # Distributed under the terms of the GNU General Public License v2 -# $Header: /var/cvsroot/gentoo-x86/sys-cluster/nova/nova-9999.ebuild,v 1.5 2013/08/20 16:33:00 prometheanfire Exp $ +# $Header: /var/cvsroot/gentoo-x86/sys-cluster/nova/nova-9999.ebuild,v 1.6 2013/09/05 20:57:34 prometheanfire Exp $ EAPI=5 PYTHON_COMPAT=( python2_7 ) -inherit distutils-r1 eutils git-2 +inherit distutils-r1 eutils git-2 multilib DESCRIPTION="Nova is a cloud computing fabric controller (main part of an IaaS system). It is written in Python." HOMEPAGE="https://launchpad.net/nova" EGIT_REPO_URI="https://github.com/openstack/nova.git" -EGIT_BRANCH="master" LICENSE="Apache-2.0" SLOT="0" KEYWORDS="" -IUSE="" +IUSE="+api +cert +compute +conductor +consoleauth +network +novncproxy +scheduler +spicehtml5proxy +xvpvncproxy" -DEPEND="dev-python/setuptools[${PYTHON_USEDEP}]" +DEPEND="dev-python/setuptools[${PYTHON_USEDEP}] + app-admin/sudo" RDEPEND=">=dev-python/amqplib-0.6.1[${PYTHON_USEDEP}] >=dev-python/anyjson-0.2.4[${PYTHON_USEDEP}] - >=dev-python/cheetah-2.4.4 >=dev-python/sqlalchemy-0.7.8 <=dev-python/sqlalchemy-0.7.99 dev-python/boto[${PYTHON_USEDEP}] + >=dev-python/d2to1-0.2.10[${PYTHON_USEDEP}] + <dev-python/d2to1-0.3[${PYTHON_USEDEP}] >=dev-python/eventlet-0.9.17[${PYTHON_USEDEP}] + >=dev-python/jinja-2.0[${PYTHON_USEDEP}] + <dev-python/jinja-3[${PYTHON_USEDEP}] + >=dev-python/jsonschema-1.3.0[${PYTHON_USEDEP}] + !~dev-python/jsonschema-1.4.0[${PYTHON_USEDEP}] >=dev-python/kombu-1.0.4-r1[${PYTHON_USEDEP}] + >=dev-python/lxml-2.3[${PYTHON_USEDEP}] + >=dev-python/pbr-0.5.16[${PYTHON_USEDEP}] + <dev-python/pbr-0.6[${PYTHON_USEDEP}] >=dev-python/routes-1.12.3-r1[${PYTHON_USEDEP}] - =dev-python/webob-1.2.3-r1[${PYTHON_USEDEP}] + dev-python/six[${PYTHON_USEDEP}] + ~dev-python/webob-1.2.3[${PYTHON_USEDEP}] >=dev-python/greenlet-0.3.1[${PYTHON_USEDEP}] >=dev-python/pastedeploy-1.5.0-r1[${PYTHON_USEDEP}] dev-python/paste[${PYTHON_USEDEP}] - >=dev-python/sqlalchemy-migrate-0.7.2 - dev-python/netaddr + >=dev-python/sqlalchemy-migrate-0.7.2[${PYTHON_USEDEP}] + >=dev-python/netaddr-0.7.6[${PYTHON_USEDEP}] >=dev-python/suds-0.4 dev-python/paramiko[${PYTHON_USEDEP}] dev-python/pyasn1[${PYTHON_USEDEP}] >=dev-python/Babel-0.9.6[${PYTHON_USEDEP}] >=dev-python/iso8601-0.1.4[${PYTHON_USEDEP}] - dev-python/httplib2[${PYTHON_USEDEP}] - >=dev-python/setuptools-git-0.4[${PYTHON_USEDEP}] >=dev-python/python-cinderclient-1.0.1[${PYTHON_USEDEP}] - >=dev-python/python-glanceclient-0.5.0[${PYTHON_USEDEP}] - <dev-python/python-glanceclient-2[${PYTHON_USEDEP}] - >=dev-python/python-neutronclient-2.2.0[${PYTHON_USEDEP}] + >=dev-python/python-glanceclient-0.9.0[${PYTHON_USEDEP}] + >=dev-python/python-neutronclient-2.3.0[${PYTHON_USEDEP}] <=dev-python/python-neutronclient-3.0.0[${PYTHON_USEDEP}] >=dev-python/python-keystoneclient-0.2.0[${PYTHON_USEDEP}] - >=dev-python/stevedore-0.7 - <dev-python/websockify-0.4[${PYTHON_USEDEP}] + >=dev-python/stevedore-0.10[${PYTHON_USEDEP}] + >=dev-python/websockify-0.5.1[${PYTHON_USEDEP}] + <dev-python/websockify-0.6[${PYTHON_USEDEP}] >=dev-python/oslo-config-1.1.0[${PYTHON_USEDEP}] virtual/python-argparse[${PYTHON_USEDEP}]" +#oslo.config-1.2 is required but not released yet PATCHES=( ) +pkg_setup() { + enewgroup nova + enewuser nova -1 -1 /var/lib/nova nova +} + python_install() { distutils-r1_python_install + newconfd "${FILESDIR}/nova-confd" "nova" + newinitd "${FILESDIR}/nova-initd" "nova" + use api && dosym /etc/init.d/nova /etc/init.d/nova-api + use cert && dosym /etc/init.d/nova /etc/init.d/nova-cert + use compute && dosym /etc/init.d/nova /etc/init.d/nova-compute + use conductor && dosym /etc/init.d/nova /etc/init.d/nova-conductor + use consoleauth && dosym /etc/init.d/nova /etc/init.d/nova-consoleauth + use network && dosym /etc/init.d/nova /etc/init.d/nova-network + use novncproxy &&dosym /etc/init.d/nova /etc/init.d/nova-nonvncproxy + use scheduler && dosym /etc/init.d/nova /etc/init.d/nova-scheduler + use spicehtml5proxy && dosym /etc/init.d/nova /etc/init.d/nova-spicehtml5proxy + use xvpvncproxy && dosym /etc/init.d/nova /etc/init.d/nova-xvpncproxy + + dodir /var/log/nova + fowners nova:nova /var/log/nova + keepdir /etc/nova insinto /etc/nova - newins "etc/nova/nova.conf.sample" "nova.conf" doins "etc/nova/api-paste.ini" doins "etc/nova/logging_sample.conf" @@ -70,11 +98,15 @@ python_install() { doins "etc/nova/rootwrap.d/api-metadata.filters" doins "etc/nova/rootwrap.d/compute.filters" doins "etc/nova/rootwrap.d/network.filters" - doins "etc/nova/rootwrap.d/baremetal-compute-ipmi.filters" - doins "etc/nova/rootwrap.d/baremetal-deploy-helper.filters" + #copy migration conf file (not coppied on install via setup.py script) insinto /usr/$(get_libdir)/python2.7/site-packages/nova/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}/usr/$(get_libdir)/python2.7/site-packages/nova/" || die "isntalling CA files failed" + + #add sudoers definitions for user nova + insinto /etc/sudoers.d/ + doins "${FILESDIR}/nova-sudoers" } |