5859 Commits

Author SHA1 Message Date
Jenkins
7b010ce90c Merge "Privilege checking for heat-keystone-setup-domain" 2014-08-18 09:22:54 +00:00
Angus Salkeld
5da90ebee2 Make Fn::Join give a better error message
When something goes wrong at the moment users are left staring hard
at their template trying to figure out whats wrong. We can make this a
lot easier by showing them the failed object.

Change-Id: If87447b7e160591505a68d857e8ef1751aac3723
2014-08-18 13:27:44 +10:00
tengqm
a68e08cb47 Privilege checking for heat-keystone-setup-domain
This patch added additional exception handling so that a non-admin user
will understand why his/her attempt to run this script failed.

Change-Id: I20a593f613931de0b3c13094a2e0b6c2f2b0eea1
Closes-Bug: 1354687
2014-08-18 10:58:26 +08:00
Jenkins
c59f659b10 Merge "Add log output about HTTP calls in cinderclient" 2014-08-18 01:33:02 +00:00
Randall Burt
a49cb1ca8e Convert AWS Route Table and association to use clients.
Changed client calls to properly use the new client plugin mechanism.

Change-Id: I7fba8e9adf1801993c815565f567a07603bb2bd8
2014-08-17 17:29:17 -05:00
Jenkins
acf6360a93 Merge "Fix DBError output in test logs" 2014-08-15 20:30:28 +00:00
Jenkins
2c9e3fee20 Merge "Template get_version breaks with Template object" 2014-08-15 19:02:33 +00:00
Jenkins
4ed48ff02a Merge "Native WaitConditionHandle move to common curl_cli" 2014-08-15 12:42:21 +00:00
Jenkins
9c782e6413 Merge "Implement check for Instance resource" 2014-08-14 20:45:37 +00:00
Jenkins
4d645d0485 Merge "Appropriate exception for signal handling failure" 2014-08-14 19:13:39 +00:00
Steven Hardy
7e742a4f91 Native WaitConditionHandle move to common curl_cli
Move to a common curl_cli attribute, which can be used for both
success (default) and failure (by passing appropriate status data,
and optionally reason).  This should allow a slightly more flexible
interface than the current success/failure attributes, while still
remaining simple, and enabling simpler portability between this and
the alternative Swift signal implementation.

Note this breaks compatibility with the attributes we just recently
merged, but I'm assuming since it's so recent nobody is using it yet.

The example template at https://review.openstack.org/#/c/106424/ has
been updated to reflect the new interface.

Change-Id: Iac09aaa60ef5c1de27c9eeca7c65eca41c06907e
blueprint: native-waitcondition
2014-08-14 17:25:59 +01:00
Pavlo Shchelokovskyy
234451b872 Move VolumeAttachment updates to Cinder resource
According to AWS docs AWS::EC2::VolumeAttachment resource does not
support any updates [1]. Support of updates in our AWS-compatible
resource is a bug and needs to be fixed without deprecation period.

This patch moves VolumeAttachment update logic to native Cinder
resource.

[1] http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-ebs-volumeattachment.html

Change-Id: I54d302dbec66ddd49c4a774376df99e7e9d63980
Partial-Bug: #1340096
2014-08-14 15:36:06 +03:00
Jenkins
b5f498654c Merge "Show correct error messages" 2014-08-14 11:54:24 +00:00
Jenkins
d6f3aeb9c9 Merge "Fix typos in comments and help strings" 2014-08-14 11:54:08 +00:00
Steve Baker
fd191b7e48 Implement barbican client plugin
This moves the client creation code out of a Clients subclass into
its own client plugin.

Barbican is not an integrated project so the plugin is not registered
if barbicanclient cannot be imported.

The code which prevented client errors in _resolve_attribute from being raised
has been removed. This will prevent invalid attribute values from being
memoized.

The base package has been renamed to heat_barbican since stevedore
is used for client plugin loading and the base package will be
installed by setuptools, the package barbican might clash with
the actual Barbican project.

Change-Id: I5788fb4618fef0d1c3e39cc98094bb2813e842c5
2014-08-13 20:12:29 -05:00
Steve Baker
23893088f1 Implement marconi client plugin
This moves the client creation code out of a Clients subclass into
its own client plugin.

The base package has been renamed to heat_marconi since stevedore
is used for client plugin loading and the base package will be
installed by setuptools, the package marconi might clash with
the actual marconi project.

Change-Id: Ie824d961fcfa9dafd72cc40ccf207d1c1e0501ad
2014-08-13 20:12:29 -05:00
Steve Baker
1a44187fdf Port rackspace clients to client plugins
This change converts the rackspace client code to be contributed
via client plugins. This is the last change required for all in-tree
clients to be contributed via plugins.

A RackspaceTest base class which adds the rackspace directory
to the client plugins path which ensures any rackspace variants
are loaded. Plugin loading precedence is used to ensure rackspace
versions will override core plugins with the same name.

The nova plugin will fallback to returning the core nova client
so that CloudServersTest will run even when pyrax is not installed.

The cloud_backed configuration option will no longer have any effect
on whether rackspace clients will be loaded. Instead they will be loaded
by stevedore via the setup.cfg heat.clients entry point.

Change-Id: I312de40064cc00896dba1835117ff67003e57938
2014-08-13 20:12:29 -05:00
Steve Baker
0eb93cbf33 Use setuptools to install contrib plugins
This change creates a pbr setup.cfg and specifies a data_files
entry to install the contrib plugin source into the /usr/lib/heat
plugin directory.

This change also temporarily disables docs building for contrib
resoures until the transition to stevedore is fully complete.

Change-Id: I1c91aee20f72dc2a5a049e67de1d6d7cbabda241
2014-08-13 20:12:29 -05:00
Steve Baker
60e6eeb075 Move nova_utils functions to nova client plugin
All uses of nova_utils functions have been migrated to using
the nova client plugin version.

Existing functions now have a deprecation warning which is
suppressed during nova_utils unit tests.

nova_utils.get_flavor_id was being called with the trove
client, so there is now a dedicated trove plugin method
get_flavor_id.

Change-Id: Ic8120022a1f9117c783f6422069f94614bcbb3c6
2014-08-13 20:12:29 -05:00
Jenkins
cbcfe1cedf Merge "Use new template for resource update reparse" 2014-08-14 00:47:59 +00:00
Jenkins
4e0b904751 Merge "test_parser.py remove some spurious Replay/Verify calls" 2014-08-14 00:46:55 +00:00
Jenkins
fcd89aa503 Merge "Cinder, trove, ceilo use ignore_not_found etc" 2014-08-13 23:58:57 +00:00
Jenkins
3f0083b44b Merge "Use Constraint stubs in common.py" 2014-08-13 23:16:04 +00:00
Jenkins
bdfb762e4b Merge "Add constraints to check whether image/keypair exists" 2014-08-13 23:15:56 +00:00
Jenkins
dbedf77903 Merge "Remove function get_software_config" 2014-08-13 22:47:14 +00:00
Steve Baker
20c347a794 Cinder, trove, ceilo use ignore_not_found etc
Change-Id: I7dc38cba8cb9a51fed616c7bb9c8eb58e897a110
2014-08-13 16:43:26 -05:00
Jenkins
fc7107a90a Merge "Move calculating new capacity to a function" 2014-08-13 21:43:13 +00:00
Jenkins
d7331a4af0 Merge "Deny updates to AWS::EC2::Volume resource" 2014-08-13 17:33:34 +00:00
Jenkins
5e64c52c55 Merge "Amend docs with immutable property attribute." 2014-08-13 17:33:26 +00:00
Jenkins
66e8c226c1 Merge "Refactor calling handle_* into a separate task" 2014-08-13 16:16:28 +00:00
huangtianhua
33b1cefe66 Use Constraint stubs in common.py
Migrate to use functions: stub_KeypairConstraint_validate() and
stub_ImageConstraint_validate() in tests/common.py which defined 
in patch I23dc126e621f3cfa7ca86b3a1c27dd949d3f5093.

Change-Id: I63d578a9291d0fe08815d6a33323324432ae21cb
2014-08-13 16:03:21 +00:00
huangtianhua
7262d3a2c7 Add constraints to check whether image/keypair exists
Add constraints for "KeyName" and "ImageId" to check whether keypair/image
exists on "AWS::AutoScaling::LaunchConfiguration" resource.

Change-Id: I23dc126e621f3cfa7ca86b3a1c27dd949d3f5093
Closes-Bug: #1312564
2014-08-13 16:03:05 +00:00
Steve Baker
d825e2be11 Remove function get_software_config
This change removes the function get_software_config
and replaces it with direct calls to heatclient.

This allows the heat client plugin's ignore_not_found handling
to be used.

The SoftwareConfigMissing exception is also no longer required.

Change-Id: I61fbe9556d9988fffd4afddf3fad5d2fa211475a
2014-08-13 11:00:18 -05:00
Jenkins
a37e5e86a5 Merge "Glance, swift use ClientPlugin.ignore_not_found" 2014-08-13 10:29:31 +00:00
aivanitskiy
9ed313a8be Fix typos in comments and help strings
Change-Id: I68446dd652186191d19551032a634aee03f9e637
2014-08-13 13:54:24 +04:00
Steven Hardy
0b86e0a0f7 test_parser.py remove some spurious Replay/Verify calls
There are some Replay/Verify calls which don't do anything, so
remove them, for the avoidance of perpetuating them in cut/paste
for new tests.

Change-Id: I4c08732d37ca9c1e15d13217ba257fff1bc2f518
2014-08-13 10:14:14 +01:00
Jenkins
2c8e1a05e8 Merge "Change Volume metadata attribute to raw dict." 2014-08-13 08:29:24 +00:00
Jenkins
facc7e952e Merge "Neutron use ClientPlugin.ignore_not_found etc" 2014-08-13 08:08:43 +00:00
Jenkins
5205b8e2ed Merge "Fix dict format in wait_condition.py docstrings" 2014-08-13 07:38:44 +00:00
Jenkins
682b58ccf4 Merge "Add stack-check action to the API" 2014-08-13 07:00:18 +00:00
Jenkins
19982b8b7b Merge "Check resources are in expected states" 2014-08-13 07:00:10 +00:00
Jenkins
da7f2985ea Merge "Implement BlockDeviceMappings for AWS::EC2::Instance" 2014-08-13 03:59:08 +00:00
Steve Baker
afd538664f Use new template for resource update reparse
If the stack-update is switching from pre-HOT to HOT then
the update will fail because the functions are resolved
using the pre-HOT template.

This change uses the new template for the reparse instead of the
old one. It fixes the issue observed but any other effects are
unknown.

Change-Id: I2f749375ccd7ca917387ef96856b1fc248c8567b
Closes-Bug: #1356097
2014-08-13 13:57:32 +12:00
Zane Bitter
93b4834026 Refactor calling handle_* into a separate task
Change-Id: I8352732328d0009688724f2b2ef8ca90fab16955
2014-08-12 17:52:12 -04:00
Jenkins
5665965d4b Merge "Display stack owner when formatting stacks" 2014-08-12 19:55:35 +00:00
Richard Lee
25788a13c2 Display stack owner when formatting stacks
Stacks are launched by users but scoped to tenants, so users in the same
tenant currently have no way to know owns each stack.  The same is
especially true to unscoped stack lists.  Since humans are much better
with names than they are with numbers, this adds the stack owner
username to the data returned with each stack.

Co-Authored-By: Anderson Mesquita <andersonvom@gmail.com>
Implements: blueprint stack-display-fields
Change-Id: Ia1386531025096e0eeaf9e98b478c4453fc8cb01
2014-08-12 11:06:44 -04:00
Jenkins
750193422d Merge "Check for property immutability in rsrc update" 2014-08-12 15:06:29 +00:00
Anderson Mesquita
ea65aebcdb Implement check for Instance resource
Instance resource will raise an error if it's not active at the time of
the check.

Co-Authored-By: Richard Lee <rblee88@gmail.com>
Implements: blueprint stack-check (partial)
Change-Id: Id34b461f5c76187928dd0419d8537e9a6cb6178c
2014-08-12 10:51:39 -04:00
Anderson Mesquita
11613af2f4 Add stack-check action to the API
Add CHECK to the list of accepted stack actions.

Co-Authored-By: Richard Lee <rblee88@gmail.com>
Implements: blueprint stack-check (partial)
Change-Id: I38265b672090f5fcc34413cc4d8c086015af869c
2014-08-12 10:51:39 -04:00
Anderson Mesquita
87ff54290a Check resources are in expected states
Allow resource to check whether it is in an expected state and update
status and action accordingly.

This adds a check action to the stack that will perform checks in all
their resources and nested resources as well.  If a resource doesn't
have a handle_check() method, check for that resource will just pass.

If any resource at the end of a Stack.check() doesn't have a
handle_check() method, then a message will be added to the status_reason
of both the resource and the stack saying that CHECK is not (fully)
supported.  This allows for the other resources to implement their own
checks for their expected states.

Co-Authored-By: Richard Lee <rblee88@gmail.com>
Implements: blueprint stack-check (partial)
Change-Id: I18985476696faeaa47149c233a067f9494c2effa
2014-08-12 10:51:38 -04:00