The neutron client is going to be deprecated during the
Ocata timeframe, so it is time to start switching to the
openstack client to invoke networking commands.
use of neutron client in neutron-legacy has been left as is.
The command for setting the router gateway is left as follow up.
Change-Id: I0a63e03d7d4a08ad6c27f2729fc298322baab397
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
This all started with an investigation into Fedora's use of ecua2ools
package. This package is a bit of a nightmare because it pulls in a
lot of other system-python packages.
For Ubuntu, this package was removed in
I47b7e787771683c2fc4404e586f11c1a19aac15c. However, it is not
actually a "pure python" package as described in that change, in that
it is not installable from pypi. I can't see how you could actually
run exercises/euca.sh on Ubuntu unless you installed euca2ools by hand
-- ergo I suggest it is totally unused, because nobody seems to have
reported problems.
In the mean time, ec2 api has moved to a plugin [1] anyway where the
recommendation in their README is to use the aws cli from amazon.
Thus remove all the parts related to EC2 and ecua2ools from base
devstack.
[1] https://git.openstack.org/cgit/openstack/ec2-api
Change-Id: I8a07320b59ea6cd7d1fe8bce61af84b5a28fb39e
This replaces the use of TENANT variables with PROJECT ones during the
initial setup. The openrc will still export a OS_TENANT_NAME because
many tools (cinderclient, glanceclient amoung them) will not function
without it. We warn when we do that.
Change-Id: I824b1121842eb5821034071874bf1bb2d7c3631e
This reverts commit 8a3b7d424d8edf53d0560db48247e6bca11176ee.
This change masked a non-backward compatible change made to the
Neutron core API. This is being cleaned up and thus this workaround
is no longer required.
Depends-on: Idf516ed9db24d779742cdff0584b48182a8502d6
Change-Id: I6695a6e17df1a395ada4ecf2b063b2c20870d99d
With the release of osc 1.8.0, swift support has been expanded and
we can now remove references to the swift CLI from this exercise
file. Also made minor improvements to comments.
Change-Id: I04069eb6251f8cbf8266183441b2cfdb64defd7d
Currently stack.sh will fail if a value is set for
default_ipv4_subnet_pool and/or default_ipv6_subnet_pool in
neutron.conf. This is because setting either of these values
overrides the default behaviour of using the implicit (none)
subnetpool for subnet creation, and the subnetpools
specified in neutron.conf have not been created at the time
of the devstack calls to subnet-create.
This patch fixes the failure by specifying subnetpool = None
in calls to subnet-create, so that neutron will behave as
devstack expects. This parameter will no longer be required
once these configuration options are removed in the OpenStack
N release, but will be required for compatibility with Kilo,
Liberty, and Mitaka.
Change-Id: I29b2d62a022b43f6623b127af2ca303f9de847b0
Closes-Bug: #1472200
Since:
- novaclient doesn't require specify the *compute api* version
(default is 2.latest now)
- novaclient doesn't use COMPUTE_API_VERSION, since it's wrong name(
OS_COMPUTE_API_VERSION is a correct name)
we can remove COMPUTE_API_VERSION and NOVA_VERSION vars
Change-Id: I47856863e9403870b8d60c778b97d3de1a212ae1
Ia0957b47187c3dcadd46154b17022c4213781112 proposes to have bashate
find instances of setting a local value. The issue is that "local"
always returns 0, thus hiding any failure in the commands running to
set the variable.
This is an automated replacement of such instances
Depends-On: I676c805e8f0401f75cc5367eee83b3d880cdef81
Change-Id: I9c8912a8fd596535589b207d7fc553b9d951d3fe
Zaqar's devstack code has been moved into a plugin in the Zaqar repo.
This patch removes the remaining code from devstack.
Depends-On: Iceefabb6cd528b23075a91e8039b8264eb3f33f5
Change-Id: Ifcf54fa2d4a5bf49b6757b593bb70cdeda8edb2a
Only source openrc once, and remove the unnecessary re-sourcing of
"functions" which is done by openrc.
Change-Id: I61c87a0742de274d47753a0b216c56d96344d161
Once the Sahara related code moved to Sahara repo and used, we can
remove Sahara specific code from Devstack.
Partial-Implements: bp sahara-devstack-intree
Change-Id: I34412b5cb2e86944b8555b8fd04b43556eb2bbe6
Depends-on: I2e00b2ebc59dd3be6a0539dea2985f2e801a1bd7
Depends-on: I07c3fede473030e8a110cbf5a08309f890905abf
Move the failure trap after the functions it uses, so that
"delete_all" is defined when it is triggered.
Change-Id: Icb2465d0f834b8cb2d46dca3c7df4ae06e49d9b5
The script hardcoded http://$SERVICE_HOST/... which failed
when SSL or tls-proxy was enabled. Calculate the protocol
based on enabled services instead.
Change-Id: I192eeeafe7bf4dc5cbd382c505ffb9307651d78a
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
When running './stack.sh' messages are output stating that
the keystone CLI has been deprecated. These calls should be
replaced to ones utilizing the openstack CLI program instead.
Documentation examples were also updated to reflect the new syntax.
Change-Id: Ib20b8940e317d150e5f6febb618e20bd85d13f8b
Closes-Bug: #1441340
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
The horizon team keeps changing how the UI is exposed. This exercise
keeps lagging and doesn't really test anything useful any more. Just
delete it.
Change-Id: Id62904868f1d4b39e33d2ad63340b5ee2177fb56
When SERVICE_HOST is defined to literal IPv6 address
(i.e., [fdf8:f53b:82e4::179]) we will have to include
--globoff option for curl to be able to reach the various
openstack services. Using globoff works for both IPv6 and
IPv4 urls, so its safe to include this option for all curl
statements in devstack.
Closes-Bug: #1424943
Change-Id: I2afc16f2f94d7d7069b0ba61bc8348c03413e4e7
Fixes the test string in horizon front page test so it is not failing
when header tag gets new attributes
Change-Id: Ibf62bf6f6300eeb0ab2f22086b0ff1c05c69d86b
The trove cli has been changed in an incompatible way. Exercises
are the requirements of projects to keep functioning, if they aren't
we should fast delete them.
Related-Bug: #1391840
Change-Id: I3b61194ff220525aed202c7f7851faa0be446646
Modify instance of `glance image-list` to `openstack image list`,
in an effort to migrate all commands to unified CLI.
Change-Id: Ieef661d209606e088fbf6a3a394f9a6577667618
Reasons:
- trove.sh should use native python client to exercise Trove API
Changes:
- adding datastore and datastore version exercises
Change-Id: I041465e5bda6ad9ec3f597ecc290612b8baef09c
Closes-Bug: #1346743
openstack endpoint show identity will not be successful without
admin permissions; this causes exercise.sh to fail because it
claims keystone is not present
Change-Id: I769d70d0439c0b4c7e174a0adad7adcf1938095e
Closes-bug: 1317507
There were a few references of keystoneclient in
exercises/neutron-adv-test.sh, this patch will change those
commands to their openstackclient equivalents.
Change-Id: I88892fcfacd3dd6354ec269b270cee3da358447a
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
Updated the only instance of a keystoneclient command, to
check if the identity service is enabled.
Change-Id: If86f71c1610a79690d6c6a8eb423b6fa234372bb
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
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
Without lib/neutron, boot_from_volume.sh generates the following
error:
+ _ping_check_neutron private 10.11.12.5 30
/devstack/functions: line 356: _ping_check_neutron: command not found
Change-Id: Ib72c3f24d614570d69bf5dda35cbaf5847b1d1b9
* 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
Check that function calls look like ^function foo {$ in bash8, and fix
all existing failures of that check. Add a note to HACKING.rst
Change-Id: Ic19eecb39e0b20273d1bcd551a42fe400d54e938
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
This patch silences commands that echoed copyright notices to the
devstack logs. The copyright notices are moved to the top of the
file as comments.
Change-Id: I8d474a366af2954c168ba8d07329392f56e8e75a