62 Commits

Author SHA1 Message Date
Matt Riedemann
c9f6327844 Remove lib/ceph
All jobs using ceph as a storage backend have been moved over
to using the devstack-plugin-ceph repo in project-config so we
should be safe to remove the now unused lib/ceph file.

The files are left in place because the devstack plugin does not
install xfsprogs but it's used by the create_disk function.

And the ceph cinder backend file is left in place since the
devstack-plugin-ceph repo uses that by setting
CINDER_ENABLED_BACKENDS=${CINDER_ENABLED_BACKENDS:-ceph}.

Change-Id: I3fb09fc92bc6ab614e86d701ea46d5741a76b7a8
2016-08-30 17:21:30 -04:00
Matthew Treinish
7e603d1bf8
Move tempest plugin install to the end
For the tempest plugin install inside the tox venv to hold we need to
ensure that it's the last thing run that touches the tox venv before
devstack ends. Otherwise there is a chance we'll recreate the venv in
a later step of installing and configuring tempest. This commit
moves the plugin installation into it's own function and calls that
function as last phase of the tempest setup to make sure it runs last.

Change-Id: Ie253171537e8c5a9887cc30aba1cad4b31e57663
2016-06-02 14:50:13 -04:00
Sean Dague
c67d22e2ed make the alt_demo user during normal install
For testing reasons it's typically very useful to have a second non
admin user to cross check that it can't do a thing to the first
user. It was useful enough we always created it with tempest (though
we didn't always use it).

This makes devstack always create an alt_demo user, which is available
in occ as devstack-alt. This will help us unwind some of the keystone
v3 breaks with functional tests using keystone cli to build this
second user.

Change-Id: Iaaf02469180563e2d8c413fee0ee66ada2296cfa
2016-02-02 05:51:14 -05:00
Jenkins
6136c4e0bd Merge "remove configuration for boto section" 2016-01-06 19:18:34 +00:00
Jenkins
4847ee69ee Merge "[ceph] Deploy ceph failed at controller node for multiple node" 2016-01-06 18:35:59 +00:00
Andrey Pavlov
ba23ba317a remove configuration for boto section
thirdparty.boto tests was removed from tempest and this section
is no needed more

Change-Id: Ibec0534d118423be7a51c2e2b82f1c61531503a0
2015-12-22 23:33:30 +03:00
Jim Rollenhagen
47367071cd Remove ironic code from tree
This removes all of the ironic code from the devstack tree, in favor of
the devstack plugin in Ironic's tree.

Depends-On: I659e3de5c64df798441798ff48ba5c9c0506585a
Depends-On: I2c52bc014f1b0dbc6b0ae22a4deb4132b4c28621
Change-Id: I5125fce295c79600781469c2f48bea80e7600081
2015-12-18 17:26:02 +02:00
Jim Rollenhagen
9fc3ba408a Ironic: add flag for using plugin
This adds a flag to skip ironic code if the ironic devstack plugin is in
use. This flag will be set to true in ironic's devstack plugin to
indicate that the plugin should be in control, rather than devstack.

This is for the transition period only, and will be removed with the
rest of the ironic code in the devstack tree, once the gate
is configured to use the ironic plugin.

Change-Id: Id01d97fd13fa9f866d645ec5077834ddb78b2b89
2015-12-10 15:41:32 +00:00
Deepak C Shetty
93e2499ee1 doc: document override_defaults phase
override_defaults phase was added to devstack in [1]
but documentation was pending. This patch adds the
same. For history around override_defaults, one can
refer to the mail thread [2]

Also fixes a small typo

[1]: https://review.openstack.org/#/c/167933/
[2]: http://lists.openstack.org/pipermail/openstack-dev/2015-March/059621.html

Change-Id: I1b58ca0ce0e4b85a1dbd710b4c426606fd4dcf45
2015-11-18 12:43:54 +05:30
Chung Chih, Hung
65a028bf1c [ceph] Deploy ceph failed at controller node for multiple node
Controller node wouldn't install libvirt package. The package will only
been installed at nodes which had enable nova-compute.
We only need to configure libvirt secret if it had enable nova-compute.

Change-Id: I9cd6baf1820ce9f71c276d7e8b670307833578a5
Closes-Bug: 1515960
2015-11-13 11:12:47 +00:00
Flavio Percoco
624ab1e65d Remove Zaqar from devstack
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
2015-09-15 14:38:35 +02:00
Sergey Lukjanov
3381e09f72 Move Sahara into in-tree plugin
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
2015-07-01 16:09:56 +00:00
James E. Blair
9e220b9b2b Move trove into in-tree plugin
Once the trove code is copied into the trove repo and it is used
as a devstack-plugin, we can remove trove-specific code from
devstack.

Change-Id: I8f9f1a015edb7ec1033e2eaf0b29ab15d89384ce
Depends-On: I3506dec0e6097f9c2e9267110fdfb768faa23c85
2015-05-14 07:57:23 -07:00
Steve Baker
249e36dec6 Remove lib/dib
diskimage-builder is a utility rather than a service, and is already
installed in devstack via pip when required.

lib/dib was created to allow an image to be created during a devstack
run for the heat functional tests, however this approach is no longer
being taken and there are no other known uses for lib/dib.

This change removes lib/dib and moves the pip mirror building to
lib/heat so that snapshot pip packages of the heat agent projects can
be made available to servers which the heat functional tests boot.

This also removes tripleo-image-elements, which has never
been utilised, and since images won't be created
during heat functional test runs it is no longer required.

Change-Id: Ic77f841437ea23c0645d3a34d9dd6bfd1ee28714
2015-03-06 10:57:52 +13:00
Jenkins
8ed3e40be8 Merge "Remove OpenDaylight from being in-tree for devstack" 2015-02-11 02:54:11 +00:00
Sean Dague
b36a13a76a gantt is a dead project, remove it
The gantt source trees are dead projects, we should remove them from
devstack.

Change-Id: I0f271891846d2ad7a7a8edd975cdfb4f08419f0c
2015-02-09 13:32:47 -05:00
Sean Dague
fa94dfcb17 remove tuskar
Tuskar server support is proposed as an external plugin here
I67dc8420582a40e18de7d5e00094bccc1184a7f9, we should remove Tuskar
from the main devstack tree.

Change-Id: I93e97e7ae8fd03cabc1245a10588c4474d7e3728
2015-02-09 13:32:46 -05:00
Jamie Lennox
85ff5323ff Isolate creating service users
The code for creating service users is almost exactly the same. Abstract
this into a function that can be reused and standardized.

Change-Id: I3a4edbff0a928da7ef9b0097a5a8d508fdfab7ff
2015-02-09 14:36:20 +11:00
Kyle Mestery
76a08f5a93 Remove OpenDaylight from being in-tree for devstack
Now that we have a patch to make this pluggable [1], lets remove this
from the devstack repository.

[1] https://review.openstack.org/#/c/153700/

Change-Id: Ia23f99476ec16df9cc12f63864189835a09eb644
2015-02-06 21:43:52 +00:00
Jamie Lennox
18f39bfb1f Remove the default project from all users
The default project means that a user gains token scoping information
for a project if they don't specify another. This is something we want
to discourage for user creation. User's should specify there own
authentication scope when they authenticate.

Change-Id: I42c3060d59edfcd44d04cd166bad500419dd99bc
2015-01-28 13:38:32 +10:00
Jenkins
222ff80869 Merge "Register heat image in sahara image registry for fake plugin" 2015-01-20 18:36:08 +00:00
Jenkins
955f80a7ef Merge "Enforce UTF-8 encoding when creating databases" 2015-01-20 15:44:07 +00: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
Sébastien Han
4eb04a5f9e Ability to use a remote Ceph cluster
Sometimes we want to run some benchmarks on virtual machines that will be
backed by a Ceph cluster. The first idea that comes in our mind is to
use devstack to quickly get an OpenStack up and running but what about
the configuration of Devstack with this remote cluster?

Thanks to this commit it's now possible to use an already existing Ceph
cluster. In this case Devstack just needs two things:

* the location of the Ceph config file (by default devstack will look
for /etc/ceph/ceph.conf
* the admin key of the remote ceph cluster (by default devstack will
look for /etc/ceph/ceph.client.admin.keyring)

Devstack will then create the necessary pools, users, keys and will
connect the OpenStack environment as usual. During the unstack phase
every pools, users and keys will be deleted on the remote cluster while
local files and ceph-common package will be removed from the current
Devstack host.

To enable this mode simply add REMOTE_CEPH=True to your localrc file.

Change-Id: I1a4b6fd676d50b6a41a09e7beba9b11f8d1478f7
Signed-off-by: Sébastien Han <sebastien.han@enovance.com>
2015-01-13 09:49:58 +01:00
Andrew Lazarev
b31304829f Register heat image in sahara image registry for fake plugin
Fake plugin can work with heat image. Even more, sahara uses heat
to provision instances. So, registering image in sahara image
registry.

Change-Id: Ie498fc05d0afe7f276b6f29f20a61abb58a5c676
Closes-Bug: #1402856
2015-01-09 12:07:08 -08:00
Ihar Hrachyshka
157c84b876 Enforce UTF-8 encoding when creating databases
We use InnoDB everywhere, so there should be no issues with long unicode
keys. Dropped charset parameter for recreate_database since it's not
needed anymore.

Change-Id: Ib768402a9337c918309030a92ab81da17269f4f6
2015-01-05 15:57:23 +01:00
Steven Hardy
d591a25e42 Add support for tuskar-api service
Adds initial support for configuring and starting the tuskar-api
service.

To enable, add the following to your localrc:

enable_service tuskar
enable_service tuskar-api

The aim of this addition is to provide a more accessible (non devtest)
way for developers to run up tuskar in a familiar devstack environment.

See the official repos for more information:
https://github.com/openstack/tuskar/
https://github.com/openstack/python-tuskarclient

Change-Id: Id0c3c0d3a38100c66dbe6e3adf1f715162f99742
2014-11-18 18:28:58 +00:00
Sean Dague
5cb190697c support installing clients at released versions
expand the devstack support for libraries from released versions to
support python-* clients and tempest_lib.

Depends-On: I81b0d228e7769758c61e5b0323ecfce8c8886d39

Change-Id: I26fac0ccf8fd4818e24618d56bf04b32306f88f6
2014-11-04 10:18:58 +01:00
Sébastien Han
fa16ae92cd Add the ability to activate Nova ceph without Cinder
Prior to this patch, if we wanted to boot a VM in Ceph using
libvirt_image_type we must had Cinder enabled. This patch allows you to
use libvirt_image_type without having Cinder enabled.

Change-Id: Ia61e6effc5a4ccba69f4fa48f6e9984f15bb8979
Signed-off-by: Sébastien Han <sebastien.han@enovance.com>
2014-10-09 19:25:23 +02:00
Masayuki Igawa
264174500c Remove sahara-dashboard
sahara-dashboard has been removed in the commit:
  Change-Id: I1f0e93e1dee3d065c4f00d8bf2042bebc8d45a22
However, there is still sahara-dashboard in extras.d/70-sahara.sh. This
causes an error.

/opt/stack/new/devstack/extras.d/70-sahara.sh: line 7:
/opt/stack/new/devstack/lib/sahara-dashboard: No such file or directory

So this commit just removes it.

Change-Id: Iae76dc5f92a1f0a557d43d74b9b5d2c347cc23a9
Closes-Bug: #1363828
2014-09-01 15:36:15 +09:00
Sergey Lukjanov
a90898d904 Move sahara client installation to lib/sahara
All other projects installs their clients in the same lib file as the
main services.

Remove sahara-dashboard installation

Sahara dashboard is now merged into the Horizon and enabled by default
(when data_processing endpoint is available), so, we should stop
installing it as separated dashboard.

Change-Id: I1f0e93e1dee3d065c4f00d8bf2042bebc8d45a22
2014-08-27 17:00:01 -07:00
Steve Baker
122ab70330 A service to install diskimage-builder
Enabling service 'dib' will install the following repos:
* diskimage-builder
* tripleo-image-elements
* os-collect-config
* os-refresh-config
* os-apply-config

These repos are already pre-fetched in devstack-gate.

This will facilitate gating on changes in these projects by building
a custom image then running the heat-slow job against that image.

diskimage_builder is pip installed from the current git checkout
if the dib service is enabled. This allows devstack gating on
diskimage-builder changes while also allowing diskimage-builder to
be installed from releases for other scenarios (for example, ironic).

Change-Id: Ia911cdee86f5b2e2ba1557e5aa8bf392b92ef555
2014-08-20 09:06:34 +12:00
Malini Kamalambal
9504bb376d Rename Marconi to Zaqar
This patch changes all Marconi references to Zaqar.

Change-Id: Iec4aeca54c0f383c995fba564bc59daa550d3747
Implements: blueprint project-rename
2014-08-18 14:59:49 -04:00
Sébastien Han
36f2f024db Implement Ceph backend for Glance / Cinder / Nova
The new lib installs a full Ceph cluster. It can be managed
by the service init scripts. Ceph can also be installed in
standalone without any other components.
This implementation adds the auto-configuration for
the following services with Ceph:

* Glance
* Cinder
* Cinder backup
* Nova

To enable Ceph simply add: ENABLED_SERVICES+=,ceph to your localrc.
If you want to play with the Ceph replication, you can use the
CEPH_REPLICAS option and set a replica. This replica will be used for
every pools (Glance, Cinder, Cinder backup and Nova). The size of the
loopback disk used for Ceph can also be managed thanks to the
CEPH_LOOPBACK_DISK_SIZE option.

Going further pools, users and PGs are configurable as well. The
convention is <SERVICE_NAME_IN_CAPITAL>_CEPH_<OPTION> where services are
GLANCE, CINDER, NOVA, CINDER_BAK. Let's take the example of Cinder:

* CINDER_CEPH_POOL
* CINDER_CEPH_USER
* CINDER_CEPH_POOL_PG
* CINDER_CEPH_POOL_PGP

** Only works on Ubuntu Trusty, Fedora 19/20 or later **

Change-Id: Ifec850ba8e1e5263234ef428669150c76cfdb6ad
Implements: blueprint implement-ceph-backend
Signed-off-by: Sébastien Han <sebastien.han@enovance.com>
2014-07-23 16:13:45 +02:00
Dean Troyer
5c3a63e633 Add pre-install phase for extras.d plugins
An additional call hook for the extras.d plugins that is called before
any service installation occurs turns out to be needed by Ceph and
useful for other plugins.

This is called between the installation of the system packages listed
as prerequisites and the installation of the actual services.

Change-Id: Id723bdc7542182d2b2eff40c0dc0127307f094c5
2014-07-09 11:35:16 -05:00
Flavio Fernandes
51783ccf38 Invoke create_nova_conf_neutron from odl-compute post-install
only if nova is enabled.

Change-Id: I4627ab97eccd7fd4a2ffc31b6a0bb939b2343659
2014-06-16 10:27:42 -04:00
Sam Hague
09b56b1c31 Add options to configure provider network mappings for
OpenDaylight

OpenDaylight needs to know the physical network mapping
used with vlan tenant isolation. This is similar to how
the bridge_mappings cofig is used to map the physical
network to the bridge,
i.e. bridge_mappings=physnet1:br-eth1,physnet2:br-eth2.

OpenDaylight needs the physical network device itself:
provider_mappings=physnet1:eth1,physnet2:eth2.

OpenDaylight needs the mapping because the device port is
used when pushing flows. The neutron API's provide the
physical provider network value for example as physnet1.

DocImpact:
Use of VLANs with ML2 and the OpenDaylight mechanism driver
requires OpenDaylight Helium or newer to be installed.

Closes-Bug: #1315492
Change-Id: If7af9ce5735b01c35315a54c79355ca87b72c4b4
2014-05-20 18:35:52 +00:00
Sam Hague
408efd2170 Add bridge_mappings to extras/80-opendaylight.sh to support vlan isolation.
OpenDaylight integration with Openstack requires some extra configuration
information to be set in the ovsdb via the other_config value. Currently
only the local ip address is set. bridge_mappings needs to be added to support
vlan isolation.

This requires changing the form of the existing ovs-vsctl command to set
the other_config value. The current command does a replace so the last
command to run overwrites any other values. The command is changed to
append values instead.

Change-Id: Ia001ecf27c8f5ace05af014ecce0b13f6d490ac1
2014-04-23 11:19:28 -04:00
Simon Pasquier
cfc9ebba85 Set parameters for OpenDaylight ML2 driver
Now that https://review.openstack.org/#/c/85589/ is merged, the
OpenDaylight ML2 driver requires that url, username and password
parameters are set.

Change-Id: Iecbdd3275387bea145a5d274d359a15eceaee6b7
Closes-Bug: #1304226
2014-04-08 09:34:44 +02:00
Jenkins
5d4406c56d Merge "Complete moving Keystone setup out of keystone_data.sh" 2014-03-18 05:46:48 +00:00
Alexander Gordeev
06fb29c661 Integration testing preparation for Ironic
Add ability to create/register qemu vms for Ironic testing purposes

Implements bp:deprecate-baremetal-driver

Change-Id: If452438fcc0ff562531b33a36cd189b235654b48
2014-03-14 13:44:00 -07:00
Sergey Lukjanov
7ff8443e46 Rename all Savanna usages to Sahara
There are several backward compatibility nits.

Change-Id: I93cac543375896602d158860cc557f86e41bcb63
2014-03-12 22:25:20 +04:00
Dean Troyer
42a59c2bfa Complete moving Keystone setup out of keystone_data.sh
* Move remaining role creation to create_keystone_accounts()
* Move glance creation to create_glance_accounts()
* Move nova/ec2/s3 creation to create_nova_accounts()
* Move ceilometer creation to create_ceilometer_accounts()
* Move tempest creation to create_tempest_accounts()
* Convert moved code to use OpenStackClient for setup
* files/keystone_data.sh is removed

Note that the SERVICE_TENANT and ADMIN_ROLE lookups in the other service
implementations are not necessary with OSC, all operations can be done
using names rather than requiring IDs.

Change-Id: I4283ca0036ae39fd44ed2eed834b69d78e4f8257
2014-03-10 15:17:30 -05:00
Roey Chen
11b36c9b0a Fixed unconditioned source phase in OpenDaylight extras
Should source ``lib/opendaylight`` in ``extras.d/80-opendaylight.sh``
only when appropriate services are enabled.
Fix for bug/1290033

Change-Id: Ifa470e1e132029f3c5bf255f27c4e96373b339a8
Signed-off-by: Roey Chen <roeyc@mellanox.com>
2014-03-10 14:30:00 +02:00
Kyle Mestery
d44517dfcf Add support for configuring OVS to work with OpenDaylight
This adds support for running OpenDaylight as an OpenStack Neutron plugin
under devstack. This entails downloading the latest version of OpenDaylight,
configuring it, and running it as a service under devstack. This code also
includes pieces which configure Open vSwitch on each devstack node to point
at OpenDaylight as their OpenFlow and OVSDB control interface. This is
required for compute hosts, which will not be running any Neutron software
on them at all. This post-devstack configuration is handled in the extras
directory because of the fact there is no Neutron code running on the compute
hosts themselves.

Closes-bug: #1273917

Change-Id: I696e7c7fe63c835f90c56105775def305a702877
2014-03-06 16:19:10 +00:00
Sergey Lukjanov
de2057290a Improve savanna keystone auth configuration
We're doing to use common keystone configuration approach - section
keystone_authtoken with config opts from the python-keystoneclient
auth_token middleware.

Change-Id: Ibbe0c76ee3b00045f5cb5134bd7661e9cef6ccdd
2014-02-20 01:56:17 +04:00
Yuriy Zveryanskyy
c86ec3568c Fix hook script for Ironic
cleanup_ironic should not be started on "unstack" phase,
otherwise API service not restarted because auth cache
directory removed.

Change-Id: I3da86b9fb8c3ce1185aff05df0fa83cf259708f4
2014-02-12 11:04:15 +02:00
Jenkins
28a29a3527 Merge "Move ironic to plugin" 2014-02-08 14:08:04 +00: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
Don Dugger
f84eb5ba43 Add support for Gantt
Gantt is the new breakout of the scheduler code from the Nova
source tree.  These changes allow devstack to install/configure/startup
gantt as the scheduler service for openstack.

Change-Id: Ia2b6001f5ccf2469ee9fdee67564c9a915a13862
2014-01-30 14:47:50 -07:00