aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--meta-openstack/recipes-devtools/python/python-nova-controller_2013.1.3.bb24
-rw-r--r--meta-openstack/recipes-devtools/python/python-nova.inc3
-rw-r--r--meta-openstack/recipes-devtools/python/python-nova/nova-consoleauth75
-rw-r--r--meta-openstack/recipes-devtools/python/python-nova/nova-novncproxy72
-rw-r--r--meta-openstack/recipes-devtools/python/python-nova/nova.conf5
5 files changed, 173 insertions, 6 deletions
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
index 36b5ba36..c99a890e 100644
--- 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
@@ -5,19 +5,24 @@ PR = "r0"
FILESEXTRAPATHS := "${THISDIR}/${PYTHON_PN}"
SRC_URI += "file://nova-all \
+ file://nova-consoleauth \
+ file://nova-novncproxy \
file://nova.conf \
file://openrc \
"
inherit hosts update-rc.d
-#PACKAGES = "${SRCNAME}-controller ${SRCNAME}-controller-misc"
PACKAGES = "${PN} ${PN}-dbg ${SRCNAME}-controller-misc ${SRCNAME}-controller"
+PACKAGES += " ${SRCNAME}-consoleauth"
+PACKAGES += " ${SRCNAME}-novncproxy"
do_install_append() {
if ${@base_contains('DISTRO_FEATURES', 'sysvinit', 'true', 'false', d)}; then
install -d ${D}${sysconfdir}/init.d
install -m 0755 ${WORKDIR}/nova-all ${D}${sysconfdir}/init.d/nova-all
+ install -m 0755 ${WORKDIR}/nova-consoleauth ${D}${sysconfdir}/init.d/nova-consoleauth
+ install -m 0755 ${WORKDIR}/nova-novncproxy ${D}${sysconfdir}/init.d/nova-novncproxy
fi
}
@@ -49,7 +54,15 @@ pkg_postinst_${SRCNAME}-controller () {
FILES_${SRCNAME}-controller = " \
${bindir} \
${sysconfdir}/${SRCNAME}/* \
- ${sysconfdir}/init.d/nova-all"
+ ${sysconfdir}/init.d/nova-all \
+"
+
+FILES_${SRCNAME}-consoleauth = " \
+ ${sysconfdir}/init.d/nova-consoleauth \
+"
+FILES_${SRCNAME}-novncproxy = " \
+ ${sysconfdir}/init.d/nova-novncproxy \
+"
FILES_${SRCNAME}-controller-misc = " \
${bindir}/nova-compute \
@@ -62,10 +75,13 @@ FILES_${SRCNAME}-controller-misc = " \
FILES_${PN} = " \
${libdir}/python*/site-packages"
-RDEPENDS_${SRCNAME}-controller = "${PYTHON_PN} ${SRCNAME}-common \
+RDEPENDS_${SRCNAME}-controller = "${PYTHON_PN} ${SRCNAME}-common ${SRCNAME}-consoleauth \
+ ${SRCNAME}-novncproxy \
postgresql postgresql-client python-psycopg2"
RCONFLICTS_${SRCNAME}-controller = "${SRCNAME}-compute"
-INITSCRIPT_PACKAGES = "${SRCNAME}-controller"
+INITSCRIPT_PACKAGES = "${SRCNAME}-controller ${SRCNAME}-consoleauth ${SRCNAME}-novncproxy"
INITSCRIPT_NAME_${SRCNAME}-controller = "nova-all"
+INITSCRIPT_NAME_${SRCNAME}-consoleauth = "nova-consoleauth"
+INITSCRIPT_NAME_${SRCNAME}-novncproxy = "nova-novncproxy"
diff --git a/meta-openstack/recipes-devtools/python/python-nova.inc b/meta-openstack/recipes-devtools/python/python-nova.inc
index 01483e7f..e520130c 100644
--- a/meta-openstack/recipes-devtools/python/python-nova.inc
+++ b/meta-openstack/recipes-devtools/python/python-nova.inc
@@ -68,6 +68,9 @@ do_install_append() {
sed -e "s:%CONTROLLER_IP%:${CONTROLLER_IP}:g" -i ${WORKDIR}/nova.conf
sed -e "s:%CONTROLLER_HOST%:${CONTROLLER_HOST}:g" -i ${WORKDIR}/nova.conf
+ sed -e "s:%COMPUTE_IP%:${COMPUTE_IP}:g" -i ${WORKDIR}/nova.conf
+ sed -e "s:%COMPUTE_HOST%:${COMPUTE_HOST}:g" -i ${WORKDIR}/nova.conf
+
sed -e "s:%OS_PASSWORD%:${ADMIN_PASSWORD}:g" -i ${WORKDIR}/openrc
sed -e "s:%SERVICE_TOKEN%:${SERVICE_TOKEN}:g" -i ${WORKDIR}/openrc
diff --git a/meta-openstack/recipes-devtools/python/python-nova/nova-consoleauth b/meta-openstack/recipes-devtools/python/python-nova/nova-consoleauth
new file mode 100644
index 00000000..13ad2855
--- /dev/null
+++ b/meta-openstack/recipes-devtools/python/python-nova/nova-consoleauth
@@ -0,0 +1,75 @@
+#! /bin/sh
+### BEGIN INIT INFO
+# Provides: nova-consoleauth
+# Required-Start: $remote_fs $syslog
+# Required-Stop: $remote_fs $syslog
+# Should-Start: libvirt-bin
+# Should-Stop: libvirt-bin
+# Default-Start: 2 3 4 5
+# Default-Stop: 0 1 6
+# Short-Description: nova-consoleauth service
+# Description: Provides console services for the openstack
+# cloud computing system
+### END INIT INFO
+
+
+set -e
+
+DAEMON=/usr/bin/nova-consoleauth
+DAEMON_ARGS=""
+PIDFILE=/var/run/nova/nova-consoleauth.pid
+
+ENABLED=true
+
+if test -f /etc/default/nova-consoleauth; then
+ . /etc/default/nova-consoleauth
+fi
+
+mkdir -p /var/run/nova
+chown nova:root /var/run/nova/
+
+mkdir -p /var/lock/nova
+chown nova:root /var/lock/nova/
+
+#uid="$(getent passwd nova | cut -f3 -d:)"
+#gid="$(getent passwd nova | cut -f4 -d:)"
+
+. /lib/lsb/init-functions
+
+export PATH="${PATH:+$PATH:}/usr/sbin:/sbin"
+export TMPDIR=/var/lib/nova/tmp
+
+if ! [ -x ${DAEMON} ] ; then
+ exit 0
+fi
+
+case "$1" in
+ start)
+ test "$ENABLED" = "true" || exit 0
+ echo "Starting nova console" "nova-consoleauth"
+ start-stop-daemon --start -b -m --pidfile $PIDFILE --exec ${DAEMON} -- ${DAEMON_ARGS}
+ log_end_msg $?
+ ;;
+ stop)
+ test "$ENABLED" = "true" || exit 0
+ echo "Stopping nova console" "nova-consoleauth"
+ start-stop-daemon --stop --oknodo --pidfile ${PIDFILE}
+ log_end_msg $?
+ ;;
+ restart|force-reload)
+ test "$ENABLED" = "true" || exit 1
+ $0 stop
+ sleep 1
+ $0 start
+ ;;
+ status)
+ test "$ENABLED" = "true" || exit 0
+ status_of_proc -p $PIDFILE $DAEMON nova-consoleauth && exit 0 || exit $?
+ ;;
+ *)
+ echo "Usage: /etc/init.d/nova-consoleauth {start|stop|restart|force-reload|status}"
+ exit 1
+ ;;
+esac
+
+exit 0
diff --git a/meta-openstack/recipes-devtools/python/python-nova/nova-novncproxy b/meta-openstack/recipes-devtools/python/python-nova/nova-novncproxy
new file mode 100644
index 00000000..76cd1df6
--- /dev/null
+++ b/meta-openstack/recipes-devtools/python/python-nova/nova-novncproxy
@@ -0,0 +1,72 @@
+#! /bin/sh
+### BEGIN INIT INFO
+# Provides: nova-novncproxy
+# Required-Start: $remote_fs $syslog
+# Required-Stop: $remote_fs $syslog
+# Should-Start: libvirt-bin
+# Should-Stop: libvirt-bin
+# Default-Start: 2 3 4 5
+# Default-Stop: 0 1 6
+# Short-Description: nova-novncproxy service
+# Description: Provides vnc proxy services for the openstack
+# cloud computing system
+### END INIT INFO
+
+
+set -e
+
+DAEMON=/usr/bin/nova-novncproxy
+DAEMON_ARGS=""
+PIDFILE=/var/run/nova/nova-novncproxy.pid
+
+ENABLED=true
+
+if test -f /etc/default/nova-novncproxy; then
+ . /etc/default/nova-novncproxy
+fi
+
+mkdir -p /var/run/nova
+chown nova:root /var/run/nova/
+
+mkdir -p /var/lock/nova
+chown nova:root /var/lock/nova/
+
+. /lib/lsb/init-functions
+
+export PATH="${PATH:+$PATH:}/usr/sbin:/sbin"
+export TMPDIR=/var/lib/nova/tmp
+
+if ! [ -x ${DAEMON} ] ; then
+ exit 0
+fi
+
+case "$1" in
+ start)
+ test "$ENABLED" = "true" || exit 0
+ echo "Starting nova vnc proxy" "nova-novncproxy"
+ start-stop-daemon --start -b -m --pidfile $PIDFILE --exec ${DAEMON} -- ${DAEMON_ARGS}
+ log_end_msg $?
+ ;;
+ stop)
+ test "$ENABLED" = "true" || exit 0
+ echo "Stopping nova vnc proxy" "nova-novncproxy"
+ start-stop-daemon --stop --oknodo --pidfile ${PIDFILE}
+ log_end_msg $?
+ ;;
+ restart|force-reload)
+ test "$ENABLED" = "true" || exit 1
+ $0 stop
+ sleep 1
+ $0 start
+ ;;
+ status)
+ test "$ENABLED" = "true" || exit 0
+ status_of_proc -p $PIDFILE $DAEMON nova-novncproxy && exit 0 || exit $?
+ ;;
+ *)
+ echo "Usage: /etc/init.d/nova-novncproxy {start|stop|restart|force-reload|status}"
+ exit 1
+ ;;
+esac
+
+exit 0
diff --git a/meta-openstack/recipes-devtools/python/python-nova/nova.conf b/meta-openstack/recipes-devtools/python/python-nova/nova.conf
index 695f0845..20db54dc 100644
--- a/meta-openstack/recipes-devtools/python/python-nova/nova.conf
+++ b/meta-openstack/recipes-devtools/python/python-nova/nova.conf
@@ -22,7 +22,9 @@ glance_host = %CONTROLLER_IP%
#VNC
vnc_enabled = true
-vncserver_listen = 0.0.0.0
+vncserver_listen = %COMPUTE_IP%
+novncproxy_base_url=http://%CONTROLLER_IP%:6080/vnc_auto.html
+vncserver_proxyclient_address=%COMPUTE_IP%
#Network
flat_interface = eth0
@@ -35,7 +37,6 @@ force_dhcp_release=False
dhcpbridge=/usr/bin/nova-dhcpbridge
#Database configuration
-# sql_connection = postgresql://%DB_USER%:%DB_PASSWORD%@localhost/nova
sql_connection = postgresql://%DB_USER%:%DB_PASSWORD%@%CONTROLLER_IP%/nova
#RabbitMQ configuration