5ce44cd63b6e2b53f08a6b4b87cb4ab11d1ade26
Commit Graph

59 Commits

Author SHA1 Message Date
Dean Troyer
5ce44cd63b Fix is_keystone_enabled()
is_keystone_enabled() was calling is_service_enabled(), which is what called
is_keystone_enabled() in the first place. Make it work as designed and
also change calls to use the full service name. Note that this is all
still comptible with the prior usage of 'is_service_enabled key'.
Change-Id: I9c28377ecf074b7996461d2a4ca12d88dfc4d47e
2015年02月16日 10:52:18 -06:00
Rob Crittenden
ebcb849634 Unconfigure the devstack CA when USE_SSL is True
Change-Id: I17cb5e5d93bfe6fc6746ee530f639e2ed42da85a
2015年02月09日 22:45:22 -05:00
Sean Dague
117c6c2048 remove lib/stackforge
Now that we have a working external plugin mechanism stackforge
projects definitely don't need to be directly in devstack. These were
largely unused previously anyway.
Change-Id: I300686b2ac976d9b454404842b3f210fd7c239d9
2015年02月10日 07:53:36 -05:00
Daniel Genin
d470867f08 Adds support for LVM ephemeral storage in Nova
DevStack currently lacks support for LVM ephemeral storage in Nova.
This support is important for testing of Nova's LVM backend. The
proposed change adds a default volume group, to be shared by Cinder
and Nova. It also adds a configuration option NOVA_BACKEND, which
must be LVM if it is set, that determines whether Nova should be
configured to use LVM ephemeral storage.
Change-Id: I4eb9afff3536fbcd563939f2d325efbb845081bb
2015年01月19日 11:51:16 -05:00
Sean Dague
537532931d Make changes such that -o nounset runs
This makes a bunch of variable cleanups that will let -o nounset
function, for the time being we hide nounset behind another setting
variable so that it's not on by default.
Because this is bash, and things are only executed on demand, this
probably only works in the config it was run in. Expect cleaning up
all the paths to be something that takes quite a while.
This also includes a new set of unit tests around the trueorfalse
function, because my change in how it worked, didn't. Tests are good
m'kay.
Change-Id: I71a896623ea9e1f042a73dc0678ce85acf0dc87d
2015年01月15日 13:06:14 -05:00
Sean Dague
2c65e71ab8 Implement devstack external plugins
This is an initial pass at plugin infrastructure for devstack which
allows specifying an external repository via:
enable_plugin <name> <giturl> [branch]
It implements the devstack specification for this at
I173dee3d57967b1d2ffd30e4868a2832aeac97ce
Change-Id: I8e4175313b3cf0b12e981122358b1288a7eb0746
2015年01月06日 12:30:25 -05:00
Sean Dague
2f8e08b572 remove nova baremetal driver support
This has been deleted from the nova tree, we should purge it from
devstack, as it will not work any more.
Change-Id: I20501fec140998b91c9ddfd84b7b10168624430a
2014年12月05日 08:31:16 -05:00
Joe Gordon
944b28280b Drop workaround for pip < 1.4
Now that we are on pip 1.5.6 lets drop the workaround to make pip 1.4
work. As this is a development/testing tool requiring a newer pip
shouldn't be an issue. Also stack.sh installs pip by default.
Work around introduced in https://github.com/pypa/pip/issues/709
Change-Id: I0e7aad1d21f4fce4c020ce36685bb56893c66bdc
2014年10月01日 19:52:23 -07:00
Martin André
48a75c14a1 Source lib/dstat in unstack.sh
`stop_dstat` function was extracted into $TOP_DIR/lib/dstat in commit
e0b08d04ab but the new lib was not sourced in
unstack.sh.
Change-Id: I6878552d9f384fdd7882e52000b37ac6a60844c3
Closes-Bug: 1366713
2014年09月08日 09:02:44 +00:00
Joe Gordon
e0b08d04ab Pull dstat logic into its own function so grenade can use it
In order to use dstat on the new side of grenade, pull dstat code into
its own lib with the function start_dstat
Change-Id: I5c908d594a6f3a90ed4b3f744002bf606841cf07
2014年08月26日 17:10:52 -07:00
Stanislaw Pitucha
bd5dae0618 Do a proper tls/ca cleanup in unstack
Certificates and the index were left in the data directory after
running unstack. That would break devstack on the next run.
partial blueprint devstack-https
Change-Id: I6eb552a76fb29addf4d02254c027e473d6805df1
2014年06月30日 10:52:25 +01:00
Eric Windisch
e994f5708d Remove bm_poseur, unmaintained and obsolete
The bm_poseur git repository link has been broken
for over 11 months. The virtualized/fake baremetal
environment is not working and has not worked in a
long time. Now, on the tail of enabling 'enable -o errexit',
this functionality now has a hard break.
Change-Id: I3cbd8db58c422bc5273d2433278aaa5e449ecfd9
Closes-Bug: 1285954
2014年02月28日 15:21:38 -05:00
Jenkins
7719d4aca8 Merge "Begin is_service_enabled() cleanup" 2014年02月12日 07:19:11 +00:00
Dean Troyer
e4fa721322 Begin is_service_enabled() cleanup
This converts the special cases in the is_service_enabled() function to call
individual functions declared by the projects. This allows projects that
are not in the DevStack repo and called via the extras.d plugin to handle
an equivalent service alias.
* Ceilometer
* Cinder
* Glance
* Neutron
* Nova
* Swift
TODO: remove the tests from is_service_enabled() after a transition period
Patch Set 2: Rebased
Change-Id: Ic78be433f93a9dd5f46be548bdbd4c984e0da6e7
2014年02月07日 10:06:21 -06:00
Dean Troyer
1023ff7c3a Move ironic to plugin
Also adds an is_ironic_enabled() function to prepare for an upcoming
change in is_service_enabled().
Change-Id: I6e6e0e8b70221e231785ab27e9b5d4836933ac4c
2014年02月04日 15:51:38 -06:00
Dean Troyer
fc744f9713 Convert trove to plugin
Also adds an is_trove_enabled() function to match
https://review.openstack.org/69497 changes for is_service_enabled().
Change-Id: Ic0408ff6d9816aec8a3506931470470342a5dcd7
2014年01月27日 17:16:33 -06:00
Brant Knudson
0049c0c434 Make unstack.sh more like stack.sh
unstack.sh and stack.sh both have to "configure projects", but the
code was different. This change makes it so the 2 sections of the
files are the same.
Change-Id: Ia06f8bbfbe2a6e87fb406e34e13a39bd7fa9e5af
2014年01月16日 18:16:48 -06:00
Gordon Chung
5eec5b6b80 command not found errors on unstack
- add lib/ceilometer and lib/heat to source list for when stop_heat
and stop_ceilometer functions are called.
- add lib/tls source to lib/keystone for when is_ssl_enabled_service
function called.
Change-Id: Ief05766e9cfda71fb6392c8a757d04751283414e
Closes-Bug: #1269047 
2014年01月14日 11:23:39 -05:00
Dean Troyer
9fc8792b0a Robustify service shutdown
* Save PID when using screen in screen_it()
* Add screen_stop()
* Call out service stop_*() in unstack.sh functions so screen_stop()
 can do its thing
Closes-bug: 1183449
Change-Id: Iac84231cfda960c4197de5b6e8ba6eb19225169a
2014年01月11日 11:46:19 -06:00
Dean Troyer
cdf3d76647 Add stack phases to extras.d handling
Add hooks to stack.sh, unstack.sh and clean.sh to call the extras.d
scripts at multiple points in stack.sh. This allows these scripts to
perform installation and startup tasks at similar times as they would
if integrated into stack.sh.
extras.d/70-tempest.sh is present as an example of the structure
of these scripts.
See extras.d/README.md for more information.
Change-Id: Ic1fe522559b94d204d6c0319a2e3d23684c8d028
2013年10月15日 16:13:47 -05:00
Dean Troyer
23f69d83e5 Split the creation of $STACK_USER account out of stack.sh
Automatically creating a new user account is not always the right course
of action when stack.sh is running as root. Plus, the re-exec did not
work correctly in some cases.
* Create tools/create-stack-user.sh to set up a suitable user
 for running DevStack
* Abort stack.sh and unstack.sh if running as root and suggest creating a
 suitable user account.
Change-Id: I5d967c00c89f32e861449234ea8fe19261cd9ae3
2013年10月04日 16:36:00 -05:00
Nikhil Manchanda
0cccad43aa Added Trove (Database as a Service).
- Added changes to stackrc for the Trove Repos.
- Added support to devstack for "install", "configure",
 "init", and "run"
implements blueprint:trove-devstack-integration
Change-Id: Ib3f6daad33e629f764a174b80762c808ce8588e2
2013年09月11日 23:48:07 +00:00
Jenkins
630d03e77a Merge "Basic support of Ironic" 2013年09月03日 16:19:06 +00:00
Dean Troyer
2aa2a89cdb Add support for Docker as Nova hypervisor
* Add basic support for hypervisor plugins in lib/nova_plugins
* Add lib/nova_plugins/hypervisor-docker to use Docker as a Nova
 hypervisor.
* Add tools/install_docker.sh to install the Docker daemon and
 registry container, download base image and import
* Configure Nova to use docker plugin
* Add docker exercise and skip unsupported ones
Nova blueprint: new-hypervisor-docker
Change-Id: I9e7065b562dce2ce853def583ab1165886612227
2013年08月28日 22:36:48 -05:00
Roman Prykhodchenko
ce696b60d7 Basic support of Ironic
Ironic is an OpenStack project than brings a
separate service for baremetal provisioning.
Currently Ironic is in incubation but it needs
to have basic support in devstack to provide
automatic deployment testing.
Change-Id: Ide65a1379fa207a6c8b2c7d9a4f9c874b10fd9ba
2013年08月22日 12:30:51 +03:00
zhang-hare
d98a5d0a58 enable apache2 server as front end for swift
1.install apache and wsgi module
2.config apache2 vhost and wsgi files for proxy,
account, container and object server.
3.refactor apache functions from horizon and swift
into lib/apache
Change-Id: I3a5d1e511c5dca1e6d01a1adca8fda0a43d4f632
Implements: blueprint enable-apache-frontend-for-swift
2013年07月29日 11:15:21 +08:00
Ian Wienand
31dcd3e7ab Use unique build dir for pip installs
There is a bug in pip [1] where it will choose to install a package
from an existing build-dir if it exists over the version actually
requested.
Thus if a prior component has installed a later version of the
package, the unpacked code is already in /tmp/$USER-pip-build; it gets
re-installed and manifests in a confusing error along the lines of
---
 Downloading/unpacking requests>=1.1,<1.2.3
 (from -r /home/stack//python-cinderclient/requirements.txt (line 5))
 Running setup.py egg_info for package requests
 Requested requests>=1.1,<1.2.3 (from -r
 /home/stack/python-cinderclient/requirements.txt (line 5)),
 but installing version 1.2.3
...
 error: Installed distribution requests 1.2.3 conflicts with
 requirement requests>=1.1,<1.2.3
---
I believe pip 1.4 fixes this problem, but it should always be safe to
specify a unique build-directory for pip installs to avoid picking up
old versions.
We also add a cleanup_tmp function for clearing out anything that
stack.sh might leave around when un-stacking, and add a catch-all for
the pip-build dir.
[1] https://github.com/pypa/pip/issues/709
Change-Id: I7ce919cddfd6d6175ae67bd864f82e256ebc7090
2013年07月19日 10:44:50 +10:00
Mark McClain
b05c876994 update for name change to Neutron
Note: Nova and Horizon are not updated until those projects have
migrated.
Change-Id: I256ef20e7caadd9c96e6dd908c5d8b69ca5c4aeb
2013年07月07日 00:15:11 -04:00
JordanP
614202fc40 On unstack : clean up network namespaces created by quantum
Also removes OVS ports
Fix Bug #1156837
Change-Id: Id4178c0a12a3ada76403a57a736a9c7a908d6a4a
2013年05月22日 10:00:30 +02:00
Chmouel Boudjnah
0c3a5584c6 Enable swift by default.
- Set by default SWIFT_REPLICAS to 1 since this is the most common use
 case when using it in devstack.
- If we have swift_replicas to 1 launch the object container account and
 proxy servers in foreground in screen.
- Allow any s- services if we have just 'swift' in service enabled
 instead of having to specify all s- services to enable swift. This will be
 removed in the future.
- Set object server starting at 6013 instead of 6010 to not conflict
 with remote ssh x11 forwarding.
Change-Id: I890b6953b70283bfa0927fff0cf5e92f3c08455b
2013年03月06日 13:16:37 +01:00
Sean Dague
f3fd44c4be Revert "Enable swift by default."
This reverts commit 5a5cbf7274.
This breaks on a default openstack install on Ubuntu 12.10,
revert for now until this can be cleaned up to work out of the
box.
Change-Id: I185509cc30bd28e920cdab60fc92129949bd6b0d
2013年03月04日 17:52:03 -05:00
Chmouel Boudjnah
5a5cbf7274 Enable swift by default.
- Set by default SWIFT_REPLICAS to 1 since this is the most common use
 case when using it in devstack.
- If we have swift_replicas to 1 launch the object container account and
 proxy servers in foreground in screen.
- Allow any s- services if we have just 'swift' in service enabled
 instead of having to specify all s- services to enable swift. This will be
 removed in the future.
Change-Id: I496f79e14f99bd7e9f2c7deee12a4b6e935c3a5b
2013年02月22日 18:50:08 +01:00
Chmouel Boudjnah
43eb0b3159 Make sure to cleanup swift on unstack/relaunch.
- Fixes bug 1049553.
Change-Id: I9fef93d25512c014dfb882adf0e169487bf877d8
2013年01月12日 20:10:34 +00:00
Dean Troyer
768295e9f1 Add mechanism to automatically load additional projects
This adds an extras.d directory to contain startup scripts that
stack.sh runs automatically at the end. Similar to local.sh
except the scripts are sourced into the stack.sh process rather
than executed as a child process. This gives them complete
access to the stack.sh environment.
Convert Tempest to use this format as an example.
Change-Id: Ibc95e6aaecf4211da948319eb452293ae4357780
2013年01月09日 19:53:45 -06:00
Devananda van der Veen
7611c894b5 Add fake env support to baremetal
Use bm_poseur to create VM and network bridge
so that, in the absence of physical hardware,
baremetal driver still has something to manipulate.
Change-Id: Id80ede13a35e4380f358b47f08d41ff98ea9d70f
2012年12月28日 10:56:17 -08:00
Jenkins
3dc18034d6 Merge "clean up cinder on an unstack" 2012年12月27日 22:14:00 +00:00
Akihiro MOTOKI
66afb47cb9 Refactor quantum installation
* Move quantum installation to lib/quantum
* Refactor quantum configuration
* Move Quantum service account creation from keystone_data.sh to lib/quantum
* Define generic functions to install third party programs
* Minor cleanups related to Quantum
 * Kill dnsmasq which watches an interface 'ns-XXXXXX' in unstack.sh
 * Set default_floating_pool in nova.conf to make default flaoting pool
 work when PUBLIC_NETWORK_NAME is other than 'nova'
 * Make tempest work even when PRIVATE_NETWORK_NAME is other than 'private'
Change-Id: I4a6e7fcebfb11556968f53ab6a0e862ce16bb139
2012年12月26日 23:41:38 +09:00
Sean Dague
252f2f533b clean up cinder on an unstack
cinder currently has issues that leave volumes around
after tempest tests. Make sure that cinder gets cleaned
up to a zero state on an unstack.sh so that we can reset
the environment.
Change-Id: I448340899bf0fae7d4d16fa26da17feafcef888f
2012年12月20日 16:43:41 -05:00
Dean Troyer
c83a7e125f Add TLS support for keystone via proxy
* Adds lib/tls to create test CA/certs
* Start proxy if 'tls-proxy' is enabled
* Configure keystone service catalog for TLS
* Tear down proxy in unstack.sh
* Set auth protocol and ca-cert chain in openrc
* Add DATA_DIR to stackrc
This is the first in a series of patches to enable TLS support
for the service API endpoints.
Change-Id: Ia1c91dc8f1aaf94fbec9dc71da322559a83d14b6
2012年12月11日 17:08:54 -06:00
Jenkins
2e69ba7918 Merge "move setup_quantum to stack.sh" 2012年12月06日 16:44:09 +00:00
Nachi Ueno
8bc21f6476 move setup_quantum to stack.sh
sudo is only allowed in stack.sh on the CI, so move setup_quantum code
to the stack.sh.
also fixes quantum debug command setup for linuxbridge and ryu
Change-Id: I11bc0aa242a690e25acc088b3e9f483ceab38f26
2012年12月05日 17:55:08 -08:00
Vincent Untz
c18b965152 Add is_ubuntu function
This replaces all of the [[ "$os_PACKAGE" = "deb" ]] tests, except when
those tests are before straight calls to dpkg.
Change-Id: I8a3ebf1b1bc5a55d736f9258d5ba1d24dabf04ea
2012年12月04日 18:30:13 +01:00
Attila Fazekas
ece6a332b7 Refactor swift installation
* Optimize loops
* Move install steps to the lib/swift
Change-Id: Ie8a74b2627395620ccb0501171fa0150ee7497f2
2012年11月30日 20:36:50 +01:00
Sean Dague
b562e6a710 move horizon logic to lib to clean up stack.sh
pre holiday refactor extrodinare, get the horizon code
over fully into lib/horizon so that all these fixes aren't
scattered through stack.sh
Change-Id: I7f26c5c6708d5693048eb7b1ce792122adbc7351
2012年11月26日 10:24:09 -05:00
Joe Gordon
6fd2811726 Remove support for nova-volume
* nova-volume has been removed in Grizzly
* part of delete-nova-volume
Change-Id: Iba91d69950767823d77aaaa93243b0f476dbb04d
2012年11月14日 13:21:58 -08:00
Terry Wilson
428af5a257 Add PostgreSQL support to devstack
This patch adds an interface for supporting multiple database backend
types and implemnts support for PostgreSQL. It also adds a function,
use_exclusive_service, which serves as a base for enabling a service
that conflicts with other services. The use_database function uses it,
and it might also be useful for selecting messaging backends.
MySQL is still selected by default. Tested on Fedora 17 and Ubuntu
12.04 with MySQL and PostgreSQL. Implements blueprint postgresql-support
Change-Id: I4b1373e25676fd9a9809fe70cb4a6450a2479174
2012年11月03日 18:19:21 -04:00
Yoshihiro Kaneko
602cf9bd68 Add support for the Quantum Ryu plugin.
This patch allows using the Quantum Ryu plugin.
Ryu plugin lets Quantum link Open vSwitch and Ryu OpenFlow controller[1].
Ryu OpenFlow controller is not Openstack component, but I added some
processing that is related with Ryu to stack.sh for the convenience of
the person who intend to try the plugin.
Instructions for using Ryu plugin:
1. Enable services: "q-svc", "q-agt", "q-dhcp", "q-l3", "quantum", "ryu"
2. Set Q_PLUGIN to "ryu"
3. Set an internal network interface name to connect br-int on plural
 hosts to RYU_INTERNAL_INTERFACE (optional)
Example localrc:
 disable_service n-net
 enable_service q-svc q-agt q-dhcp q-l3 quantum ryu
 Q_PLUGIN=ryu
 RYU_INTERNAL_INTERFACE=eth1
[1] http://osrg.github.com/ryu/
Change-Id: Ic1da132fa421f1c70c10a319ee3239831b0f956f
2012年10月19日 07:00:32 +00:00
Surya Prabhakar
a9c4a8aff2 kill throws an error while finding pid
in quantum dhcp agent section
Change-Id: I602df7875710336125cdbb8407ff293a8e7d448e
2012年10月06日 19:41:36 +05:30
John Griffith
d53bedc6bb Enhance tgt cleanup in unstack.sh
*Check that tgt driver is in good state when we start
 if not try to just restart it
 *Remove targets based on iqn entries in persist files
 *Remove the persist files themeselves
 *Stop the tgt service
Updated to use *_STATE_DIR vars
Change-Id: I3ba9f2b8c099c7f290696760527fe2147d9b1d38
2012年09月14日 16:01:19 -05:00
Josh Kearney
659eabfb6f Shut down rabbitmq-server when shutting down all services.
Fixes bug 978205.
Change-Id: I688887e4b4426db36438f2bf0e537956f4f94757
2012年09月06日 15:10:38 -05:00