StackResource add show_deleted option to nested() accessor method

Adds the option to return a stack object even if the stack has been
deleted, which is slightly more convenient when polling for DELETE
COMPLETE state, as you no longer have to handle NotFound when the
delete happens.

Change-Id: I9074bfcec84836cc789cf9f5ecd0a904f020ccb9
blueprint: decouple-nested
engine service add user_creds_id to create_stack interface

Adds the option to pass user_creds_id to create_stack in the service.py
so we can pass the parent user_creds reference in to nested stacks when
creating them via RPC, for compatibility with the way nested stacks
are currently created.

Change-Id: I127628d9af4c148ad7eaf6f0fc8cdb754cc9d6fe
blueprint: decouple-nested
Add snapshot restore HTTP API

This adds the external HTTP API and the RPC methods to invoke stack
restore.

blueprint stack-snapshot
Co-Authored-By: ala.rezmerita@cloudwatt.com

Change-Id: Id1ec0c11c9f12c23b3eec12a853db6ee4ff90277
RandomString don't skip superclass validation

Ensure the superclass validation happens as well as the class-local
additional stuff.

Change-Id: I3fdc6e5d6a4ca741cdd12ca0ed6ceb908c03ae9f
Closes-Bug: #1392754
Remove duplication on stack resource operations

Move resource existence and availability check to a single place to
avoid duplication.  This is prep work for the blueprint
detailed-resource-show.

Change-Id: Ie923516d11307fc5efdbfbe728fb842137915b28
Functional tests skip volume_create_backup_restore

This test is frequently failing and we don't yet understand why,
so skip to avoid further delaying making the functional job voting.

Change-Id: I62e0f70f1c27037f374bab8d15512bde1a2ce928
Partial-Bug: #1382300
Make Cloud Loadbalancer properties updatable

Several Cloud Loadbalancer properties that are updatable in the Cloud
Loadbalancers API were not updatable in the Heat resource.  Add
handle_update for each of these properties.

Change-Id: Ie1de3461ef2114b64195f9cb906caebd853be381
Closes-Bug: #1382665
Don't stop create immediately on error for stack resources

Don't stop create immediately on error for stack resources,
such as autoscalingGroup.

Kicked from Gate, heat can't pass pep8.

Change-Id: I0a41954f89e2000785c2105b8366e9e49858b65f
Closes-bug: #1383645
Merge "RandomString don't skip superclass validation"
Updated from global requirements

Change-Id: I45ba9a7dc5a4575654363c5722b777f6ce5e4068
Merge "Make Cloud Loadbalancer properties updatable"
Merge "Functional tests skip volume_create_backup_restore"
Merge "Updated from global requirements"
Merge "Remove duplication on stack resource operations"
Imported Translations from Transifex

For more information about this automatic import see:
https://wiki.openstack.org/wiki/Translations/Infrastructure

Change-Id: I22573ae6b9db0f072a10d49fa1774567d81e1f0c
Merge "Add snapshot restore HTTP API"
Merge "Don't stop create immediately on error for stack resources"
Move implementation_signature to StackResource

We need to use common logic for the update determination which
uses implementation_signature, so move the common code from
TemplateResource to the StackResource base-class.

Change-Id: Ibd64b3607721487be5b0562cdb54e6c76db51149
Partial-Bug: #1389499
StackResource consider files in implementation_signature

Currently, if the definition of something changes further down
the tree (beyond the template in the StackResource itself in a
more deeply nested template, e.g a provider resource in a
provider resource), we don't recurse on update, so the changes
are not reflected correctly on update.

So modify the definition part of the StackResource implementation
signature so we include both the resource template and the files
map, so we recurse whenver the files content has changed.

Note, on upgrade the first stack update of nested stacks after
this change will update even if no changes have occurred, because
the signature will change.  This should be a no-op other than
the stacks going UPDATE_COMPLETE.

Change-Id: Iff3ecfbe410e47e31f78e111065888b7fd2ddd00
Partial-Bug: #1389499
Merge "StackResource add show_deleted option to nested() accessor method"