Bump stable/havana next version to 2013.2.3

Change-Id: Ia5b940faf01df6cae58df1f4b4f5e8fa2f3f078a
Fixing tests to work with keystoneclient 0.6.0

Another item needs mocking with the new release of
python_keystoneclient. Adding it to mocked keystoneclient.Client
object.

Closes-Bug: #1279907
Change-Id: I3c43a7290a6e05c718082dcad369162bf21e3603
(cherry picked from commit 043085f812a1d06e8e082b2dbd52f406172bbfff)
Merge "Fixing tests to work with keystoneclient 0.6.0" into stable/havana
Merge "Bump stable/havana next version to 2013.2.3" into stable/havana
Reduce number of novaclient calls

Currently, each client creates a new session for
each call. This fix makes novaclient re-use
sessions in the most obvoius cases.

Conflicts:
	openstack_dashboard/api/nova.py

Partial-Bug: #1247056

Change-Id: Ie99ecb66304cf40e4f5fdd31fab5162ed11b863e
(cherry picked from commit ddc479272f5402ff778c45892acc3ac7613b7c11)
Allow snapshots of paused and suspended instances

Change-Id: Id483d13d8d329aee4a57d0a89e6368fab3b201ec
Closes-Bug: #1256821
(cherry picked from commit 860b2a0be11ceb2e57c4c0d0e7ff020325277c78)
Don't copy the flavorid when updating flavors

The Nova API makes the implicit assumption that flavorids are unique,
so if one creates two flavors with the same flavorid, subsequent
requests for flavor information can vary between "inaccurate" and
"wildly f*cking inaccurate"

From an end-user perspective, it makes it look like data such as
flavor access settings get lost between edits (because the API pulls
the access list from the wrong flavor)

Let the API assign a new flavorid on changes.  The comments around
the handler code imply that is the desired behaviour, anyhow.

Cherry-picked from 4100a1cbc24184b58d5049dfb601b18e29e6107d

Change-Id: I5403202396a7b136b0ae8637d6aae1cf32550747
Closes-Bug: 1276371
Merge "Reduce number of novaclient calls" into stable/havana
Don't access the net while building docs
(Note this hasn't been submitted upstream)
disable debug, move web root
change lockfile location to '/tmp' and also add localhost to ALLOWED_HOSTS
Add a customization module based on RHOS

Change-Id: I8622ffc8e31cf553315077070b2a696de1bd5081

Conflicts:
	openstack_dashboard/settings.py

fix up issues with customization

do not truncate the logo (related rhbz 877138)
move RBAC policy files and checks to /etc/openstack-dashboard
move SECRET_KEYSTORE to '/var/lib/openstack-dashboard'
Introduces escaping in Horizon/Orchestration

1) Escape help_text a second time to avoid bootstrap tooltip XSS issue

The "Description" parameter in a Heat template is used to populate
a help_text tooltip in the dynamically generated Heat form. Bootstrap
inserts this tooltip into the DOM using .html() which undoes any
escaping we do in Django (it should be using .text()).

This was fixed by forcing the help_text content to be escaped a second
time. The issue itself is mitigated in bootstrap.js release 2.0.3
(ours is currently 2.0.1).

2) Properly escape untrusted Heat template 'outputs'

The 'outputs' parameter in a Heat template was included in a Django
template with HTML autoescaping turned off. Malicious HTML content
could be included in a Heat template and would be rendered by Horizon
when details about a created stack were displayed.

This was fixed by not disabling autoescaping and explicitly escaping
untrusted values in any strings that are later marked "safe" to render
without further escaping.

Conflicts:
	openstack_dashboard/dashboards/project/stacks/mappings.py

Change-Id: Icd9f9d9ca77068b12227d77469773a325c840001
Closes-Bug: #1289033
Co-Authored-By: Kieran Spear <kispear@gmail.com>