blob: 008bc9c6b8fa53d91f38d83070a2e3c5bc30bb6c [file] [log] [blame]
Dean Troyer4a43b7b2012-08-28 17:43:40 -05001# stackrc
2#
Dean Troyer0bd24102012-03-08 00:33:54 -06003# Find the other rc files
4RC_DIR=$(cd $(dirname "$BASH_SOURCE") && pwd)
5
Dean Troyer1214d9d2012-07-06 09:39:07 -05006# Destination path for installation
7DEST=/opt/stack
8
Dean Troyerc83a7e12012-11-29 11:47:58 -06009# Destination for working data
10DATA_DIR=${DEST}/data
11
Dean Troyer74759aa2013-01-24 14:19:55 -060012# Determine stack user
13if [[ $EUID -eq 0 ]]; then
14 STACK_USER=stack
15else
16 STACK_USER=$(whoami)
17fi
Attila Fazekas91b8d132013-01-06 22:40:09 +010018
Chmouel Boudjnah8da56562012-03-09 14:21:40 +000019# Specify which services to launch. These generally correspond to
Dean Troyer4a43b7b2012-08-28 17:43:40 -050020# screen tabs. To change the default list, use the ``enable_service`` and
21# ``disable_service`` functions in ``localrc``.
22# For example, to enable Swift add this to ``localrc``:
23# enable_service swift
Sean Daguef3fd44c2013-03-04 17:33:35 -050024ENABLED_SERVICES=g-api,g-reg,key,n-api,n-crt,n-obj,n-cpu,n-net,n-cond,cinder,c-sch,c-api,c-vol,n-sch,n-novnc,n-xvnc,n-cauth,horizon,rabbit,tempest,mysql
Chmouel Boudjnah8da56562012-03-09 14:21:40 +000025
Dean Troyer67787e62012-05-02 11:48:15 -050026# Set the default Nova APIs to enable
Andrew Laski6e7e1c92012-10-31 16:11:37 -040027NOVA_ENABLED_APIS=ec2,osapi_compute,metadata
Dean Troyer67787e62012-05-02 11:48:15 -050028
Vishvananda Ishaya58e21342013-02-11 16:48:12 -080029# Whether to use 'dev mode' for screen windows. Dev mode works by
30# stuffing text into the screen windows so that a developer can use
31# ctrl-c, up-arrow, enter to restart the service. Starting services
32# this way is slightly unreliable, and a bit slower, so this can
33# be disabled for automated testing by setting this value to false.
34SCREEN_DEV=True
35
Dean Troyer4a43b7b2012-08-28 17:43:40 -050036# Repositories
37# ------------
38
Monty Taylord5b18ec2012-07-26 09:21:01 -050039# Base GIT Repo URL
40# Another option is http://review.openstack.org/p
41GIT_BASE=https://github.com
42
John H. Tran93361642012-07-26 11:22:05 -070043# metering service
Lianhao Luaf5cd772012-11-12 16:36:42 +080044CEILOMETER_REPO=${GIT_BASE}/openstack/ceilometer.git
John H. Tran93361642012-07-26 11:22:05 -070045CEILOMETER_BRANCH=master
46
Yunhong, Jiange583d9b2013-01-09 09:33:07 +080047# ceilometer client library
48CEILOMETERCLIENT_REPO=${GIT_BASE}/openstack/python-ceilometerclient
49CEILOMETERCLIENT_BRANCH=master
50
Dean Troyer67787e62012-05-02 11:48:15 -050051# volume service
Monty Taylord5b18ec2012-07-26 09:21:01 -050052CINDER_REPO=${GIT_BASE}/openstack/cinder
Dean Troyer67787e62012-05-02 11:48:15 -050053CINDER_BRANCH=master
54
55# volume client
Monty Taylord5b18ec2012-07-26 09:21:01 -050056CINDERCLIENT_REPO=${GIT_BASE}/openstack/python-cinderclient
Dean Troyer67787e62012-05-02 11:48:15 -050057CINDERCLIENT_BRANCH=master
58
Anthony Young096fb5a2011-09-26 13:14:46 -070059# compute service
Monty Taylord5b18ec2012-07-26 09:21:01 -050060NOVA_REPO=${GIT_BASE}/openstack/nova.git
Jesse Andrews9c7c9082011-11-23 10:10:53 -080061NOVA_BRANCH=master
Anthony Young096fb5a2011-09-26 13:14:46 -070062
Chmouel Boudjnah28fa4e82011-11-01 12:30:55 +010063# storage service
Monty Taylord5b18ec2012-07-26 09:21:01 -050064SWIFT_REPO=${GIT_BASE}/openstack/swift.git
Jesse Andrews9c7c9082011-11-23 10:10:53 -080065SWIFT_BRANCH=master
Joe Gordon42b1aa92012-05-24 14:11:01 -070066SWIFT3_REPO=https://github.com/fujita/swift3.git
67SWIFT3_BRANCH=master
68
Chmouel Boudjnahfda9df82012-05-22 10:27:08 +000069# python swift client library
Monty Taylord5b18ec2012-07-26 09:21:01 -050070SWIFTCLIENT_REPO=${GIT_BASE}/openstack/python-swiftclient
Chmouel Boudjnahfda9df82012-05-22 10:27:08 +000071SWIFTCLIENT_BRANCH=master
72
Anthony Young096fb5a2011-09-26 13:14:46 -070073# image catalog service
Monty Taylord5b18ec2012-07-26 09:21:01 -050074GLANCE_REPO=${GIT_BASE}/openstack/glance.git
Jesse Andrews9c7c9082011-11-23 10:10:53 -080075GLANCE_BRANCH=master
Anthony Young096fb5a2011-09-26 13:14:46 -070076
Dean Troyer45495252012-04-13 13:16:38 -050077# python glance client library
Monty Taylord5b18ec2012-07-26 09:21:01 -050078GLANCECLIENT_REPO=${GIT_BASE}/openstack/python-glanceclient
Dean Troyer45495252012-04-13 13:16:38 -050079GLANCECLIENT_BRANCH=master
80
Anthony Young096fb5a2011-09-26 13:14:46 -070081# unified auth system (manages accounts/tokens)
Monty Taylord5b18ec2012-07-26 09:21:01 -050082KEYSTONE_REPO=${GIT_BASE}/openstack/keystone.git
Dean Troyer6a3f6072012-02-16 16:31:24 -060083KEYSTONE_BRANCH=master
Anthony Young096fb5a2011-09-26 13:14:46 -070084
85# a websockets/html5 or flash powered VNC console for vm instances
Anthony Young220d9382012-05-04 10:19:44 -070086NOVNC_REPO=https://github.com/kanaka/noVNC.git
Jesse Andrews9c7c9082011-11-23 10:10:53 -080087NOVNC_BRANCH=master
Anthony Young096fb5a2011-09-26 13:14:46 -070088
Daniel P. Berranged10e12f2013-01-03 11:51:42 +000089# a websockets/html5 or flash powered SPICE console for vm instances
90SPICE_REPO=http://anongit.freedesktop.org/git/spice/spice-html5.git
91SPICE_BRANCH=master
92
Anthony Young096fb5a2011-09-26 13:14:46 -070093# django powered web control panel for openstack
Monty Taylord5b18ec2012-07-26 09:21:01 -050094HORIZON_REPO=${GIT_BASE}/openstack/horizon.git
Jesse Andrews9c7c9082011-11-23 10:10:53 -080095HORIZON_BRANCH=master
Anthony Young096fb5a2011-09-26 13:14:46 -070096
Tres Henryca85b792011-10-28 14:00:21 -070097# python client library to nova that horizon (and others) use
Monty Taylord5b18ec2012-07-26 09:21:01 -050098NOVACLIENT_REPO=${GIT_BASE}/openstack/python-novaclient.git
Anthony Young248221a2011-09-27 11:25:18 -070099NOVACLIENT_BRANCH=master
Anthony Young096fb5a2011-09-26 13:14:46 -0700100
Dean Troyer9f61d292012-11-26 18:56:20 +0000101# consolidated openstack python client
102OPENSTACKCLIENT_REPO=${GIT_BASE}/openstack/python-openstackclient.git
103OPENSTACKCLIENT_BRANCH=master
104
Anthony Young52e631d2011-12-27 22:22:14 -0800105# python keystone client library to nova that horizon uses
Monty Taylord5b18ec2012-07-26 09:21:01 -0500106KEYSTONECLIENT_REPO=${GIT_BASE}/openstack/python-keystoneclient
Anthony Young52e631d2011-12-27 22:22:14 -0800107KEYSTONECLIENT_BRANCH=master
108
Brad Hall1bfa3d52011-10-27 18:18:20 -0700109# quantum service
Monty Taylord5b18ec2012-07-26 09:21:01 -0500110QUANTUM_REPO=${GIT_BASE}/openstack/quantum
Jesse Andrews9c7c9082011-11-23 10:10:53 -0800111QUANTUM_BRANCH=master
Brad Hall1bfa3d52011-10-27 18:18:20 -0700112
Dave Lapsley5a09c922012-01-25 17:22:15 -0500113# quantum client
Dean Troyer60e9c0a2012-12-06 15:52:52 -0600114QUANTUMCLIENT_REPO=${GIT_BASE}/openstack/python-quantumclient
115QUANTUMCLIENT_BRANCH=master
Dave Lapsley5a09c922012-01-25 17:22:15 -0500116
Dean Troyer608bb122012-01-10 14:43:17 -0600117# Tempest test suite
Monty Taylord5b18ec2012-07-26 09:21:01 -0500118TEMPEST_REPO=${GIT_BASE}/openstack/tempest.git
Dean Troyer608bb122012-01-10 14:43:17 -0600119TEMPEST_BRANCH=master
Dean Troyerb0e57cf2011-11-04 12:13:43 -0500120
Steve Bakerbfdad752012-08-18 09:00:42 +1200121# heat service
Steven Hardy9a27dd82012-12-03 12:41:02 +0000122HEAT_REPO=${GIT_BASE}/openstack/heat.git
Steve Bakerbfdad752012-08-18 09:00:42 +1200123HEAT_BRANCH=master
124
Steve Baker32761a42012-11-05 09:57:57 +1300125# python heat client library
Clint Byrumdf1cf942013-01-10 11:12:45 -0800126HEATCLIENT_REPO=${GIT_BASE}/openstack/python-heatclient.git
Steve Baker32761a42012-11-05 09:57:57 +1300127HEATCLIENT_BRANCH=master
128
Yoshihiro Kaneko602cf9b2012-07-23 06:27:36 +0000129# ryu service
130RYU_REPO=https://github.com/osrg/ryu.git
131RYU_BRANCH=master
132
Devananda van der Veenf35cf912012-11-12 17:58:38 -0800133# diskimage-builder
134BM_IMAGE_BUILD_REPO=https://github.com/stackforge/diskimage-builder.git
135BM_IMAGE_BUILD_BRANCH=master
136
Devananda van der Veen7611c892012-11-23 10:54:54 -0800137# bm_poseur
138# Used to simulate a hardware environment for baremetal
139# Only used if BM_USE_FAKE_ENV is set
140BM_POSEUR_REPO=https://github.com/tripleo/bm_poseur.git
141BM_POSEUR_BRANCH=master
142
143
Devananda van der Veenc0c6f002012-07-06 17:49:12 -0700144# Nova hypervisor configuration. We default to libvirt with **kvm** but will
145# drop back to **qemu** if we are unable to load the kvm module. ``stack.sh`` can
146# also install an **LXC** or **OpenVZ** based system.
147VIRT_DRIVER=${VIRT_DRIVER:-libvirt}
148LIBVIRT_TYPE=${LIBVIRT_TYPE:-kvm}
149
150# allow local overrides of env variables
151if [ -f $RC_DIR/localrc ]; then
152 source $RC_DIR/localrc
153fi
154
Dean Troyer4a43b7b2012-08-28 17:43:40 -0500155# Specify a comma-separated list of UEC images to download and install into glance.
Scott Moser4f6d7b62011-12-08 16:22:51 -0500156# supported urls here are:
157# * "uec-style" images:
158# If the file ends in .tar.gz, uncompress the tarball and and select the first
159# .img file inside it as the image. If present, use "*-vmlinuz*" as the kernel
160# and "*-initrd*" as the ramdisk
161# example: http://cloud-images.ubuntu.com/releases/oneiric/release/ubuntu-11.10-server-cloudimg-amd64.tar.gz
162# * disk image (*.img,*.img.gz)
163# if file ends in .img, then it will be uploaded and registered as a to
164# glance as a disk image. If it ends in .gz, it is uncompressed first.
Jason Kölker64a90662012-01-23 11:17:27 -0600165# example:
Scott Moser4f6d7b62011-12-08 16:22:51 -0500166# http://cloud-images.ubuntu.com/releases/oneiric/release/ubuntu-11.10-server-cloudimg-armel-disk1.img
Scott Mosercde655a2013-02-20 12:33:39 -0500167# http://download.cirros-cloud.net/0.3.1/cirros-0.3.1-x86_64-rootfs.img.gz
Dean Troyer4a43b7b2012-08-28 17:43:40 -0500168# * OpenVZ image:
169# OpenVZ uses its own format of image, and does not support UEC style images
170
Scott Moser3584e552011-12-08 16:23:27 -0500171#IMAGE_URLS="http://smoser.brickies.net/ubuntu/ttylinux-uec/ttylinux-uec-amd64-11.2_2.6.35-15_1.tar.gz" # old ttylinux-uec image
Scott Mosercde655a2013-02-20 12:33:39 -0500172#IMAGE_URLS="http://download.cirros-cloud.net/0.3.1/cirros-0.3.1-x86_64-disk.img" # cirros full disk image
Dean Troyer4a43b7b2012-08-28 17:43:40 -0500173
174# Set default image based on ``VIRT_DRIVER`` and ``LIBVIRT_TYPE``, either of
Nachi Uenofda946e2012-10-24 17:26:02 -0700175# which may be set in ``localrc``. Also allow ``DEFAULT_IMAGE_NAME`` and
Dean Troyer4a43b7b2012-08-28 17:43:40 -0500176# ``IMAGE_URLS`` to be set directly in ``localrc``.
Devananda van der Veenc0c6f002012-07-06 17:49:12 -0700177case "$VIRT_DRIVER" in
Nachi Uenofda946e2012-10-24 17:26:02 -0700178 openvz)
Devananda van der Veenc0c6f002012-07-06 17:49:12 -0700179 DEFAULT_IMAGE_NAME=${DEFAULT_IMAGE_NAME:-ubuntu-11.10-x86_64}
180 IMAGE_URLS=${IMAGE_URLS:-"http://download.openvz.org/template/precreated/ubuntu-11.10-x86_64.tar.gz"};;
181 libvirt)
182 case "$LIBVIRT_TYPE" in
183 lxc) # the cirros root disk in the uec tarball is empty, so it will not work for lxc
Scott Mosercde655a2013-02-20 12:33:39 -0500184 DEFAULT_IMAGE_NAME=${DEFAULT_IMAGE_NAME:-cirros-0.3.1-x86_64-rootfs}
185 IMAGE_URLS=${IMAGE_URLS:-"http://download.cirros-cloud.net/0.3.1/cirros-0.3.1-x86_64-rootfs.img.gz"};;
Devananda van der Veenc0c6f002012-07-06 17:49:12 -0700186 *) # otherwise, use the uec style image (with kernel, ramdisk, disk)
Scott Mosercde655a2013-02-20 12:33:39 -0500187 DEFAULT_IMAGE_NAME=${DEFAULT_IMAGE_NAME:-cirros-0.3.1-x86_64-uec}
188 IMAGE_URLS=${IMAGE_URLS:-"http://download.cirros-cloud.net/0.3.1/cirros-0.3.1-x86_64-uec.tar.gz"};;
Devananda van der Veenc0c6f002012-07-06 17:49:12 -0700189 esac
190 ;;
191 *) # otherwise, use the uec style image (with kernel, ramdisk, disk)
Scott Mosercde655a2013-02-20 12:33:39 -0500192 DEFAULT_IMAGE_NAME=${DEFAULT_IMAGE_NAME:-cirros-0.3.1-x86_64-uec}
193 IMAGE_URLS=${IMAGE_URLS:-"http://download.cirros-cloud.net/0.3.1/cirros-0.3.1-x86_64-uec.tar.gz"};;
Scott Mosera3682182011-12-16 10:29:10 -0500194esac
Anthony Young0ab1d462011-10-13 23:03:23 -0700195
Eoghan Glynn9cb17762012-07-15 10:22:45 +0100196# 5Gb default volume backing file size
197VOLUME_BACKING_FILE_SIZE=${VOLUME_BACKING_FILE_SIZE:-5130M}
Nachi Uenofda946e2012-10-24 17:26:02 -0700198
199PRIVATE_NETWORK_NAME=${PRIVATE_NETWORK_NAME:-"private"}
200PUBLIC_NETWORK_NAME=${PUBLIC_NETWORK_NAME:-"nova"}