Fix typo in call in cinder.API unreserve_volume

Fixes bug #1038599

def unreserve_volume(self, context, volume):
-    cinderclient(context).volumes.reserve(volume['id'])
+    cinderclient(context).volumes.unreserve(volume['id'])

Change-Id: Ida96b01d93f2e82fe842fa93c1a8edbc27434279
Remove unused flags

Fix bug 1040818

* s3_dmz
* osapi_scheme
* osapi_path
* default_project
* auth_token_ttl
* powervm_vios

Change-Id: I799ff4746046302e8fcfb47ba3c23efb3454b28f
Add lintstack error checker based on pylint

Add a new silent test target lintstack based on pylint in Jenkins.
lintstack will compare the pylint errors between HEAD and HEAD~1,
filter out known false positives and report violations in pylint
original parseable format for Jenkins to consume.

Change-Id: Ic2962cb42a174bfe9535aea88475ff4ede3bf9ff
Remove test_keypair_create_quota_limit()

test_keypair_create_quota_limit() is defined twice. The two tests
are not exactly the same but functionally equivallent. Remove the
first definition.

Partially fix bug 1037183

Change-Id: I99bd3cd54cf55ff071ced10e931025813d0c92b0
Move ensure_tree to utils

Its useful to people other that virt drivers.

Change-Id: I721094a1785d7a275f4bfa8994b7b114a6ec07f6
Allow connecting to a ssl-based glance

This introduces a new glance_api_insecure setting that can be used to
not verify the certificate of the glance server against the certificate
authorities.

Fix bug 1042081.

Change-Id: I0a9f081425854e9c01e00dfd641e42276c878c67
Merge "Remove test_keypair_create_quota_limit()"
Merge "Fix typo in call in cinder.API unreserve_volume"
Correct live_migration rpc call in test

self.driver.compute_rpcapi.live_migration should be the correct
way to issue live_migration call instead of
compute_rpcapi.ComputeAPI.live_migration, because the ComputeAPI
is a class, not an instance of the class.
This technically does not matter because the method is moxed out
anyway for testing, but still it is confusing.

Partially fix bug 1037183

Change-Id: Id41520a44fb9cfc19e269427ee42493e5dc52f5b
Implement project specific flavors API

blueprint project-specific-flavors

This change implements API extension to manage project specific flavor
types, so that non-public flavor type can only see by projects with
access rights.

Change-Id: Ie2d2c605065b0c76897f843a4548a0c984a05f1a
Add ops to aggregate_instance_extra_specs filter.

The following operators on instance_type_extra_specs were added in
aggregate_instance_extra_specs filter. Fixes bug 1037090.

= (equal to or greater than as a number; same as vcpus case)
== (equal to as a number)
!= (not equal to as a number)
>= (greater than or equal to as a number)
<= (less than or equal to as a number)
s== (equal to as a string)
s!= (not equal to as a string)
s>= (greater than or equal to as a string)
s> (greater than as a string)
s<= (less than or equal to as a string)
s< (less than as a string)
<in> (substring)
<or> (find one of these)

If the first word in the instance_type_extra_spec is not one of the
keywords above, a default operator "s==" is used.

E.g.: ">= 5", "s== 2.1.0", "<in> gcc", and "<or> fpu <or> gpu"

Change-Id: Iee9bf68011738aab146e6311a17cb3c673d7a392
Fix column variable typo

attach_datetime is not available during downgrade. It's a copy/paste
bug from the upgrade function.

Partially fix bug 1037183

Change-Id: I97e2cf98a180a6c80e59545a9cda9852fa6ac563
Merge "Move ensure_tree to utils"
Merge "Fix column variable typo"
Merge "Remove unused flags"
request_spec['instance_uuids'] as list in resize

Wrap instance['uuid'] in a list when building request_spec in
compute.api before sending it across to the scheduler on resize

regression introduced in I63bbc98c285faebec53f8e62857c01548807db68

fixes bug 1041351

Change-Id: I7cad8316171798e240bf78999cb94730c587a904
Merge "Add lintstack error checker based on pylint"
Merge "request_spec['instance_uuids'] as list in resize"
Add the self parameter to NoopFirewallDriver methods

Following the Python coding convention even though the current
code works with the *args magic.

Part of bug 1037183

Change-Id: I2be815a098913b5879d0d9b3563a55431408431c
Correct utils.execute() to check 0 in check_exit_code

If a process exits with returncode 0, the function always returns without
raising a exception, regardless of whether its check_exit_code includes 0 or
not. This patch fixes it; if check_exit_code does not includes 0 and a
process exits with 0, ProcessExecutionError is raised.

(No change required to caller-side since no one misses 0 in check_exit_code)

Change-Id: I824a9bc5e42038e27df6757cd47c06073681c342