summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--meta-openstack/classes/compute.bbclass2
-rw-r--r--meta-openstack/classes/controller.bbclass2
-rw-r--r--meta-openstack/recipes-devtools/python/python-nova-compute_2013.1.3.bb35
-rw-r--r--meta-openstack/recipes-devtools/python/python-nova-controller_2013.1.3.bb52
-rw-r--r--meta-openstack/recipes-devtools/python/python-nova.inc99
-rw-r--r--meta-openstack/recipes-devtools/python/python-nova/0001-nova-api-paste.ini-make-controller-IP-configurable.patch26
-rw-r--r--meta-openstack/recipes-devtools/python/python-nova/nova.conf5
-rw-r--r--meta-openstack/recipes-devtools/python/python-nova/openrc4
-rw-r--r--meta-openstack/recipes-devtools/python/python-nova_2013.1.3.bb134
9 files changed, 233 insertions, 126 deletions
diff --git a/meta-openstack/classes/compute.bbclass b/meta-openstack/classes/compute.bbclass
new file mode 100644
index 0000000..3ed38e0
--- /dev/null
+++ b/meta-openstack/classes/compute.bbclass
@@ -0,0 +1,2 @@
1CONTROLLER_IP = "192.168.7.2"
2CONTROLLER_HOST = "192.168.7.2"
diff --git a/meta-openstack/classes/controller.bbclass b/meta-openstack/classes/controller.bbclass
new file mode 100644
index 0000000..1db2714
--- /dev/null
+++ b/meta-openstack/classes/controller.bbclass
@@ -0,0 +1,2 @@
1CONTROLLER_IP = "0.0.0.0"
2CONTROLLER_HOST = "localhost"
diff --git a/meta-openstack/recipes-devtools/python/python-nova-compute_2013.1.3.bb b/meta-openstack/recipes-devtools/python/python-nova-compute_2013.1.3.bb
new file mode 100644
index 0000000..204313d
--- /dev/null
+++ b/meta-openstack/recipes-devtools/python/python-nova-compute_2013.1.3.bb
@@ -0,0 +1,35 @@
1
2include python-nova.inc
3
4PR = "r0"
5
6FILESEXTRAPATHS := "${THISDIR}/${PYTHON_PN}"
7
8SRC_URI += "file://nova-compute \
9 file://nova.conf \
10 file://openrc \
11 "
12
13inherit compute update-rc.d
14
15PACKAGES = "${SRCNAME}-compute ${SRCNAME}-compute-misc"
16
17do_install_append() {
18 if ${@base_contains('DISTRO_FEATURES', 'sysvinit', 'true', 'false', d)}; then
19 install -d ${D}${sysconfdir}/init.d
20 install -m 0755 ${WORKDIR}/nova-compute ${D}${sysconfdir}/init.d/nova-compute
21 fi
22}
23
24FILES_${SRCNAME}-compute = " ${files_${SRCNAME}-compute}"
25
26# the controller is built, so we package it out of the way
27FILES_${SRCNAME}-compute-misc = "${files_${SRCNAME}-controller} ${files_${SRCNAME}-common} ${files_${PYTHON_PN}}"
28
29RDEPENDS_${SRCNAME}-compute = "${PYTHON_PN} ${SRCNAME}-common \
30 qemu libvirt libvirt-libvirtd libvirt-python libvirt-virsh"
31
32RCONFLICTS_${SRCNAME}-compute = "${SRCNAME}-controller"
33
34INITSCRIPT_PACKAGES = "${SRCNAME}-compute"
35INITSCRIPT_NAME_${SRCNAME}-compute = "nova-compute"
diff --git a/meta-openstack/recipes-devtools/python/python-nova-controller_2013.1.3.bb b/meta-openstack/recipes-devtools/python/python-nova-controller_2013.1.3.bb
new file mode 100644
index 0000000..686c1d7
--- /dev/null
+++ b/meta-openstack/recipes-devtools/python/python-nova-controller_2013.1.3.bb
@@ -0,0 +1,52 @@
1include python-nova.inc
2
3PR = "r0"
4
5FILESEXTRAPATHS := "${THISDIR}/${PYTHON_PN}"
6
7SRC_URI += "file://nova-all \
8 file://nova.conf \
9 file://openrc \
10 "
11
12inherit controller update-rc.d
13
14PACKAGES = "${SRCNAME}-controller ${SRCNAME}-controller-misc"
15
16do_install_append() {
17 if ${@base_contains('DISTRO_FEATURES', 'sysvinit', 'true', 'false', d)}; then
18 install -d ${D}${sysconfdir}/init.d
19 install -m 0755 ${WORKDIR}/nova-all ${D}${sysconfdir}/init.d/nova-all
20 fi
21}
22
23pkg_postinst_${SRCNAME}-controller () {
24 if [ "x$D" != "x" ]; then
25 exit 1
26 fi
27
28 # This is to make sure postgres is configured and running
29 if ! pidof postmaster > /dev/null; then
30 sudo -u postgres initdb -D /etc/postgresql/
31 /etc/init.d/postgresql start
32 sleep 0.2
33 sudo -u postgres psql -c "CREATE ROLE ${DB_USER} WITH SUPERUSER LOGIN PASSWORD '${DB_PASSWORD}'"
34 fi
35
36 sudo -u postgres createdb nova
37 nova-manage db sync
38}
39
40
41FILES_${SRCNAME}-controller = "${files_${SRCNAME}-controller}"
42
43# If the compute is built, so we package it out of the way
44FILES_${SRCNAME}-controller-misc = "${files_${SRCNAME}-compute} ${files_${SRCNAME}-common} ${files_${PYTHON_PN}}"
45
46RDEPENDS_${SRCNAME}-controller = "${PYTHON_PN} ${SRCNAME}-common \
47 postgresql postgresql-client python-psycopg2"
48
49RCONFLICTS_${SRCNAME}-controller = "${SRCNAME}-compute"
50
51INITSCRIPT_PACKAGES = "${SRCNAME}-controller"
52INITSCRIPT_NAME_${SRCNAME}-controller = "nova-all"
diff --git a/meta-openstack/recipes-devtools/python/python-nova.inc b/meta-openstack/recipes-devtools/python/python-nova.inc
new file mode 100644
index 0000000..be46460
--- /dev/null
+++ b/meta-openstack/recipes-devtools/python/python-nova.inc
@@ -0,0 +1,99 @@
1DESCRIPTION = "Nova is a cloud computing fabric controller"
2HOMEPAGE = "https://launchpad.net/nova"
3SECTION = "devel/python"
4LICENSE = "Apache-2.0"
5LIC_FILES_CHKSUM = "file://LICENSE;md5=1dece7821bf3fd70fe1309eaa37d52a2"
6
7DEPENDS = "sudo"
8
9SRCNAME = "nova"
10PYTHON_PN = "python-nova"
11
12FILESEXTRAPATHS := "${THISDIR}/${PYTHON_PN}"
13
14SRC_URI = "https://launchpad.net/${SRCNAME}/grizzly/${PV}/+download/${SRCNAME}-${PV}.tar.gz \
15 file://0001-nova-api-paste.ini-make-controller-IP-configurable.patch \
16 "
17
18SRC_URI[md5sum] = "6215982b9ed08b9042e088470d60a0a6"
19SRC_URI[sha256sum] = "f7c25186920daccb16867c5fd272318beb8cc076e5a55f79b5906618ef2724f4"
20
21S = "${WORKDIR}/${SRCNAME}-${PV}"
22
23inherit setuptools identity
24
25do_install_append() {
26
27 if [ ! -f "${WORKDIR}/nova.conf" ]; then
28 return
29 fi
30
31 TEMPLATE_CONF_DIR=${S}${sysconfdir}/${SRCNAME}
32 NOVA_CONF_DIR=${D}/${sysconfdir}/nova
33
34 install -d ${NOVA_CONF_DIR}
35 install -m 600 ${S}/etc/nova/policy.json ${NOVA_CONF_DIR}/
36
37 # Deploy filters to /etc/nova/rootwrap.d
38 install -m 755 -d ${NOVA_CONF_DIR}/rootwrap.d
39 install -m 600 ${S}/etc/nova/rootwrap.d/*.filters ${NOVA_CONF_DIR}/rootwrap.d
40 chown -R root:root ${NOVA_CONF_DIR}/rootwrap.d
41 chmod 644 ${NOVA_CONF_DIR}/rootwrap.d
42
43 # Set up rootwrap.conf, pointing to /etc/nova/rootwrap.d
44 install -m 644 ${S}/etc/nova/rootwrap.conf ${NOVA_CONF_DIR}/
45 sed -e "s:^filters_path=.*$:filters_path=${NOVA_CONF_DIR}/rootwrap.d:" \
46 -i ${NOVA_CONF_DIR}/rootwrap.conf
47 chown root:root $NOVA_CONF_DIR/rootwrap.conf
48
49 # Set up the rootwrap sudoers for nova
50 install -d ${D}${sysconfdir}/sudoers.d
51 touch ${D}${sysconfdir}/sudoers.d/nova-rootwrap
52 chmod 0440 ${D}${sysconfdir}/sudoers.d/nova-rootwrap
53 chown root:root ${D}${sysconfdir}/sudoers.d/nova-rootwrap
54 echo "root ALL=(root) NOPASSWD: ${bindir}/nova-rootwrap" > \
55 ${D}${sysconfdir}/sudoers.d/nova-rootwrap
56
57 # Configuration options
58 sed -e "s:%SERVICE_TENANT_NAME%:${SERVICE_TENANT_NAME}:g" \
59 ${TEMPLATE_CONF_DIR}/api-paste.ini > ${WORKDIR}/api-paste.ini
60 sed -e "s:%SERVICE_USER%:${SRCNAME}:g" -i ${WORKDIR}/api-paste.ini
61 sed -e "s:%SERVICE_PASSWORD%:${SERVICE_PASSWORD}:g" \
62 -i ${WORKDIR}/api-paste.ini
63 sed -e "s:%CONTROLLER_IP%:${CONTROLLER_IP}:g" -i ${WORKDIR}/api-paste.ini
64
65 sed -e "s:%DB_USER%:${DB_USER}:g" -i ${WORKDIR}/nova.conf
66 sed -e "s:%DB_PASSWORD%:${DB_PASSWORD}:g" -i ${WORKDIR}/nova.conf
67
68 sed -e "s:%CONTROLLER_IP%:${CONTROLLER_IP}:g" -i ${WORKDIR}/nova.conf
69 sed -e "s:%CONTROLLER_HOST%:${CONTROLLER_HOST}:g" -i ${WORKDIR}/nova.conf
70
71 sed -e "s:%OS_PASSWORD%:${ADMIN_PASSWORD}:g" -i ${WORKDIR}/openrc
72 sed -e "s:%SERVICE_TOKEN%:${SERVICE_TOKEN}:g" -i ${WORKDIR}/openrc
73
74 sed -e "s:%CONTROLLER_IP%:${CONTROLLER_IP}:g" -i ${WORKDIR}/openrc
75 sed -e "s:%CONTROLLER_HOST%:${CONTROLLER_HOST}:g" -i ${WORKDIR}/openrc
76
77 # Copy the configuration file
78 install -m 664 ${WORKDIR}/nova.conf ${NOVA_CONF_DIR}/nova.conf
79 install -m 664 ${WORKDIR}/api-paste.ini ${NOVA_CONF_DIR}
80 install -m 664 ${WORKDIR}/openrc ${NOVA_CONF_DIR}
81
82 install -d ${NOVA_CONF_DIR}/instances
83}
84
85# note the lowercase "files", these variables are used in the packaging
86# recipes themselves.
87files_${PYTHON_PN} = "${libdir}/*"
88
89files_${SRCNAME}-common = " ${bindir}/nova-manage \
90 ${bindir}/nova-rootwrap \
91 ${sysconfdir}/sudoers.d"
92
93files_${SRCNAME}-compute = " ${bindir}/nova-compute \
94 ${sysconfdir}/${SRCNAME}/* \
95 ${sysconfdir}/init.d/nova-compute"
96
97files_${SRCNAME}-controller = " ${bindir}/* \
98 ${sysconfdir}/${SRCNAME}/* \
99 ${sysconfdir}/init.d/nova-all" \ No newline at end of file
diff --git a/meta-openstack/recipes-devtools/python/python-nova/0001-nova-api-paste.ini-make-controller-IP-configurable.patch b/meta-openstack/recipes-devtools/python/python-nova/0001-nova-api-paste.ini-make-controller-IP-configurable.patch
new file mode 100644
index 0000000..7d2ed7e
--- /dev/null
+++ b/meta-openstack/recipes-devtools/python/python-nova/0001-nova-api-paste.ini-make-controller-IP-configurable.patch
@@ -0,0 +1,26 @@
1From dd200f769d745ed4cb02faf40ebc32252046d783 Mon Sep 17 00:00:00 2001
2From: Bruce Ashfield <bruce.ashfield@windriver.com>
3Date: Wed, 28 Aug 2013 01:38:16 -0400
4Subject: [PATCH] nova/api-paste.ini: make controller IP configurable
5
6Signed-off-by: Bruce Ashfield <bruce.ashfield@windriver.com>
7---
8 etc/nova/api-paste.ini | 2 +-
9 1 file changed, 1 insertion(+), 1 deletion(-)
10
11diff --git a/etc/nova/api-paste.ini b/etc/nova/api-paste.ini
12index 34c87b9..c770408 100644
13--- a/etc/nova/api-paste.ini
14+++ b/etc/nova/api-paste.ini
15@@ -98,7 +98,7 @@ paste.filter_factory = nova.api.auth:NovaKeystoneContext.factory
16
17 [filter:authtoken]
18 paste.filter_factory = keystoneclient.middleware.auth_token:filter_factory
19-auth_host = 127.0.0.1
20+auth_host = %CONTROLLER_IP%
21 auth_port = 35357
22 auth_protocol = http
23 admin_tenant_name = %SERVICE_TENANT_NAME%
24--
251.7.10.4
26
diff --git a/meta-openstack/recipes-devtools/python/python-nova/nova.conf b/meta-openstack/recipes-devtools/python/python-nova/nova.conf
index dbbd1a8..f698349 100644
--- a/meta-openstack/recipes-devtools/python/python-nova/nova.conf
+++ b/meta-openstack/recipes-devtools/python/python-nova/nova.conf
@@ -34,11 +34,12 @@ force_dhcp_release=False
34dhcpbridge=/usr/bin/nova-dhcpbridge 34dhcpbridge=/usr/bin/nova-dhcpbridge
35 35
36#Database configuration 36#Database configuration
37sql_connection = postgresql://%DB_USER%:%DB_PASSWORD%@localhost/nova 37# sql_connection = postgresql://%DB_USER%:%DB_PASSWORD%@localhost/nova
38sql_connection = postgresql://%DB_USER%:%DB_PASSWORD%@%CONTROLLER_HOST%/nova
38 39
39#RabbitMQ configuration 40#RabbitMQ configuration
40rpc_backend = nova.rpc.impl_kombu 41rpc_backend = nova.rpc.impl_kombu
41rabbit_host = 0.0.0.0 42rabbit_host = %CONTROLLER_IP%
42rabbit_port = 5672 43rabbit_port = 5672
43 44
44#Quantum 45#Quantum
diff --git a/meta-openstack/recipes-devtools/python/python-nova/openrc b/meta-openstack/recipes-devtools/python/python-nova/openrc
index 1d0a1ea..c28f355 100644
--- a/meta-openstack/recipes-devtools/python/python-nova/openrc
+++ b/meta-openstack/recipes-devtools/python/python-nova/openrc
@@ -1,6 +1,6 @@
1export OS_TENANT_NAME=admin 1export OS_TENANT_NAME=admin
2export OS_USERNAME=admin 2export OS_USERNAME=admin
3export OS_PASSWORD=%OS_PASSWORD% 3export OS_PASSWORD=%OS_PASSWORD%
4export OS_AUTH_URL="http://localhost:5000/v2.0/" 4export OS_AUTH_URL="http://%CONTROLLER_HOST%:5000/v2.0/"
5export SERVICE_ENDPOINT="http://localhost:35357/v2.0" 5export SERVICE_ENDPOINT="http://%CONTROLLER_HOST%:35357/v2.0"
6export SERVICE_TOKEN=%SERVICE_TOKEN% 6export SERVICE_TOKEN=%SERVICE_TOKEN%
diff --git a/meta-openstack/recipes-devtools/python/python-nova_2013.1.3.bb b/meta-openstack/recipes-devtools/python/python-nova_2013.1.3.bb
index 95065fc..c10bebb 100644
--- a/meta-openstack/recipes-devtools/python/python-nova_2013.1.3.bb
+++ b/meta-openstack/recipes-devtools/python/python-nova_2013.1.3.bb
@@ -1,88 +1,6 @@
1DESCRIPTION = "Nova is a cloud computing fabric controller" 1include python-nova.inc
2HOMEPAGE = "https://launchpad.net/nova"
3SECTION = "devel/python"
4LICENSE = "Apache-2.0"
5LIC_FILES_CHKSUM = "file://LICENSE;md5=1dece7821bf3fd70fe1309eaa37d52a2"
6 2
7DEPENDS = "sudo" 3inherit useradd
8
9PR = "r0"
10SRCNAME = "nova"
11
12SRC_URI = "https://launchpad.net/${SRCNAME}/grizzly/${PV}/+download/${SRCNAME}-${PV}.tar.gz \
13 file://nova.conf \
14 file://nova-compute \
15 file://nova-all \
16 file://openrc \
17 "
18SRC_URI[md5sum] = "6215982b9ed08b9042e088470d60a0a6"
19SRC_URI[sha256sum] = "f7c25186920daccb16867c5fd272318beb8cc076e5a55f79b5906618ef2724f4"
20
21S = "${WORKDIR}/${SRCNAME}-${PV}"
22
23inherit setuptools useradd update-rc.d identity
24
25do_install_append() {
26 TEMPLATE_CONF_DIR=${S}${sysconfdir}/${SRCNAME}
27 NOVA_CONF_DIR=${D}/${sysconfdir}/nova
28
29 install -d ${NOVA_CONF_DIR}
30 install -m 600 ${S}/etc/nova/policy.json ${NOVA_CONF_DIR}/
31
32 # Deploy filters to /etc/nova/rootwrap.d
33 install -m 755 -d ${NOVA_CONF_DIR}/rootwrap.d
34 install -m 600 ${S}/etc/nova/rootwrap.d/*.filters ${NOVA_CONF_DIR}/rootwrap.d
35 chown -R root:root ${NOVA_CONF_DIR}/rootwrap.d
36 chmod 644 ${NOVA_CONF_DIR}/rootwrap.d
37
38 # Set up rootwrap.conf, pointing to /etc/nova/rootwrap.d
39 install -m 644 ${S}/etc/nova/rootwrap.conf ${NOVA_CONF_DIR}/
40 sed -e "s:^filters_path=.*$:filters_path=${NOVA_CONF_DIR}/rootwrap.d:" \
41 -i ${NOVA_CONF_DIR}/rootwrap.conf
42 chown root:root $NOVA_CONF_DIR/rootwrap.conf
43
44 # Set up the rootwrap sudoers for nova
45 install -d ${D}${sysconfdir}/sudoers.d
46 touch ${D}${sysconfdir}/sudoers.d/nova-rootwrap
47 chmod 0440 ${D}${sysconfdir}/sudoers.d/nova-rootwrap
48 chown root:root ${D}${sysconfdir}/sudoers.d/nova-rootwrap
49 echo "root ALL=(root) NOPASSWD: ${bindir}/nova-rootwrap" > \
50 ${D}${sysconfdir}/sudoers.d/nova-rootwrap
51
52 #Configuration options
53 sed -e "s:%SERVICE_TENANT_NAME%:${SERVICE_TENANT_NAME}:g" \
54 ${TEMPLATE_CONF_DIR}/api-paste.ini > ${WORKDIR}/api-paste.ini
55 sed -e "s:%SERVICE_USER%:${SRCNAME}:g" -i ${WORKDIR}/api-paste.ini
56 sed -e "s:%SERVICE_PASSWORD%:${SERVICE_PASSWORD}:g" \
57 -i ${WORKDIR}/api-paste.ini
58
59 sed -e "s:%DB_USER%:${DB_USER}:g" -i ${WORKDIR}/nova.conf
60 sed -e "s:%DB_PASSWORD%:${DB_PASSWORD}:g" -i ${WORKDIR}/nova.conf
61
62 sed -e "s:%OS_PASSWORD%:${ADMIN_PASSWORD}:g" -i ${WORKDIR}/openrc
63 sed -e "s:%SERVICE_TOKEN%:${SERVICE_TOKEN}:g" -i ${WORKDIR}/openrc
64
65 #Copy the configuration file
66 install -m 664 ${WORKDIR}/nova.conf ${NOVA_CONF_DIR}/nova.conf
67 install -m 664 ${WORKDIR}/api-paste.ini ${NOVA_CONF_DIR}
68 install -m 664 ${WORKDIR}/openrc ${NOVA_CONF_DIR}
69
70 install -d ${NOVA_CONF_DIR}/instances
71
72 if ${@base_contains('DISTRO_FEATURES', 'sysvinit', 'true', 'false', d)}; then
73 install -d ${D}${sysconfdir}/init.d
74 install -m 0755 ${WORKDIR}/nova-compute ${D}${sysconfdir}/init.d/nova-compute
75 install -m 0755 ${WORKDIR}/nova-all ${D}${sysconfdir}/init.d/nova-all
76 fi
77
78}
79
80USERADD_PACKAGES = "${PN}"
81GROUPADD_PARAM_${PN} = "--system nova"
82USERADD_PARAM_${PN} = "--system --home /var/lib/nova -g nova \
83 --no-create-home --shell /bin/false nova"
84
85PACKAGES += "${SRCNAME}-common ${SRCNAME}-compute ${SRCNAME}-controller"
86 4
87pkg_postinst_${SRCNAME}-common () { 5pkg_postinst_${SRCNAME}-common () {
88 if [ "x$D" != "x" ]; then 6 if [ "x$D" != "x" ]; then
@@ -92,36 +10,21 @@ pkg_postinst_${SRCNAME}-common () {
92 echo "source /etc/nova/openrc" > /home/root/.bashrc 10 echo "source /etc/nova/openrc" > /home/root/.bashrc
93} 11}
94 12
95pkg_postinst_${SRCNAME}-controller () { 13PACKAGES += "${SRCNAME}-common ${SRCNAME}-common-misc"
96 if [ "x$D" != "x" ]; then
97 exit 1
98 fi
99 14
100 # This is to make sure postgres is configured and running 15FILES_${PN} = "${files_${PN}}"
101 if ! pidof postmaster > /dev/null; then
102 sudo -u postgres initdb -D /etc/postgresql/
103 /etc/init.d/postgresql start
104 sleep 0.2
105 sudo -u postgres psql -c "CREATE ROLE ${DB_USER} WITH SUPERUSER LOGIN PASSWORD '${DB_PASSWORD}'"
106 fi
107 16
108 sudo -u postgres createdb nova 17FILES_${SRCNAME}-common = "${files_${SRCNAME}-common}"
109 nova-manage db sync
110}
111
112
113FILES_${PN} = "${libdir}/*"
114 18
115FILES_${SRCNAME}-common = " ${bindir}/nova-manage \ 19FILES_${SRCNAME}-common-misc = "${files_${SRCNAME}-compute} ${files_${SRCNAME}-controller}"
116 ${bindir}/nova-rootwrap \
117 ${sysconfdir}/${SRCNAME}/* \
118 ${sysconfdir}/sudoers.d"
119 20
120FILES_${SRCNAME}-compute = "${bindir}/nova-compute \ 21RDEPENDS_${SRCNAME}-common = "${PN} openssl openssl-misc libxml2 libxslt \
121 ${sysconfdir}/init.d/nova-compute" 22 iptables curl dnsmasq sudo procps"
122 23
123FILES_${SRCNAME}-controller = "${bindir}/* \ 24USERADD_PACKAGES = "${PN}"
124 ${sysconfdir}/init.d/nova-all" 25GROUPADD_PARAM_${PN} = "--system nova"
26USERADD_PARAM_${PN} = "--system --home /var/lib/nova -g nova \
27 --no-create-home --shell /bin/false nova"
125 28
126RDEPENDS_${PN} = " python-modules \ 29RDEPENDS_${PN} = " python-modules \
127 python-misc \ 30 python-misc \
@@ -158,16 +61,3 @@ RDEPENDS_${PN} = " python-modules \
158 python-webob \ 61 python-webob \
159 python-websockify \ 62 python-websockify \
160 " 63 "
161
162RDEPENDS_${SRCNAME}-common = "${PN} openssl openssl-misc libxml2 libxslt \
163 iptables curl dnsmasq sudo procps"
164
165RDEPENDS_${SRCNAME}-compute = "${PN} nova-common \
166 qemu libvirt libvirt-libvirtd libvirt-python libvirt-virsh"
167
168RDEPENDS_${SRCNAME}-controller = "${PN} nova-common \
169 postgresql postgresql-client python-psycopg2"
170
171INITSCRIPT_PACKAGES = "${SRCNAME}-compute ${SRCNAME}-controller"
172INITSCRIPT_NAME_${SRCNAME}-compute = "nova-compute"
173INITSCRIPT_NAME_${SRCNAME}-controller = "nova-all"