47 Commits

Author SHA1 Message Date
igor
01acdabb1d Fixes language: "following allowing" -> "allowing"
Stops propagation of initially erroneous construct.

Change-Id: I2197de57cbac98e87fb39fa0dca4c691fe5e856f
2016-08-23 10:08:03 +01:00
Sean M. Collins
2a242519f7 Begin new lib/neutron
Background for this work can be read on the mailing list:

http://lists.openstack.org/pipermail/openstack-dev/2016-May/094063.html

Usage of the new Neutron is by setting the following in
ENABLED_SERVICES:

* neutron-api
* neutron-l3
* neutron-agent
* neutron-dhcp
* neutron-metadata-agent

For now, the new neutron library supports just the ML2 plugin, with the
Open vSwitch and Linux Bridge agents supported. All other Neutron
plugins should be creating their own DevStack plugin if they wish for
DevStack to support them. Many of them already do.

Other notable changes compared to neutron-legacy:

* Rely on the Neutron defaults, and force Neutron to make
  sane defaults instead of all kinds of knobs in DevStack.

* Default to rootwrap daemon support

* Use the security group driver by default

* interface_driver can now use NEUTRON_AGENT (linuxbridge, openvswitch), since
  they are entrypoints in neutron's setup.cfg

* Use NEUTRON_AGENT variable to determine which agent to run
  Works with NEUTRON_AGENT set to either "linuxbridge" or "openvswitch"
  Default is openvswitch for the time being.

* Set ML2 configuration for VXLAN support

* Remove Xen hypervisor stuff - it should be a plugin

* Move L3 crud into separate service file:

  There's a lot of L3 configuration that was in the main neutron file, but
  a lot of it is self contained and can be moved into its own file.

  The new l3 service file will contain all the previous L3 plumbing and
  configuration that the OpenStack Gate expects, while also eventually
  moving the whole l3 network creation step into a single hook that can be
  overridden by plugins.

* Introduce a check for a function "neutron_plugin_create_initial_networks" which
  will become the mechanism through which different topologies, and
  networking plugins can create and wire the initial networks that are
  created during a stack.sh run.

The new lib/neutron is considered experimental, and followup patches
will build upon this one. Existing users of lib/neutron-legacy should
remain unharmed.

Co-Authored-By: Hirofumi Ichihara <ichihara.hirofumi@lab.ntt.co.jp>
Co-Authored-By: Dean Troyer <dtroyer@gmail.com>
Change-Id: I31b6362c6d9992f425f2dedbbeff2568390a93da
2016-05-09 14:26:08 -04:00
Sean Dague
af9bf8663b refactor ping_check
Encapsulate all the neutron specific things you have to do ping a
neutron guest into a separate script. Refactor the main ping_check so
all logic is contained within it.

Change-Id: Ic79d8e3a2473b978551a5635a11dba07e1020bb2
2015-04-17 07:39:28 -04:00
Dean Troyer
5a9739a4ca Rename lib/neutron to lib/neutron-legacy
Preparing to refactor lib/neutron to support Neutron as the default
network config.  lib/neutron will be renamed internally and refined
to support a couple of specific configurations.

Change-Id: I0d3773d14c4c636a4b915734784e7241f4d15474
2015-03-25 22:22:11 -04:00
Steve Martinelli
5c206c2b7d Migrate from using glance image-list to openstackclient
Modify instance of `glance image-list` to `openstack image list`,
in an effort to migrate all commands to unified CLI.

Change-Id: Ieef661d209606e088fbf6a3a394f9a6577667618
2014-08-04 17:00:18 -04:00
Adam Gandelman
b875d01cdf Special casing for Ironic VIRT_DRIVER in exercises
Ironic on Devstack does not currently suppport security groups or
anything volume related.  Add some special casing so exercises can
be run without error against the Ironic driver.

Change-Id: I2a54d8cca06fc17894e74b4401af9423cef95635
2014-03-17 19:52:02 -07:00
Sean Dague
7d4c7e09b4 remove docker from devstack
with I1c9bea2fdeebc4199c4f7d8fca4580a6fb7fed5b nova removed
docker from it's driver tree.

We shouldn't have driver support inside of devstack that's not
part of upstream projects (this has been a line we've been
pretty clear on with Neutron drivers in the past).

Remove docker driver accordingly.

Change-Id: Ib91d415ea1616d99a5c5e7bc3b9015392fda5847
2014-03-12 08:05:08 -04:00
Brian Haley
9b3602ccf6 Fix intermittent error in exercises/floating_ips.sh
Every once in a while I see this error running floating_ips.sh:

/devstack/exercises/floating_ips.sh:184:ping_check
/devstack/functions:356:_ping_check_neutron
/devstack/lib/neutron:904:die
[ERROR] /devstack/lib/neutron:904 [Fail] Could ping server

I think the problem is that it immediately tries to ping right
after the icmp rule is deleted.  Add a timeout and check so we
at least wait one second.

Change-Id: I753ec257fa12f6d2ddff1a5b1909e32d8995e173
2014-03-03 09:26:49 -05:00
Dean Troyer
e2907b4838 Fix Neutron enabled check
* Remove the check for neutron enabled on a block of variable settings, there
  is no conflict and serves no purpose.
* Also floating_ips.sh and volume.sh needed to properly source lib/neutron
  for do ping_check() to work properly.

The current error in check-devstack-dsvm-neutron is not related to this fix.

Change-Id: I1c458aaa787ffb98c945aefc3afa80c6861a405f
2014-02-27 15:37:11 -06: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
Kiall Mac Innes
a16c821024 Skip Nova exercises if Nova is not enabled
This allows for ./exercises.sh to complete sucessfully when nova is not
enabled / installed.

Change-Id: If969e14f5106c15007146e8fad1da27d131828c8
2014-01-12 19:51:33 +00:00
Dean Troyer
526b79f988 Eradicate last of underscores in options
The --ip_range in stack.sh remains due to nova-manage needing to be fixed.

(Rebased 05Dec2013)

Change-Id: Ic0f93d41b6edfdc5deb82ae820e2c0c5a8bce24e
2013-12-05 12:25:26 -06:00
DennyZhang
23178a997a add assertions for blind grep
blind grep is error-prone.
Add assertions for errors we can not handle

Change-Id: Ibe19085545ecc848498506e8b8ee14e71825b273
2013-10-22 17:12:18 -05:00
Sean Dague
922c8ae680 clean up whitespace issues on exercises and friends
Change-Id: I812a73e46ddd4d5fed4d304d9ef92c1de243f497
2013-10-22 13:02:29 -04: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
Nachi Ueno
6769b166b1 Added functions for get a ip on an instance
The cause of some gating failure looks like
because of getting ip address on instance.
However current exercise didn't log the return value.
In this commit, we add get_instance_ip function with
error hanlding support, and apply it on the execise.

Change-Id: I8e17ba68093faafe58a98eb780a032368eea38aa
2013-08-13 17:08:47 -07: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
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
Joe Gordon
4640026cc1 Fix spelling mistakes
git ls-files | misspellings -f -
Source: https://github.com/lyda/misspell-check

Change-Id: I7d63578734ca5cc1ec865a7d024c1a013d1ada87
2013-06-30 04:32:27 -07:00
Aaron Rosen
640f1e4c8d Change default PUBLIC_NETWORK_NAME/DEFAULT_FLOATING_POOL name
This patch changes the default network name/floating pool from nova
to pubic as the name public makes more sense than nova for a public
network.

Change-Id: I4153750c08d1510dbad3051681e8c142a79fe1a1
2013-03-26 22:39:11 -07: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
Dean Troyer
da85cdadd9 Exercise cleanup
* Make common steps consistent
* Make comments consistent

aggregates.sh
boot_from_volume.sh
client-args.sh
client-env.sh
euca.sh
floating_ips.sh
sec_groups.sh
swift.sh
volumes.sh

Change-Id: Ib93dcdfdead93c259e3cd184fbc5ccc0a4a87c9a
2013-02-15 12:34:33 -06: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
Nachi Ueno
5db5bfa28f Make exercise.sh with quantum work
- added support for quantum-debug command
- added ping and ssh method for quantum

Change-Id: Iebf8a0e9e2ed2bb56bee6533e69827e6caa2bc82
2012-11-13 10:40:59 -08:00
Nachi Ueno
fda946e3eb Added ping_check and ssh_check functions and use it in exercise.sh
Change-Id: I69d41c9db527f60f250b6af36b2d8e9d0dd39684
2012-10-25 21:52:31 -07:00
Dean Troyer
96288ba9a9 Clean up security groups in exercises
* fix problem with deleting security groups too early in
  floating_ips.sh and euca.sh
* create and clean up security groups
* cosmetic cleanups

Change-Id: Ie45e03f889c540ec83f27a02b10e787060c5d4d7
2012-09-04 17:56:16 -05:00
Devananda van der Veen
c0c6f00698 enable testing of openvz guests
This patch adds several options to allow using OpenVZ virt layer.
- modifies stack.sh and stackrc to recognize a new VIRT_TYPE option
- set IMAGE_URLS to an openvz image, if VIRT_TYPE == openvz

It also makes a few changes to some tests so that some implicit
defaults (such as the guest user account) can be overridden.

Change-Id: I0dde2dffbf3848fac1dd27eb37af84c0ac73d9aa
2012-08-03 18:15:01 -07:00
Dean Troyer
ad101767b7 Cleanup exercise scripts
* whitespace and comment cleanups only

Change-Id: Iab9c2d9a25c3473f14190d60f2f2cf5be0ed59dc
2012-06-27 22:25:22 -05:00
Armando Migliaccio
7d13f309bc bug 985905: multi_host flag cunfusing settings
switch to using trueorfalse for parsing MULTI_HOST values.

Change-Id: I289563e0cd05cda014198cf21b3c88897aba5d4f
2012-05-02 15:33:54 +01:00
Dean Troyer
45495258d6 Add glance client
* python-glanceclient overrides the old client shipped with glance in /usr/local/bin
* start adding exercises

Change-Id: I460ed5749bca69425f23d328c0537c2ef91f84a4
2012-04-25 21:24:30 -07:00
Dean Troyer
27e326995a Simplify die_if_error
* Replace die_if_error() with the simpler die()
* Attempt to clean up unnecessary trace output
* Formatting cleanups on all exercise scripts

Change-Id: I72a542b3a59ee9bf12bee6bcc605edd7579205e0
2012-03-19 10:06:15 -05:00
Dean Troyer
51fb454f71 Create exerciserc to configure exercises
* Move timeouts from openrc to (new) exerciserc
* Update all exercise scripts
* Update HACKING.rst

Fixes bug 951315

Change-Id: Icc4ff03a7dcf0cc711e204046176fb5186990c17
2012-03-12 11:44:32 -05:00
Dean Troyer
489bd2a62b Improve exercise robustness
* Test returns and exit codes on most command invocations
* Add start and end banners to make output easier to find in
  long log files
* Adds die_if_error(), die_if_not_set() and is_set() to functions
* Add some function tests

Fixes bug 944593

Change-Id: I55e2962c5fec9aad237b674732b1e922ad37a62e
2012-03-02 17:55:37 -08:00
Russell Bryant
5836b1533a Wait for VM to stop before deleting security group.
Related to bug 938853.

The patch for this bug prevents deleting security groups through the
OpenStack API if they are still in use.  This patch for devstack updates
the floating_ips exercise script to wait until the VM has stopped before
deleting the security group.

Change-Id: If42f85934c2b92d4d001c419cabb09e2e3dc1aae
2012-02-24 10:23:33 -05:00
Dean Troyer
80756ea71a Blueprint cli-auth
* Add proper test for swift in client-env.sh
* Remove all VERIFY variables; nothing beyond the 4 OS_ vars is set now
* Update exercises for Keystone 2.0 auth
* swift understands Keystone 2.0 auth now, don't download custom binary
* cleanup uploaded bundle in bundle.sh

Change-Id: I99c818d81534bbf93c0e142513acb80e5fe613ea
2012-02-13 23:49:15 -06:00
Dean Troyer
10670d1bad Add support for OS_* environment vars
Add the OS_* env variables to mirror the NOVA_* vars; example:
setting OS_USERNAME will override NOVA_USERNAME in the clients and
tools, but if left unset it defaults to NOVA_USERNAME.

Adds exercises/client-env.sh to test operation of command-line
clients with only the OS_* variables set

Addresses bug 897304, http://wiki.openstack.org/CLIAuth

Change-Id: I72450153541072fe8026a82748cfcd1cf5ed31d8
2012-01-31 12:26:28 -06:00
Adam Gandelman
ce05e03213 exercises: Multihost support for Glance client
floating_ips and volumes exercises both access Glance directly, but
assume it is running locally.  To better accomodate exercising a
multi-host cloud, specify glance host via GLANCE_HOST setting which
defaults to HOST_IP to maintain current single-node functionality.

Change-Id: Iad06044af031083afa477204d446ada5161ca521
2012-01-30 14:46:25 -08:00
Dean Troyer
751c15243f Increase exercise robustness
* increase some timeouts
* tolerate existing security groups and rules
* add optional DEFAULT_IMAGE_NAME to select the image to boot
* fix image lists via glance

Change-Id: I31ae743e602f69a2c9f872273273f542fc4afda3
2012-01-19 14:49:08 -06:00
Dean Troyer
696ad331a4 Add some additional floating ip pool testing
Change-Id: I62cd6b43e3250dc28d66dc84d3759f47e81ff134
2012-01-12 16:32:24 -06:00
Dean Troyer
1d6e0e196e Use DEFAULT_INSTANCE_TYPE in exercises
Change-Id: I5a98a3a4e8057f613a94054b08ff5439f1ccf7cd
2011-12-28 14:20:47 -06:00
Jesse Andrews
38df1228de revive working with subset of services
Change-Id: I645c5df457a2ac2c997ac32720d53cacc0fa109b
2011-11-20 09:55:44 -08:00
Vishvananda Ishaya
f6c09edf25 pause is admin-api, we shouldn't be testing it
Change-Id: Ia7b9d2f06aecb67f3e0c2f12687f18e3e386da3f
2011-11-17 15:14:43 -08:00
Jesse Andrews
b74b74a2b3 permissions 2011-11-10 11:47:34 -08:00
Jesse Andrews
16b6efab4c merge origin/master 2011-11-10 11:46:18 -08:00
Todd Willey
2599b3165a Wrap exercises with master script, with logs, and move common variables. 2011-11-04 10:31:37 -04:00
Jesse Andrews
787af01bdd fix sourcing of openrc 2011-11-01 16:44:19 -07:00
Jesse Andrews
f670549186 move from exercise.sh to exercises/.. 2011-11-01 16:04:14 -07:00