151 Commits

Author SHA1 Message Date
Monty Taylor
201c01f19b
Don't clone dib-utils in install_heat
It's not used, and a recent change to trim down projects lists in
devstack-gate broke devstack in the gate that enabled heat.

Change-Id: I405423bdc9ba8dd9b30fce6fdceacccf662d5da3
2016-10-18 11:24:41 -05:00
ricolin
9a0d1f90b8 Remove deprecated auth_plugin config
Config auth_plugin in trustee group is deprecated.
Change to use auth_type in trustee group instead.
Closes-Bug: 1592482

Change-Id: Ib90d9c0299887201b37d26254693dc6b007a41dc
2016-06-15 01:13:45 +08:00
Einst Crazy
4f55c2d5c3 Set config file to db sync and other manage operation
Currently, the db sync operation does not specify the config dir or
config file.
If there is a config file in the home path, it will use this one,
but not the right one devstack write.

Set config file to these operations.

Change-Id: Id1fbc3d85280c19596f5ebd301c46bcf018fa2f6
Closes-Bug: #1578098
2016-05-09 01:43:32 +00:00
Matt Riedemann
ae4578bed9 Revert "Don't check for existing endpoints"
This reverts commit 7d1ec430046256ac3f536f4920a43936e28ef0c4.

This broke the sahara and layer4 dsvm jobs. The layer4 job
is voting on tempest changes so tempest is also broken.

Change-Id: Ide69f10cd85bf7ff0d86bc8cba56dedd26850362
Partial-Bug: #1573868
2016-04-23 01:45:40 +00:00
Sean Dague
7d1ec43004 Don't check for existing endpoints
We really should only have code that create endpoints once, making all
osc calls get_or_set adds 3 seconds per call for no really good
reason.

This also stops creating the internal endpoints in the service
catalog. It's a pattern that we're trying not to propogate, so lets
not have it in devstack any more.

Change-Id: Ia8cefe43753900d62117beae330db46deb6a9fc9
2016-04-22 10:44:10 -04:00
Sean Dague
cbdc5d9e48 switch over heat to using $(project_id) in service catalog
This removes one more place where we reference tenant_id

Change-Id: I721269c3397bd5e5d9cea5faf3fc691f296a517b
2016-04-04 09:10:44 -04:00
Ian Wienand
3bf69e835a Remove EC2 API from devstack
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
2016-03-15 13:32:23 +11:00
Thomas Herve
728730aee3 Enable heat caching
Enable use of memory cache by default for Heat. It will provide a boost
for various test builds and will help test this configuration.

Change-Id: I06183138d54c1cb971a58a158a15f3f5b25cba4d
2016-02-12 08:32:36 +01:00
Sean Dague
985e958dda remove keystone templated catalog
This is just another code path for little benefit in devstack which is
going to rot out. We should be opinionated here and only support the
dynamic catalog.

Change-Id: I4e5c7e86aefe72fc21c77d423033e9b169318fec
2016-02-10 15:39:31 -05:00
Sean Dague
74b91c3eaf Revert "Move default Keystone API version to v3"
It seems like the fallout from this was not well sorted.
A lot of things aren't working, and there is still vestigial
v2 bits left behind.

This should have come with a much greater warning and some
spot checking of additional services working with this.

This reverts commit b162a1d58cdecfb32847b59bd341e06c26efb1ed.

Change-Id: Ia792b23119c00089542ba08879dca1c29dc80945
2016-02-01 14:58:20 +00:00
Paulo Ewerton
b162a1d58c Move default Keystone API version to v3
This patch sets Keystone v3 as default in services
configuration files and in the openrc and stackrc scripts.

Change-Id: I24546f02067ea23d088d383b85e3a78d7b43f165
Partially-Implements: bp keystonev3
2016-01-26 14:27:02 +00:00
Jenkins
e60d52c392 Merge "Fix heat config when using keystone v3" 2016-01-05 09:13:51 +00:00
Jenkins
227f20ceb2 Merge "update create_heat_accounts, don't use os_url and os_token" 2016-01-04 13:59:56 +00:00
liyingjun
44ee7e307b Fix heat config when using keystone v3
Use configure_auth_token_middleware to generate keystone_authtoken
section configration.

Change-Id: I87e0e60afb958683add2aff2552d26cbf8c9e374
Closes-bug: #1300246
2015-12-25 10:32:14 +08:00
Steve Martinelli
4ce859ab2b update create_heat_accounts, don't use os_url and os_token
Currently, the function create_heat_accounts uses the OS_URL and
OS_TOKEN environment variables. This is a bad choice for several
reasons, most importantly we are sending the "ADMIN_TOKEN" value
as a header. There is also no reason to not use a standard admin
user to create these resources.

Change-Id: I70b41d69917b9e53ad09c2c61e022ef09a50acfd
2015-12-20 01:27:30 -05:00
Steven Hardy
2a68844013 Heat - revise keystone/trusts config to avoid deprecated options
There are some inter-related changes required to avoid using legacy
fallback/deprecated paths in heat, which result in warnings in the
log, e.g because we fall-back to reusing keystone auth_token
configuration instead of heat specific sections.

To fix this:
- Don't explicitly set deferred_auth_method=trusts, as this is now
  the default (since kilo)
- Create a new "trustee" section containing configuration used for
  the password auth-plugin associated with deferred authentication
  via trusts (support for this was added during liberty to enable
  us to stop incorrectly using the keystone auth_token config)
- Create a "clients_keystone" section to avoid falling back to the
  legacy behavior of stealing the uri from auth_token.

This also means we can remove the FIXME and auth_token auth_uri
mentioned by jamielennox.

Change-Id: Ie34332a7aec3b9b271df0759dd6ab66b45302832
Related-Bug: #1300246
2015-12-08 13:34:27 +00:00
Joe D'Andrea
779d867028 Force heat deferred_auth_method to password in standalone mode
Heat does not support Keystone Trusts when deployed in standalone
mode. This change forces an error when HEAT_DEFERRED_AUTH is set
to anything other than "password" if HEAT_STANDALONE is True and
advises of the acceptable setting.

Change-Id: Ib4ee9d9af396093137a2a0f99f1b18ae153ccdb3
Closes-Bug: #1463837
2015-11-30 15:36:30 +00:00
Ian Wienand
523f488036 Namespace XTRACE commands
I noticed this when debugging some grenade issues failures.

An include of grenade/functions stores the current value of XTRACE
(on) and disables xtrace for the rest of the import.

We then include devstack's "functions" library, which now overwrites
the stored value of XTRACE the current state; i.e. disabled.

When it finishes it restores the prior state (disabled), and then
grenade restores the same value of XTRACE (disabled).

The result is that xtrace is incorrectly disabled until the next time
it just happens to be turned on.

The solution is to name-space the store of the current-value of xtrace
so when we finish sourcing a file, we always restore the tracing value
to what it was when we entered.

Some files had already discovered this.  In general there is
inconsistency around the setting of the variable, and a lot of obvious
copy-paste.  This brings consistency across all files by using
_XTRACE_* prefixes for the sotre/restore of tracing values.

Change-Id: Iba7739eada5711d9c269cb4127fa712e9f961695
2015-11-27 15:36:04 +11:00
Nicolas Simonds
347dbac04e Add the ability to install/enable Heat plugins
Adds the $ENABLE_HEAT_PLUGINS variable, which should be a list of
the names of the plugins the user wishes to install.

Change-Id: I2ba90002a8fad1cdce6543c89dc37c5912fe133e
2015-10-29 16:12:36 +09:00
Ian Wienand
5cdee8dd33 Update to bashate 0.3.2
Bashate 0.3.2 has a few new checks -- firstly make sure some of the
plugins have #!/bin/bash, and fix up a couple of "local" changes that
were missed by I9c8912a8fd596535589b207d7fc553b9d951d3fe

Change-Id: I9e4b1c0dc9e0f709d8e76f9c9bf1c9478b2605ed
2015-10-29 11:30:20 +11:00
Oleksii Chuprykov
a692810ef0 Add toggle to run Heat API services via Apache2
Add templates for running Heat API services via
apache mod_wsgi. Also add appropriate functions to
lib/heat for configuring Heat.

Change-Id: I1bdd678c44ddfa616a9db7db85ff6f490ff08947
2015-10-28 15:25:17 +00:00
Jenkins
6e9bee1ae5 Merge "Detect blank variable in trueorfalse" 2015-10-15 02:56:19 +00:00
Ian Wienand
e82bac0498 Detect blank variable in trueorfalse
As a follow-on to I8cefb58f49dcd2cb2def8a5071d0892af520e7f7, put in
some detection around missing variable-to-test arguments in
trueorfalse.

Correct a couple of places where we were passing in blank strings,
resulting in the default always being applied.

Add test-cases and enhance the documentation a little.

Depends-On: I8cefb58f49dcd2cb2def8a5071d0892af520e7f7
Change-Id: Icc0eb3808a2b6583828d8c47f0af4181e7e2c75a
2015-10-09 19:07:50 +11:00
Ian Wienand
ada886dd43 Don't mix declaration and set of locals
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
2015-10-07 17:03:32 +11:00
Jenkins
c0581ef9fd Merge "Invoke Heat via console script generated binaries" 2015-09-04 07:59:44 +00:00
Sean Dague
346edcc532 check all possible services when configuring tempest
The previous approach assumed that devstack in tree service support
would always be a super set of tempest. That's not necessarily
true. Instead when configuring tempest we should look at all the
possible services that tempest could know about, which will let us
disable services we don't have support for.

Change-Id: I9c24705e494689f09a885eb0a640efd50db33fcf
2015-08-26 09:38:37 -04:00
Jamie Lennox
b17ad7560d Use identity V3 API for endpoint creation
Always use the keystone V3 API when creating services and endpoints. The syntax
here is slightly different but we maintain the function interface.

Change-Id: Ib3a375918a45fd6e37d873a1a5c0c4b26bdbb5d8
Implements: bp keystonev3
2015-07-08 05:17:00 +10:00
Sirushti Murugesan
9e68af7d17 Invoke Heat via console script generated binaries
Depends-On: Ic8f5b8dc85098de752bbf673c4b15c06fdc4162a
Change-Id: Iffb6d09bfef593d854b38e68200ae6039c4727e7
2015-06-16 18:11:19 +00:00
Jenkins
6aabbbf47f Merge "iptables rule for heat pip mirror" 2015-04-03 16:18:14 +00:00
Steve Baker
11cf7b64a7 iptables rule for heat pip mirror
This is required for guest VMs to reach http://$HOST_IP:8899

Change-Id: I814c682fb02974ae05dfbe5e212409cdd11d16ac
2015-03-27 09:10:15 +13:00
Angus Salkeld
93b906d53e Always set the Heat deferred auth method
Otherwise in standalone mode we use the new default of "trusts"
which won't work.

Change-Id: If18db711faf7810217af0a89d1e38590a94d8e5b
Closes-bug: 1436631
2015-03-26 12:53:51 +10:00
Jenkins
e467cdfeb1 Merge "Install missing heat agent projects" 2015-03-23 18:34:53 +00:00
Jenkins
743d03bf7d Merge "iniset_rpc_backend default section" 2015-03-22 02:41:03 +00:00
Jenkins
05163d66ac Merge "Use install(1) where possible" 2015-03-20 14:30:06 +00:00
Steve Baker
1681995103 Install missing heat agent projects
This change adds the dib-utils repo, and adds git_clone calls for the
required os-*-config projects.

Change-Id: I2641feb0c462d2940f2698515ff62a2ff06c0e70
2015-03-19 09:50:13 +13:00
Dean Troyer
8421c2b9ab Use install(1) where possible
This eliminated a number of sudo calls by doing the copy/chown/chmod in
a single step and sets a common pattern.

Change-Id: I9c8f48854d5bc443cc187df0948c28b82c4d2838
2015-03-18 13:30:59 +11:00
Steve Baker
744c2afd6f Allow heat-standalone to work with keystone v3
Heat can now run in standalone mode with the default v3 keystone
backend.

This change removes the installation of the v2 contrib backend.
It also configures saner defaults when HEAT_STANDALONE is True.
Using trusts and a stack-domain will never work in standalone mode
since they both require a service user which doesn't exist in
standalone mode.

Finally, this change prevents heat.conf being populated with service user options
not required by standalone mode.

Configuring the v2 backend may be reintroduced later with a dedicated
flag variable.

Change-Id: I88403e359e5e59e776b25ba1b65fae6fa8a3548e
2015-03-18 11:12:37 +13:00
Brant Knudson
2dd110ce86 iniset_rpc_backend default section
iniset_rpc_backend should know what section it needs to set the
config options in better than the callers. The config options
have actually been moved to different sections and the options
in the DEFAULT section are deprecated.

Change-Id: I0e07fe03c7812ef8df49e126bf71c57588635639
2015-03-14 17:53:54 +00: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
5e781bd9d0 Merge "Isolate creating service users" 2015-02-09 17:59:36 +00: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
Andrew Lazarev
76549e332e Removed confusing duplication of ca config for keystone
More general check is performed at line 157. No need for this one.

Change-Id: I7de820ca2b2954313b1f591ece7785891868cd27
2015-02-06 16:33:56 -08:00
Jenkins
e79678af5e Merge "Remove the default project from all users" 2015-02-06 16:16:36 +00:00
Jenkins
18e0a335b6 Merge "Bump up the count of workers for heat" 2015-02-03 10:11:26 +00:00
Jenkins
d31b05cc7c Merge "Make elements for heat test image configurable" 2015-01-29 05:56:39 +00:00
Jenkins
61cb01a8a2 Merge "Check dib is available before building heat test image" 2015-01-29 05:56:30 +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
1631af891a Merge "Configure auth_token middleware by auth plugin" 2015-01-26 14:06:15 +00:00
Davanum Srinivas
905275ec9f Bump up the count of workers for heat
Looks like the workers is set to 0 which in heat is used
mainly for profiling/debugging and not really useful in
the devstack scenarios.
https://github.com/openstack/heat/blob/master/heat/common/wsgi.py#L286

Partial-Bug: #1412923
Change-Id: Iccf6aeffd461fdc1f78022cbda370be4b9573267
2015-01-24 19:21:37 -05:00
Steven Hardy
3163c17170 Make elements for heat test image configurable
Allow the elements built into the heat functional test image to
be overridden via the localrc, allows easier testing of local
images with different/additional elements.

Change-Id: Ibaf2322e0572d25461579bbb2dc8a18858f4e09c
2015-01-23 13:26:29 +00:00