@@ -407,42 +407,68 @@ function git_clone {
407407
408408# compute service
409409git_clone $NOVA_REPO $NOVA_DIR $NOVA_BRANCH
410- # storage service
411- git_clone $SWIFT_REPO $SWIFT_DIR $SWIFT_BRANCH
412- # swift + keystone middleware
413- git_clone $SWIFT_KEYSTONE_REPO $SWIFT_KEYSTONE_DIR $SWIFT_KEYSTONE_BRANCH
414- # image catalog service
415- git_clone $GLANCE_REPO $GLANCE_DIR $GLANCE_BRANCH
416- # unified auth system (manages accounts/tokens)
417- git_clone $KEYSTONE_REPO $KEYSTONE_DIR $KEYSTONE_BRANCH
418- # a websockets/html5 or flash powered VNC console for vm instances
419- git_clone $NOVNC_REPO $NOVNC_DIR $NOVNC_BRANCH
420- # django powered web control panel for openstack
421- git_clone $HORIZON_REPO $HORIZON_DIR $HORIZON_BRANCH $HORIZON_TAG
422410# python client library to nova that horizon (and others) use
423411git_clone $NOVACLIENT_REPO $NOVACLIENT_DIR $NOVACLIENT_BRANCH
424- # openstackx is a collection of extensions to openstack.compute & nova
425- # that is *deprecated*. The code is being moved into python-novaclient & nova.
426- git_clone $OPENSTACKX_REPO $OPENSTACKX_DIR $OPENSTACKX_BRANCH
427- # quantum
428- git_clone $QUANTUM_REPO $QUANTUM_DIR $QUANTUM_BRANCH
412+ if [[ " $ENABLED_SERVICES " =~ " swift" ]]; then
413+ # storage service
414+ git_clone $SWIFT_REPO $SWIFT_DIR $SWIFT_BRANCH
415+ # swift + keystone middleware
416+ git_clone $SWIFT_KEYSTONE_REPO $SWIFT_KEYSTONE_DIR $SWIFT_KEYSTONE_BRANCH
417+ fi
418+ if [[ " $ENABLED_SERVICES " =~ " g-api" ]]; then
419+ # image catalog service
420+ git_clone $GLANCE_REPO $GLANCE_DIR $GLANCE_BRANCH
421+ fi
422+ if [[ " $ENABLED_SERVICES " =~ " key" ]]; then
423+ # unified auth system (manages accounts/tokens)
424+ git_clone $KEYSTONE_REPO $KEYSTONE_DIR $KEYSTONE_BRANCH
425+ fi
426+ if [[ " $ENABLED_SERVICES " =~ " n-vnc" ]]; then
427+ # a websockets/html5 or flash powered VNC console for vm instances
428+ git_clone $NOVNC_REPO $NOVNC_DIR $NOVNC_BRANCH
429+ fi
430+ if [[ " $ENABLED_SERVICES " =~ " horizon" ]]; then
431+ # django powered web control panel for openstack
432+ git_clone $HORIZON_REPO $HORIZON_DIR $HORIZON_BRANCH $HORIZON_TAG
433+ fi
434+ if [[ " $ENABLED_SERVICES " =~ " openstackx" ]]; then
435+ # openstackx is a collection of extensions to openstack.compute & nova
436+ # that is *deprecated*. The code is being moved into python-novaclient & nova.
437+ git_clone $OPENSTACKX_REPO $OPENSTACKX_DIR $OPENSTACKX_BRANCH
438+ fi
439+ if [[ " $ENABLED_SERVICES " =~ " quantum" ]]; then
440+ # quantum
441+ git_clone $QUANTUM_REPO $QUANTUM_DIR $QUANTUM_BRANCH
442+ fi
429443
430444# Initialization
431445# ==============
432446
433447
434448# setup our checkouts so they are installed into python path
435449# allowing ``import nova`` or ``import glance.client``
436- cd $KEYSTONE_DIR ; sudo python setup.py develop
437- cd $SWIFT_DIR ; sudo python setup.py develop
438- cd $SWIFT_KEYSTONE_DIR ; sudo python setup.py develop
439- cd $GLANCE_DIR ; sudo python setup.py develop
450+ if [[ " $ENABLED_SERVICES " =~ " key" ]]; then
451+ cd $KEYSTONE_DIR ; sudo python setup.py develop
452+ fi
453+ if [[ " $ENABLED_SERVICES " =~ " swift" ]]; then
454+ cd $SWIFT_DIR ; sudo python setup.py develop
455+ cd $SWIFT_KEYSTONE_DIR ; sudo python setup.py develop
456+ fi
457+ if [[ " $ENABLED_SERVICES " =~ " g-api" ]]; then
458+ cd $GLANCE_DIR ; sudo python setup.py develop
459+ fi
440460cd $NOVACLIENT_DIR ; sudo python setup.py develop
441461cd $NOVA_DIR ; sudo python setup.py develop
442- cd $OPENSTACKX_DIR ; sudo python setup.py develop
443- cd $HORIZON_DIR /django-openstack; sudo python setup.py develop
444- cd $HORIZON_DIR /openstack-dashboard; sudo python setup.py develop
445- cd $QUANTUM_DIR ; sudo python setup.py develop
462+ if [[ " $ENABLED_SERVICES " =~ " openstackx" ]]; then
463+ cd $OPENSTACKX_DIR ; sudo python setup.py develop
464+ fi
465+ if [[ " $ENABLED_SERVICES " =~ " horizon" ]]; then
466+ cd $HORIZON_DIR /django-openstack; sudo python setup.py develop
467+ cd $HORIZON_DIR /openstack-dashboard; sudo python setup.py develop
468+ fi
469+ if [[ " $ENABLED_SERVICES " =~ " quantum" ]]; then
470+ cd $QUANTUM_DIR ; sudo python setup.py develop
471+ fi
446472
447473# Add a useful screenrc. This isn't required to run openstack but is we do
448474# it since we are going to run the services in screen for simple
@@ -828,9 +854,13 @@ add_nova_flag "--public_interface=$PUBLIC_INTERFACE"
828854add_nova_flag " --vlan_interface=$VLAN_INTERFACE "
829855add_nova_flag " --sql_connection=$BASE_SQL_CONN /nova"
830856add_nova_flag " --libvirt_type=$LIBVIRT_TYPE "
831- add_nova_flag " --osapi_extensions_path=$OPENSTACKX_DIR /extensions"
832- add_nova_flag " --vncproxy_url=http://$HOST_IP :6080"
833- add_nova_flag " --vncproxy_wwwroot=$NOVNC_DIR /"
857+ if [[ " $ENABLED_SERVICES " =~ " openstackx" ]]; then
858+ add_nova_flag " --osapi_extensions_path=$OPENSTACKX_DIR /extensions"
859+ fi
860+ if [[ " $ENABLED_SERVICES " =~ " n-vnc" ]]; then
861+ add_nova_flag " --vncproxy_url=http://$HOST_IP :6080"
862+ add_nova_flag " --vncproxy_wwwroot=$NOVNC_DIR /"
863+ fi
834864add_nova_flag " --api_paste_config=$NOVA_DIR /bin/nova-api-paste.ini"
835865add_nova_flag " --image_service=nova.image.glance.GlanceImageService"
836866add_nova_flag " --ec2_dmz_host=$EC2_DMZ_HOST "
@@ -1028,8 +1058,12 @@ screen_it n-cpu "cd $NOVA_DIR && sg libvirtd $NOVA_DIR/bin/nova-compute"
10281058screen_it n-vol " cd $NOVA_DIR && $NOVA_DIR /bin/nova-volume"
10291059screen_it n-net " cd $NOVA_DIR && $NOVA_DIR /bin/nova-network"
10301060screen_it n-sch " cd $NOVA_DIR && $NOVA_DIR /bin/nova-scheduler"
1031- screen_it n-vnc " cd $NOVNC_DIR && ./utils/nova-wsproxy.py --flagfile $NOVA_DIR /bin/nova.conf --web . 6080"
1032- screen_it horizon " cd $HORIZON_DIR && sudo tail -f /var/log/apache2/error.log"
1061+ if [[ " $ENABLED_SERVICES " =~ " n-vnc" ]]; then
1062+ screen_it n-vnc " cd $NOVNC_DIR && ./utils/nova-wsproxy.py --flagfile $NOVA_DIR /bin/nova.conf --web . 6080"
1063+ fi
1064+ if [[ " $ENABLED_SERVICES " =~ " horizon" ]]; then
1065+ screen_it horizon " cd $HORIZON_DIR && sudo tail -f /var/log/apache2/error.log"
1066+ fi
10331067
10341068# Install Images
10351069# ==============
0 commit comments