Icehouse branch version updates

Change-Id: I2a70ac3e864abbfe2dc0a5abfad65af35b33892b
Update ChefSpec to 3.4.0

This change gives us new capabilities, such as matching notifies and
subscribes of resources.

Implements: blueprint chefspec-3-4
Change-Id: If9c4e70f4b3e99cf75bb595ca577be01a072eced
Fix the depends cookbook version issue in metadata.rb

The depends condition should be ether of below:
depends 'cookbook-name', '>=x.y.z'
depends 'cookbook-name', '~>x.y'

Closes-bug: 1300524
Change-Id: I6e4d009b92161dc0746586af1da043bf85e38c15
Use get_secret instead of secret

The new get_secret method allows the 'secrets' databag to be renamed,
just like all other databags.

Change-Id: Ic8be5d19a112d78e22716c0cd571efc7186ac9ce
Related-Bug: #1288784
Merge "Use get_secret instead of secret"
Use platform_family instead of platform

As agreed on the mailing list:
https://groups.google.com/forum/#!topic/opscode-chef-openstack/HEL3KqBQIUM

This will allow the ibm_powerkvm platform to be recognized and will
simplify uses of multiple platforms from the same family.

Change-Id: Iebf2aad9f3b4649fb5c27d2fc93ee60c67e42737
Partially-Implements: blueprint add-ibm-powerkvm-enablement
Implements: blueprint platform-family
Let "osapi_volume_listen" can be configurable

When setup cinder in multiple nodes, cinder-api and cinder-volume
will not exist in same node, so we should avoid value of
"osapi_volume_listen" to be "0.0.0.0" and should set it as
the ip of volume api host.

Change-Id: I6daa46d497297e8e4ab9faa2caa953d242cc424e
Closes-bug: #1305157
Create service tenant if needed

When running the os-block-storage role on its own but no other openstack
services, cinder fails to install because the 'service' tenant is not
created for the 'cinder' user to register under.

This patch creates the service tenant like other projects do.

Change-Id: Ib3929ea363d3f97723152ed4b134be46cf2a6d21
Closes-Bug: #1306782
Merge "Use platform_family instead of platform"
Merge "Create service tenant if needed"