131 Commits

Author SHA1 Message Date
Dean Troyer
d2cfcaa576 Fix get_pip_command()
Be more flexible in finding pip, especially after we start replacing it

Change-Id: I14b0ac1584aab99c2fe58a78e3a43196ae8130ca
2013-08-01 14:17:30 -05:00
Christian Berendt
a7a219ab76 renamed deprecated glanceclient parameter
According to the sources the parameter --public in python-glanceclient
should be removed after only using the new parameter --is-public in
Devstack.

Change-Id: I25fbb23f4823b3766db647dd50a5b538aad3e55a
2013-07-30 18:28:13 +02:00
Chris Behrens
c62c2b9b66 Fix various things when n-cell is enabled
1) Use the newer cell_type configuration option instead of overriding
the compute_api_class.

2) A nova-cells service is started for both the API cell (region) and
the compute cell (child).  The screen names were both 'n-cell' which
caused both services to log to the same log file.  The screen names have
been changed to n-cell-region and n-cell-child.

3) Security groups are not supported with cells.  Multiple exercises are
patched to use the 'default' security group instead of creating a new
one.  Additionally, if one uses the 'default' security group, do not try
to delete it, as one can never delete the default.

4) Disable the floating_ips and aggregates exercises when n-cell is
enabled, as they are not supported by cells.

5) Related to #4, disable the floating_ips tests within euca.sh

6) Update the README.md.  No services need to be disabled, and one only
needs to enable the n-cell service.

Change-Id: I9782d1e3cda3c9dd3daefa15c043f5b06473cb87
2013-07-26 11:11:25 -07:00
Jenkins
5011c03d03 Merge "Remove python-netaddr requirement" 2013-07-25 11:10:40 +00:00
Dean Troyer
d4f69b21f5 Remove python-netaddr requirement
Remove python-netaddr as a DevStack (stack.sh) requirement,
this does not change any individual project requirements.

Specifically it replaces address_in_net() and adds cidr2netmask()
and maskip() functions.

Change-Id: Ic604437fde2e057faced40a310ab282f3eb27726
2013-07-24 12:25:35 -05: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
Jenkins
2076647e21 Merge "update for name change to Neutron" 2013-07-07 21:32:23 +00: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
Monty Taylor
e7e51ac5e6 Directly install requirements with pip
Rather than parsing then feeding the pip requirements file to pip,
just have pip consume it directly.

Change-Id: I17bbe4324e6957c7165bc0f340ddae1e51039471
2013-07-04 16:09:46 -04:00
Steven Dake
3039657688 Enable Fedora 19 on DevStack
Fedora uses a special PROMPT_COMMAND for screen terminal types,
which are the default with DevStack.  The PROMPT_COMMAND interacts
in a negative way with the -t and -X and -p flags, causing DevStack
not to work.  To solve this problem, this patch forces PROMPT_COMMAND
to default to /bin/true, triggering no changes to the window title
used within screen.  Also this patch enables F19 as a non-FORCE
distribution.

Change-Id: I2414d9e28dd95b69272e132163b29ed83f73b2f6
Fixes: bug #1196340
2013-06-30 16:13:00 -07:00
Martin Vidner
4f9b33d077 Fix python exec prefix on SUSE.
https://bugs.launchpad.net/devstack/+bug/1068386
"sudo python setup.py develop" installs to /usr/bin on SUSE

Otherwise it fails with "stack.sh:191 g-api did not start".

Change-Id: I1258240ce2a5a765188353fbc8a2e085d0b02fec
2013-06-27 17:57:22 +02:00
Daniel Jones
fa868cb59c Disable vnc on Power Systems
Power systems don't have graphics adapters, so we can't simulate a VNC
console. This patch removes that from the default nova configuration
if the system architecture is ppc64.

Change-Id: I129d180b712115e5c275241740d34805fea23e8b
2013-06-18 18:20:41 -05:00
Kyle Mestery
51a3f1f636 Fix the OVS version check to work with upstream master versions of OVS.
This patch adds two functions to check version strings in the toplevel
functions file. The openvswitch_agent then uses these to compare versions
when checking for tunneling support. The tunneling version check now
also takes into account upstream master versions of Open vSwitch, which
the previous version check always failed on.

Fixes bug #1190734

Change-Id: I0102fb57f8ce5529169025efa21a0996ad68bef1
2013-06-14 10:01:15 +00:00
Dean Troyer
1a6d4492e2 Periodic formatting cleanup
This is the semi-irregular comment and docs cleanup.

No functional changes should be here although some code is moved in a
small attempt to sort functions and get things where they need to be.

Change-Id: Ib4a3e2590c6fbd016c391acc7aef6421e91c0dca
2013-06-11 14:39:27 -05:00
Ian Wienand
535a8148cc Install EPEL for rhel6 if not detected
Simple check to see if EPEL repo is enabled for RHEL6 and, if not,
automated install of the repo RPM.

Also adds an additional sanity check which checking for pip.  In the
prior case of EPEL being disabled, a RHEL6 host may not have access to
python-pip.  Although this shouldn't happen, its a good sanity check.

Change-Id: I4e8a4dda9475b75d071534d4eef469198502a048
2013-05-30 16:33:30 +10:00
Jenkins
a20fb6d383 Merge "Basic check for homedir permissions" 2013-05-13 00:09:24 +00:00
Émilien Macchi
b2ef890db3 Add Debian OS support in DevStack
Fix bug #1176216

Change-Id: Ia94c332f02a921a936db249dc3b4a7ae4eff0400
2013-05-09 00:18:37 +02:00
Ian Wienand
0488edda8a Basic check for homedir permissions
Several guides suggest using data directories under your homedir,
rather than the default /opt area.  This is fine, but on RHEL6 and
similar distros homedirs are very restrictive 0700 permissions which
doesn't allow things like httpd to pass through to serve up files.

Even though stack.sh is taking over the host, changing permissions
automatically is not a nice idea.  So we just warn when it looks like
this is happening.

Change-Id: I9cd70e7fe90638a2a5c3b8fd94756afacac7c7be
2013-05-08 11:30:51 +10:00
Ian Wienand
d67dd87bfb Skip pip mirrors for RHEL
The RHEL6 version of pip doesn't have support for mirrors, so skip
asking for them.

Change-Id: Iaf2900067bb4b41f88d8fe82ea16b6b53d6bcc60
2013-04-19 09:45:19 +10:00
Jenkins
a1c183b4ef Merge "Add err()/err_if_not_set()" 2013-04-09 20:14:29 +00:00
Dean Troyer
cc6b443545 Formatting cleanups, doc updates and whatnot
Change-Id: Ica8298353be22f947c8e8a03d8dc29ded9cb26dd
2013-04-09 14:05:32 -05:00
Derek Morton
4a8496eca6 Linux Mint support
This patch allows DevStack installation on Linux Mint. Installations
on Linux Mint previously failed since its distribution ID did not
match any of the package installation methods and defaulted to using
rpm packages. Linux Mint is a Ubuntu derivative and such does not have
native support for rpm packages.

This change adds "LinuxMint" to the distribution matching options along
with Debian and Ubuntu.

Change-Id: Ice6a201cabe07373a9c1354699777835addeac53
Fixes: bug #1166422
2013-04-08 23:56:22 -05:00
Dean Troyer
896eb666e8 Add err()/err_if_not_set()
* err() and err_if_not_set() do error-like reporting without aborting the script
* die_if_not_set() now properly dies
* add is_running() from Grenade

Change-Id: I38b88112415a3c07e35bbc2dc65ad839c4d63fce
2013-04-05 15:08:05 -05:00
Ian Wienand
d857f4b4a4 Add rhel to DISTRO match
Match RHEL and CentOS and provide them as a DISTRO prefix of "rhel"

Change-Id: Ida19130ce9499d4d1fd2360fadc6b870b24bbc95
2013-04-04 08:59:51 +11:00
Ian Wienand
2c678ccf63 Use sudo to remove packages
yum and others need root to remove packages

Change-Id: I556505636c41296f9188c248dff13b85616c667c
2013-04-02 13:47:05 +11:00
Sean Dague
584d90ec56 add emacs shell-script tagging
for files that don't start with a #! or end in .sh, the added tags
are nice for emacs users to automatically switch to the right mode.

Change-Id: If4b93e106191bc744ccad8420cef20e751cdf902
2013-03-29 14:36:49 -04:00
Jonathan Michalon
0680204b1f Add support for iso files as glance images
Change-Id: Id1731c1a0a579fab44bb3944d2369b3feecf15d2
2013-03-27 14:05:30 +01:00
Jenkins
b28581baf8 Merge "Add run_process() to start services without screen" 2013-03-20 18:10:36 +00:00
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