Browse code

Add nova's new vnc support to devstack

* Fixes 917933
* Use cloudbuilders/master for noVNC
* s/n-nvnc/n-novnc/g

Change-Id: I45361489a584325ed6a7fbcf3026e8ff0b25e667

Anthony Young authored on 2012/01/18 08:46:53
Showing 4 changed files
1 1
new file mode 100644
... ...
@@ -0,0 +1 @@
0
+python-numpy
0 1
deleted file mode 100644
... ...
@@ -1 +0,0 @@
1
-python-numpy
... ...
@@ -186,7 +186,7 @@ Q_PORT=${Q_PORT:-9696}
186 186
 Q_HOST=${Q_HOST:-localhost}
187 187
 
188 188
 # Specify which services to launch.  These generally correspond to screen tabs
189
-ENABLED_SERVICES=${ENABLED_SERVICES:-g-api,g-reg,key,n-api,n-cpu,n-net,n-sch,n-vnc,horizon,mysql,rabbit,openstackx}
189
+ENABLED_SERVICES=${ENABLED_SERVICES:-g-api,g-reg,key,n-api,n-cpu,n-net,n-sch,n-novnc,n-xvnc,n-cauth,horizon,mysql,rabbit,openstackx}
190 190
 
191 191
 # Name of the lvm volume group to use/create for iscsi volumes
192 192
 VOLUME_GROUP=${VOLUME_GROUP:-nova-volumes}
... ...
@@ -589,7 +589,7 @@ if [[ "$ENABLED_SERVICES" =~ "g-api" ||
589 589
     # image catalog service
590 590
     git_clone $GLANCE_REPO $GLANCE_DIR $GLANCE_BRANCH
591 591
 fi
592
-if [[ "$ENABLED_SERVICES" =~ "n-vnc" ]]; then
592
+if [[ "$ENABLED_SERVICES" =~ "n-novnc" ]]; then
593 593
     # a websockets/html5 or flash powered VNC console for vm instances
594 594
     git_clone $NOVNC_REPO $NOVNC_DIR $NOVNC_BRANCH
595 595
 fi
... ...
@@ -1163,11 +1163,20 @@ if [[ "$ENABLED_SERVICES" =~ "openstackx" ]]; then
1163 1163
     add_nova_flag "--osapi_compute_extension=nova.api.openstack.compute.contrib.standard_extensions"
1164 1164
     add_nova_flag "--osapi_compute_extension=extensions.admin.Admin"
1165 1165
 fi
1166
-if [[ "$ENABLED_SERVICES" =~ "n-vnc" ]]; then
1167
-    VNCPROXY_URL=${VNCPROXY_URL:-"http://$SERVICE_HOST:6080"}
1168
-    add_nova_flag "--vncproxy_url=$VNCPROXY_URL"
1169
-    add_nova_flag "--vncproxy_wwwroot=$NOVNC_DIR/"
1166
+if [[ "$ENABLED_SERVICES" =~ "n-novnc" ]]; then
1167
+    NOVNCPROXY_URL=${NOVNCPROXY_URL:-"http://$SERVICE_HOST:6080/vnc_auto.html"}
1168
+    add_nova_flag "--novncproxy_base_url=$NOVNCPROXY_URL"
1170 1169
 fi
1170
+if [[ "$ENABLED_SERVICES" =~ "n-xvnc" ]]; then
1171
+    XVPVNCPROXY_URL=${XVPVNCPROXY_URL:-"http://$SERVICE_HOST:6081/console"}
1172
+    add_nova_flag "--xvpvncproxy_base_url=$XVPVNCPROXY_URL"
1173
+fi
1174
+if [ "$VIRT_DRIVER" = 'xenserver' ]; then
1175
+    VNCSERVER_PROXYCLIENT_ADDRESS=${VNCSERVER_PROXYCLIENT_ADDRESS=169.254.0.1}
1176
+else
1177
+    VNCSERVER_PROXYCLIENT_ADDRESS=${VNCSERVER_PROXYCLIENT_ADDRESS=127.0.0.1}
1178
+fi
1179
+add_nova_flag "--vncserver_proxyclient_address=$VNCSERVER_PROXYCLIENT_ADDRESS"
1171 1180
 add_nova_flag "--api_paste_config=$NOVA_DIR/bin/nova-api-paste.ini"
1172 1181
 add_nova_flag "--image_service=nova.image.glance.GlanceImageService"
1173 1182
 add_nova_flag "--ec2_dmz_host=$EC2_DMZ_HOST"
... ...
@@ -1205,6 +1214,9 @@ if [ "$VIRT_DRIVER" = 'xenserver' ]; then
1205 1205
     add_nova_flag "--flat_interface=eth1"
1206 1206
     add_nova_flag "--flat_network_bridge=xapi1"
1207 1207
     add_nova_flag "--public_interface=eth3"
1208
+    # Need to avoid crash due to new firewall support
1209
+    XEN_FIREWALL_DRIVER=${XEN_FIREWALL_DRIVER:-"nova.virt.firewall.IptablesFirewallDriver"}
1210
+    add_nova_flag "--firewall_driver=$XEN_FIREWALL_DRIVER"
1208 1211
 else
1209 1212
     add_nova_flag "--flat_network_bridge=$FLAT_NETWORK_BRIDGE"
1210 1213
     if [ -n "$FLAT_INTERFACE" ]; then
... ...
@@ -1288,7 +1300,7 @@ function screen_it {
1288 1288
             # sleep to allow bash to be ready to be send the command - we are
1289 1289
             # creating a new window in screen and then sends characters, so if
1290 1290
             # bash isn't running by the time we send the command, nothing happens
1291
-            sleep 1
1291
+            sleep 1.5
1292 1292
             screen -S stack -p $1 -X stuff "$2$NL"
1293 1293
         fi
1294 1294
     fi
... ...
@@ -1398,8 +1410,14 @@ screen_it n-cpu "cd $NOVA_DIR && sg libvirtd $NOVA_DIR/bin/nova-compute"
1398 1398
 screen_it n-vol "cd $NOVA_DIR && $NOVA_DIR/bin/nova-volume"
1399 1399
 screen_it n-net "cd $NOVA_DIR && $NOVA_DIR/bin/nova-network"
1400 1400
 screen_it n-sch "cd $NOVA_DIR && $NOVA_DIR/bin/nova-scheduler"
1401
-if [[ "$ENABLED_SERVICES" =~ "n-vnc" ]]; then
1402
-    screen_it n-vnc "cd $NOVNC_DIR && ./utils/nova-wsproxy.py --flagfile $NOVA_DIR/bin/nova.conf --web . 6080"
1401
+if [[ "$ENABLED_SERVICES" =~ "n-novnc" ]]; then
1402
+    screen_it n-novnc "cd $NOVNC_DIR && ./utils/nova-novncproxy --flagfile $NOVA_DIR/bin/nova.conf --web ."
1403
+fi
1404
+if [[ "$ENABLED_SERVICES" =~ "n-xvnc" ]]; then
1405
+    screen_it n-xvnc "cd $NOVA_DIR && ./bin/nova-xvpvncproxy --flagfile $NOVA_DIR/bin/nova.conf"
1406
+fi
1407
+if [[ "$ENABLED_SERVICES" =~ "n-cauth" ]]; then
1408
+    screen_it n-cauth "cd $NOVA_DIR && ./bin/nova-consoleauth"
1403 1409
 fi
1404 1410
 if [[ "$ENABLED_SERVICES" =~ "horizon" ]]; then
1405 1411
     screen_it horizon "cd $HORIZON_DIR && sudo tail -f /var/log/apache2/error.log"
... ...
@@ -5,7 +5,7 @@
5 5
                         @PRODUCT_BRAND@ @PRODUCT_VERSION@-@BUILD_NUMBER@
6 6
                 </label>
7 7
                 <shortdesc></shortdesc>
8
-                <config mem_set="671088640" vcpus="1"/>
8
+                <config mem_set="1073741824" vcpus="1"/>
9 9
                 <hacks is_hvm="false"/>
10 10
                 <vbd device="xvda" function="root" mode="w" vdi="vdi_xvda"/>
11 11
         </vm>