Rating service for OpenStack
Go to file
Jeremy Liu 7eca672645 Policy in code
This patch introduces the implementation for registering
default policy rules in code. Default rules are defined under
cloudkitty.common.policies. Each API's policies are defined in a
sub-folder under that path and __init__.py contains all the
default policies in code which are registered in the ``init``
enforcer function in cloudkitty/common/policy.py.

This commit does the following:
 - Creates the ``policies`` module that contains all the default
   policies in code.
 - Adds the base policy rules into code (context_is_admin,
   admin_or_owner and default rules).
 - Add policies in code for current APIs
 - Add a tox env to generate default policy sample file
 - Delete policy.json from repo as policies in code will be used.

Change-Id: I257e8cefc2b699fc979c717531cd9ba77233d94b
Implements: blueprint policy-in-code
2017-12-08 16:45:13 +00:00
cloudkitty Policy in code 2017-12-08 16:45:13 +00:00
contrib Merge "Changes default port from 8888 to 8889" 2016-06-29 15:24:49 +00:00
devstack Policy in code 2017-12-08 16:45:13 +00:00
doc Policy in code 2017-12-08 16:45:13 +00:00
etc Policy in code 2017-12-08 16:45:13 +00:00
playbooks/cloudkitty-tempest-full Add a tempest plugin gate job 2017-11-18 13:30:54 +01:00
releasenotes Merge "Add a tempest plugin gate job" 2017-11-28 14:08:15 +00:00
.gitignore Policy in code 2017-12-08 16:45:13 +00:00
.gitreview Update .gitreview for new namespace 2015-10-17 22:00:44 +00:00
.testr.conf Correct concurrency of gabbi tests for gabbi 1.22.0 2016-06-16 13:00:10 +01:00
.zuul.yaml Add a tempest plugin gate job 2017-11-18 13:30:54 +01:00
HACKING.rst Update and replace http with https for doc links in cloudkitty 2017-11-07 08:07:49 +00:00
LICENSE Set copyright/license information in .py files 2014-06-07 09:14:06 +02:00
README.rst Update and replace http with https for doc links in cloudkitty 2017-11-07 08:07:49 +00:00
requirements.txt Add a collector for Monasca 2017-10-27 14:53:01 +02:00
rtd-requirements.txt Removes unused posix_ipc requirement 2016-02-11 08:44:54 -08:00
setup.cfg Policy in code 2017-12-08 16:45:13 +00:00
setup.py Updated from global requirements 2016-03-25 01:14:12 +01:00
test-requirements.txt Update usage of gabbi in Cloudkitty test 2017-10-24 15:06:04 +00:00
tox.ini Policy in code 2017-12-08 16:45:13 +00:00

README.rst

Team and repository tags

image

CloudKitty

cloudkitty

Rating as a Service component

Goal

CloudKitty aims at filling the gap between metrics collection systems like ceilometer and a billing system.

Every metrics are collected, aggregated and processed through different rating modules. You can then query CloudKitty's storage to retrieve processed data and easily generate reports.

Most parts of CloudKitty are modular so you can easily extend the base code to address your particular use case.

You can find more information on its architecture in the documentation, architecture section.

Status

CloudKitty has been successfully deployed in production on different OpenStack systems.

You can find the latest documentation on readthedocs.

Contributing

We are welcoming new contributors, if you've got new ideas, suggestions or want to contribute contact us.

You can reach us thought IRC (#cloudkitty @freenode.net), or on the official OpenStack mailing list openstack-dev@lists.openstack.org.

A storyboard is available if you need to report bugs.

Additional components

We're providing an OpenStack dashboard (Horizon) integration, you can find the files in the cloudkitty-dashboard repository.

A CLI is available too in the python-cloudkittyclient repository.

Trying it

CloudKitty can be deployed with devstack, more information can be found in the devstack section of the documentation.

Deploying it in production

CloudKitty can be deployed in production on OpenStack Kilo environments, for more information check the installation section of the documentation. Due to oslo libraires new namespace backward compatibility is not possible. If you want to install it on an older system, use a virtualenv.