4.0.0 - 2013.1.0 - Icehouse Release (Swift 1.13.1)

Updated Modulefile and README.md for 4.0.0 release.

Change-Id: I114fc54e0fe7a4e1b19f5ea1e6c1eb2dd44a0ffd
Add swift-ring-builder multi region support

Since Swift 1.8.0, there is the region layer of topology above zones.
swift-ring-builder supports this natively and this commit allows a user to
specify a region when creating devices.
We maintain backwards compatibility by defaulting to region '1'.
The coverage of the ring builder spec tests were also improved as part of
this commit.

Change-Id: I67cbe6b87c84778f71df59cf00f2c5175342bc1b
Implement rspec function it_raises

On some puppet modules, a it_raises helper is provided. This commit
implements it for puppet-swift.

Change-Id: Id8724823b912f201cc137e23f991d8e05acdcbcc
Restore selinux context on swift mount

Mounting devices without specifying or restoring context ends up with
default context file_t assigned for swift paths. On selinux systems it
is nice to at least try to preserve predefined contexts on paths.

Change-Id: I9b68c04cb0d4ee72c074e514db7141c3c077c978
Closes-Bug: rhbz#1095503
Closes-Bug: #1320853
Merge "Add swift-ring-builder multi region support"
Add dependency so swift config creation succeeds

Introduce dependencies so swift config files are not created until
the swift packages are installed to avoid failures due to missing
directories, users, and groups supplied by the swift packages.

Change-Id: Ifbd7e9c4f0ecdef03c5afe8459216ddaeb849bb7
Closes-Bug: #1314772
Fix swift quota filter names

Align account_quotas and container_quotas filter names to prevent
swift-proxy from tracing back when quotas are enabled.

Change-Id: I835b05fa5d9eb1fb00cc8309d78bafcd4969d0d3
Closes-Bug: #1323761
Merge "Restore selinux context on swift mount"
Merge "Fix swift quota filter names"
Merge "Add dependency so swift config creation succeeds"
Include swift::params in swift::client

Otherwise swift::client can't fetch the name of the package by itself
if swift::params doesn't happen to be in the catalog.

Change-Id: I3d15d0ce68ca084eb4573764b05e8723befbd7e7
Avoid duplication error when ringserver and storage are on the same node

This commit aims to avoid duplication error when the ringserver and the storage node
are on the same machine. For example when using loopback devices.

Change-Id: Ic09af5d3a706d1a59c3fee7689b373d0a4de4e80
Bump stdlib dependency from >=2.3.0 to >=3.2.0

Most puppet components are already using >=3.2.0, this commit will
standardize the requirements.

Change-Id: Iad8ece12f7e05717731f0f071644ac4addfb4ce9
Improve readability of swift::xfs

Improve readability of swift::xfs using ensure_packages
from the stdlib.

Change-Id: I9550c6e9415e49b5363e21c73c935390c3a635e3
Merge "Improve readability of swift::xfs"
Merge "Bump stdlib dependency from >=2.3.0 to >=3.2.0"
Add swift::proxy::crossdomain class

Change-Id: Ie7e5dfc3732ad552063293f16aa04a791bc5add8
swift::proxy::crossdomain class is used to configure crossdomain middleware.
Merge "Include swift::params in swift::client"
Merge "Add swift::proxy::crossdomain class"
Fix boolean that always returned true for selinux fact

Facter returns 'false' if selinux is not enabled.
Puppet evaluates it as true as it is not empty.

Change-Id: I2f1d9a348fd981292aeef177b57f08e1b7ef2732
Closes-bug: #1328547