Align to openstack python package index mirror

Some modules we developed will not be updated to pypi in time, meanwhile,
jenkins will poll packages from openstack mirror, so it is worth to be
set as default index in tox.

User can use -i option in tox cli to change default index server to any
popular or his favorite.

Change-Id: I4449f9b6861a327cf2fd888205843b51a57dcd2f
Closes-Bug: #1289121
Fix project authorization check

Currently, project authorization check in _verify_query_segregation
only checks query field 'project_id', so normal user can pass the check
with query field 'project'. And the check also checks query operator, which
seems not right, because user will get 401 when project is his own but with
wrong operator, 400 wrong operator can be more precise.

This patch adds project field check and remove the operator check which can
be done in _validate_query.

Change-Id: I82439e4c02afd04d26ab5d419ef67bde1f4aa1ca
Closes-Bug: #1322111
Fix the floatingip pollster

Ceilometer cannot poll and publish floatingip samples, this is
because Nova and Novaclient didn't provide floatingips that don't belong
to the project of the current context.
After merging the following patches it will be possible if parameter
all_tenants is enabled.

I7ab1d5ff463fc29928f6811f846c9e204390a412
I4549341badfdb846c03f2828159c46bc4c4a2c77
I35a2155401247d49017bf3c03341b082cb87750d

Change-Id: Ib5a22d6ba6a815f61713194accb4ece11171f706
Closes-bug: #1262124
Don't rely on oslomsg configuration options

We shouldn't use internal oslo.messaging configuration options.

This patch removes them when an oslo.messaging public API equivalent is
possible.

Closes-bug: #1323324

Change-Id: I0d901bfaf7dd67f0adb0ad9c1b4371994573a6c8
Remove (c) and remove unnecessary encoding lines

The word "Copyright" alone is sufficient to claim copyright, the (c)
symbol need not be present.[1]

As per PEP 263, a Python file with non-ASCII characters must have a
line with "coding: <some-encoding>". Python files containing only
7-bit ASCII characters need no such line.[2]

This commit removes unnecessary Unicode copyright symbols and
unnecessary encoding lines.

[1]: http://www.copyright.gov/circs/circ03.pdf
[2]: http://legacy.python.org/dev/peps/pep-0263/

Closes-Bug: #1324686
Change-Id: Id381ea1f029a0cfddd3773c6d9f16c47842d9c33
Clean tox.ini

The parameters of the documentation related environments
in tox.ini contain redundant and unnecessary parts.

The doc gate job uses the 'venv', which starts a MongoDB
instance. Nor the doc gate job, neither the others like
packaging, which use this env, need a MongoDB instance.
Therefore the 'deps' and the setup-test-env.sh call were
removed from the 'venv' section.

The 'deps' definition was removed from the 'docs' section
also, as it is unnecessary there.

Change-Id: Icfb3e9f88724553cc52143fd24de25f8bcf243a0
Add new 'storage': {'production_ready': True} capability

This capability is needed to be used in the Tempest tests
to have the difference between Icehouse version (where tests
won't pass due to *really* huge running time) and new Juno
version, where this performance issue has been fixed.

Change-Id: I83bf184a58bfba0e48e09a754237a8b0a4dceb25
Improve performance of api requests with hbase scan

Added columns argument to hbase scan requests, it allows to
reduce response size. With this patch we get only required for
filtering cells of scanned rows.

Change-Id: I2c15276965db1dec6a0e9f595ee7c83b33e4cff2
use LOG instead of logger as name for the Logger object

Change-Id: I2997a33b1039dd4ab4b28b16f87d200bec9bfad7
Merge "Improve performance of api requests with hbase scan"
Update doc for sample config file issue

Since we have removed the ceilometer.conf.sample file, we should
update the documentation too.

Change-Id: I93ff8bf2f3332d15495d45a5e55e6252da639302
Closes-Bug: #1320761
Merge "Add new 'storage': {'production_ready': True} capability"
Merge "Align to openstack python package index mirror"
Merge "Don't rely on oslomsg configuration options"
Merge "Clean tox.ini"
Merge "Fix the floatingip pollster"
Add missing explicit cfg option import

The test ceilometer.tests.event.test_endpoint.TestEventEndpoint cannot
be run standalone because of missing import.

This change fixes that.

Change-Id: I18083a0793204da5ef9b78573fa4a0483964e158
Fix notification for NotImplemented record_events

With mongodb as storage backend, notification-to-sample will be broken by
NotImplementedError of record_events() method if we have set
"store_events" option as True in ceilometer.conf.

This patch catch the NotImplementedError and enable the
notification-to-sample process.

Change-Id: I7ace5a8581518fa56e58abca2e377b513ff38675
Closes-Bug: #1320420
Refactor tests to remove direct access to test DBManagers

Previously in several tests DBManager was specified explicitly and some
tests tried to use it even if no backend was available.
Now we should not access them directly. Instead we can mark certain
tests as applicable only to certain backend driver.
One will only have to provide an URL for tests to use.

Later this code will be used to integrate jenkins jobs on real backends.
Database URL will be provided by jenkins and tests will figure out which
manager should be used and what tests can run with it.

Related to blueprint sql-unit-tests-on-real-backend

Change-Id: I9910c25fffb971addec9cec33b624e3b8387f310
Change using of limit argument in get_sample

Use 'limit' as argument in scan method instead of self written approach.

Change-Id: I2576b3bf3bb210ba0f21391766e62e19c23b21a0