303 Commits

Author SHA1 Message Date
Dean Troyer
681f3fddec Add run_process() to start services without screen
* USE_SCREEN defaults to True, set it to False to exec the services
  directly via bash.  SCREEN_DEV is still supported until the CI
  scripts get updated.
* The extra logging file descriptors are properly closed in the child process
  and stdout/stderr are redirected to the log files.
* The screen_rc() call is still present; this means that stack-screenrc will
  have a complete record of what was started and rejoin-stack.sh may be able
  to re-create the setup under screen.
* The python interpreter was unwilling to write to the log files without
  unbufering stdout by using PYTHONUNBUFFERED.  This feels hackish and should
  be investigated further.

Change-Id: I012ed049f2c8b185a2e6929d73edc29e167bc21f
2013-03-20 11:23:13 -05:00
Dean Troyer
995eb927f7 Add clean.sh
clean.sh gets rid of all residue of running DevStack except installed
packages and pip modules.

And it eradicates rabbitmq-server and ts erlang dependencies as well as
the other RPC backends and databases.

Change-Id: I2b9a251a0a151c012bae85a5a2f9c2f72e7700be
2013-03-15 10:30:37 -05:00
Jenkins
08fd641a19 Merge "Enable swift by default." 2013-03-15 14:41:54 +00:00
Jenkins
5c13e5442f Merge "Extract HOST_IP default process to a function" 2013-03-15 14:38:27 +00:00
Jenkins
ee00b92987 Merge "Minor comment corrections" 2013-03-14 22:59:49 +00:00
Jenkins
a268bf9ba4 Merge "Support MultiStrOpt options in configuration file." 2013-03-14 22:03:00 +00:00
Dean Troyer
ac93efb3c1 Minor comment corrections
Change-Id: Ibe516911e76bb250bc5ea582b0d8b8a3b12890f1
2013-03-14 21:19:19 +00:00
Dean Troyer
c892bde6b4 Extract HOST_IP default process to a function
This process is required by Grenade also...

Change-Id: I263a4351e70b9cfb0965e57e518fe5fd377f4b43
2013-03-14 14:52:38 -05:00
Vincent Untz
cd1fe98494 Handle LSB data for openSUSE 12.3
The LSB vendor changed to "openSUSE project" in openSUSE 12.3. Deal with
it as if it were simply "openSUSE".

Change-Id: Id20eac6abba4c07aed1cf4617e89357974f62ff8
2013-03-12 18:04:58 +01: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
Lianhao Lu
239f3246ad Support MultiStrOpt options in configuration file.
Fixed bug #1136964.

1. Added 3 ini functions to support MultiStrOpt:
  Function "iniset_multiline config-file section option value1 value2
value3 ..." sets a MultiStrOpt option in an ini file.

  Function "iniget_multiline config-file section option" gets the
MultiStrOpt option values.

  Function "iniadd config-file section option value1 value2 value3..."
appends an option without relacing the old values, which would result
the option to be MultiStrOpt.

2. Modified the nova configuation to correctly enable notification for
ceilometer.

Change-Id: I1c27db1a6e58b35bc4428e761f40627988f69e37
2013-03-06 09:42:14 +08:00
Sean Dague
f3fd44c4be Revert "Enable swift by default."
This reverts commit 5a5cbf7274a6a50bb766ec590cf885430ed5c5d0.

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
Jenkins
f90b2740f7 Merge "Refactor error logging" 2013-03-04 14:12:10 +00:00
Jenkins
d30239a626 Merge "Enable swift by default." 2013-03-02 14:33:58 +00:00
Bob Ball
3aa8887170 Allow DATABASE_TYPE to be specified in localrc
The use of DATABASE_TYPE without forcing it into ENABLED_SERVICES
seems to be the only way to set up a multi-host devstack installation.

Only deprecate use_database.
Changes functionality of use_database to be equivalent to specifying DATABASE_TYPE
This means that people with localrc's that only specify use_database used to have
a database service brought up, but now will not until they add it to ENABLED_SERVICES.

Change-Id: I4c6e8ee31f298004338ca46bfc330a3e3af288aa
Fixes: bug 1136028
2013-03-01 14:04:13 +00:00
Nachi Ueno
07115eb5c0 Refactor error logging
It is hard to grep errors in current log. so in this patch,
I'm updating die function which also writes log for
screen_log_dir/error.log.
In future, we may categolize negative fault by using
this error.log.

Change-Id: I70a8cfe67ed408284f5c88c762c6bb8acb8ecdb2
2013-02-28 11:54:24 -08:00
Isaku Yamahata
8c43809ef6 package: consolidate get_packages logic
Refactor get_package logic.
With this refactoring, code like
"if is_ubuntu; then install_package xxx elif is_fedora..."
can be simplified later.

Change-Id: I489bfd4cc12cc6b0b8201837f2bfb78c6881c82c
Signed-off-by: Isaku Yamahata <yamahata@valinux.co.jp>
2013-02-26 17:39:05 +09: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
Jenkins
3bfc90df4c Merge "Upload XenServer style ovf directly to glance" 2013-02-22 12:30:37 +00:00
Jenkins
d0b1c37816 Merge "Deprecate DATABASE_TYPE and use_database" 2013-02-22 12:26:03 +00:00
Dean Troyer
afc29fe5f2 Deprecate DATABASE_TYPE and use_database
Select a database by adding it to ENABLED_SERVICE like the other
services.  This greatly simplifies using the lib/* functions in
places other than stack.sh

Backward-compatibility is maintained or now (into havana at least).

Change-Id: I967e44603b4d69d5d70e1a75a9938172ca434025
2013-02-21 17:32:04 -06:00
Davanum Srinivas
316ed6cc6e Upload XenServer style ovf directly to glance
Don't decompress images ending with .vhd.tgz, just send them
to glance

Fixes LP# 1117256

Change-Id: I201debc2e34808703c717276d192169b1ed24c05
2013-02-20 23:57:47 +00:00
Jeremy Stanley
25ebbcd1a7 Bring back screen logs for noninteractive runs.
* functions(screen_it): Prior to 58e2134 screen logs were generated
even when run without $SCREEN_DEV. We want to be able to capture
these with devstack-gate for later inspection, so this patch
reintroduces that capability.

Change-Id: Ife127b47d7700878e02285281854595bc6585972
2013-02-17 15:49:55 +00:00
Vishvananda Ishaya
58e2134964 Add option to make screen starting more robust.
We have seen a number of failures in ci where a host is overloaded
and the 1.5 second sleep before stuffing data into screen is not
long enough. This means the service doesn't start and tests fail.

This change adds a config option to allow us to turn off the developer
friendly option to stuff text into the screen. When SCREEN_DEV is
set to False it will use a simple exec in screen instead of stuff.
This should be far more reliable because we don't have to wait
for bash to start.

Change-Id: I7f1b5dbf5329b23507cb767d54a2795be0d73e01
2013-02-12 09:12:45 -08:00
Dean Troyer
48352ee7c0 Create tools/install_prereqs.sh
* Factor system package prereq installs out to tools/install_prereqs.sh
* Set minimum time between runs with PREREQ_RERUN_HOURS
  default = 2 hours
* Create export_proxy_variables
* Force an update with install_prereqs.sh -f or by setting
  FORCE_PREREQ=true

Fixed an issue with exit/return in tools/install_prereqs.sh

Change-Id: I9a62090ad2f900b9b150cacb9cb02b326cb46972
2013-02-08 10:35:43 -06:00
Jakub Ruzicka
4196d5565e Introduce get_python_exec_prefix function.
get_python_exec_prefix returns the path to the direcotry where python
executables are installed, that is /usr/bin on Fedora and /usr/local/bin
everywhere else.

It is used to properly locate OpenStack executables.

Fixes: bug #1068386

Change-Id: I228498ebe2762568d00757d065e37377ee2c8fb3
2013-01-30 16:33:43 +01:00
Jenkins
1b3a97c684 Merge "Refactor rpc backend configuration logic" 2013-01-15 11:43:01 +00:00
Akihiro MOTOKI
b0f1c38bdc Refactor rpc backend configuration logic
This commit also changes the following:
- Fixes Nova QPID module path
- Fixes a bug Cinder ZeroMQ RPC points to nova module
- Adds ZeroMQ setting for Heat RPC

qpid_is_supported is moved from functions to lib/rpc_backend.

This work is based on the work by Isaku Yamahata <yamahata@valinux.co.jp>
in https://review.openstack.org/#/c/19074/.

Change-Id: I45e21b1fb85e539213f5243764132a37906d7455
2013-01-14 16:12:06 +09:00
Attila Fazekas
af988fd1d2 Support RHEL with lsb_release
Consider all distributor as "Red Hat" which id matches to the Red.*Hat regexp.

Example Distributor ID: "RedHatEnterpriseServer"

Change-Id: I29cc2e83cccaafa3e1e056e506fda5c9771764a1
2013-01-13 14:25:26 +01:00
Jenkins
9f67bd692c Merge "Fix iniset and his friends" 2013-01-11 01:18:27 +00:00
Jenkins
4159e6066d Merge "Remove unnecessary returns" 2013-01-08 05:17:22 +00:00
Jenkins
5d8ae5bb6b Merge "Use 'which pip' rather than /usr/bin/pip" 2013-01-04 22:26:01 +00:00
Nikhil Manchanda
35138ed673 Use 'which pip' rather than /usr/bin/pip
Bug 1095472: Bugfix to use 'which pip' rather than assume pip always lives in /usr/bin

Change-Id: I0cc8a5e35306372653c3c27da9504c64e39d56dd
2013-01-04 10:15:55 -08:00
Sean Dague
b73e247ad4 Revert "Create tools/install_prereqs.sh"
This reverts commit 7be0b04

This work breaks the ability to do multi database installs,
revert until there is a working solution here, as this is going
to make fixing postgresql in tempest impossible.

Change-Id: I39a2b78542fe60233806d1005186ce1b31d4be17
2013-01-02 14:00:58 -05:00
Jenkins
3a30b06daf Merge "Create tools/install_prereqs.sh" 2013-01-02 13:25:22 +00:00
Dean Troyer
3a3a2bac67 Set up Nova for TLS
* Start n-api proxy if 'tls-proxy' is enabled
* Configure nova service catalog for TLS

Change-Id: If031eb315f76c5c441a25fe3582b626bbee73c6e
2012-12-20 14:46:57 -06:00
Attila Fazekas
588eb4129d Fix iniset and his friends
* In python the white spaces are part of the section name
* Handle options with empty value
* Support paths with white spaces

Change-Id: I69a584608853cfdb8b7dce1e24d929216ef2fc41
2012-12-20 11:00:42 +01:00
Dean Troyer
7be0b047dc Create tools/install_prereqs.sh
* Factor system package prereq installs out to tools/install_prereqs.sh
* Set minimum time between runs with PREREQ_RERUN_HOURS
  default = 2 hours
* Create re_export_proxy_variables

Change-Id: I4a182b1da685f403d6abdd8540d2114796c01682
2012-12-19 12:30:35 -06:00
Attila Fazekas
251d3b5fbc Remove unnecessary returns
* remove duplicated xtrace
* remove some unnecessary return

Change-Id: If9e0a979e0bd5a334e82d42572ac0b149de341d7
2012-12-17 17:27:28 +01:00
Jenkins
dd0bed5dd0 Merge "Add a service_check function" 2012-12-12 18:20:01 +00:00
jiajun xu
a9414249af Add a service_check function
There is no function to check if the services invoked by devstack are
running well or not. We could use the function to check their status
and print them at the end of devstack running.

Change-Id: I845f6b5dddce5cffa7165ec58517f9ae5d8632a6
2012-12-08 00:04:34 +08:00
Vincent Untz
00011c0847 Add is_fedora and exit_distro_not_supported functions
Between is_fedora, is_ubuntu and is_suse, we can make the code a bit
simpler to read. We also use exit_distro_not_supported to identify
places where we need implementation details for new distros.

As "/sbin/service --skip-redirect" is Fedora-specific, guard this with a
is_fedora test too.

Change-Id: Ic77c0697ed9be0dbb5df8e73da93463e76025f0c
2012-12-07 09:06:07 +01: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
Jenkins
22d6799d73 Merge "Add a get_pip_command function" 2012-12-03 17:05:04 +00:00
Vincent Untz
8ec27220c5 Add a get_pip_command function
There are two places where we need to find the right command for pip, so
instead of having one version we fix and a buggy version we forget,
simply use a function :-)

Change-Id: I728c17ad7be5c86690c4d7907f77f1f98ec2b815
2012-12-03 17:00:39 +01:00
Russell Bryant
c2d2f52bbd Fix qpid support on Fedora.
The new qpid_is_supported function returned the opposite value from what
it was supposed to.  It returned success for the platforms where qpid is
not supported.

Change-Id: I0ceaae1dddaa6192657926834c6eb8006925f0cf
2012-12-03 10:05:18 -05:00
Steve Baker
1a7bbd255f is_suse false positives on Fedora
Also, uses of is_suse were also always evaluating to true
on Fedora.

Change-Id: I068f3179edbfb295163a4e4faa4998f2f7b2c124
2012-12-03 17:04:02 +13:00
Dean Troyer
afd472cb30 Don't combine sed options
Combining '-i -e' into '-ie' changes behaviour, don't do that

Change-Id: Ice46c6b4f899b4c76f355cc88241dd33bc60f459
2012-11-28 11:54:47 -06:00
Jenkins
e509d9cde7 Merge "Also pickup quantum distro dependencies (bug 1080886)." 2012-11-28 16:56:43 +00:00
Jenkins
518f1f5c6f Merge "Fix ini functions to handle spaces in section names" 2012-11-28 16:54:17 +00:00