Build ceilometer 2015.1.0 (stable/kilo) 56/6656/14
authoriberezovskiy <iberezovskiy@mirantis.com>
Wed, 13 May 2015 14:23:15 +0000 (17:23 +0300)
committeriberezovskiy <iberezovskiy@mirantis.com>
Tue, 19 May 2015 15:05:57 +0000 (18:05 +0300)
  * Requirements was updated according to:
    https://github.com/openstack/ceilometer/blob/stable/kilo/requirements.txt
    https://github.com/openstack/requirements/blob/stable/kilo/global-requirements.txt
  * Add support for new ceilometer-polling package
  * Rewrite runtests.sh script

Change-Id: Id3702cf87aef9520ba343f440f8e0382b510a91c

57 files changed:
debian/README.Debian [deleted file]
debian/changelog [deleted file]
debian/patches/default-config.patch [deleted file]
debian/patches/series [deleted file]
debian/pydist-overrides [deleted file]
debian/watch [deleted file]
rpm/SOURCES/openstack-ceilometer-polling.init [new file with mode: 0644]
rpm/SOURCES/openstack-ceilometer-polling.service [new file with mode: 0644]
rpm/SOURCES/openstack-ceilometer-polling.upstart [new file with mode: 0644]
rpm/SPECS/openstack-ceilometer.spec
tests/runtests.sh
trusty/debian/ceilometer-agent-central.init.in [moved from debian/ceilometer-agent-central.init.in with 100% similarity]
trusty/debian/ceilometer-agent-central.install [moved from debian/ceilometer-agent-central.install with 100% similarity]
trusty/debian/ceilometer-agent-central.postrm [moved from debian/ceilometer-agent-central.postrm with 100% similarity]
trusty/debian/ceilometer-agent-compute.init.in [moved from debian/ceilometer-agent-compute.init.in with 100% similarity]
trusty/debian/ceilometer-agent-compute.install [moved from debian/ceilometer-agent-compute.install with 100% similarity]
trusty/debian/ceilometer-agent-compute.postrm [moved from debian/ceilometer-agent-compute.postrm with 100% similarity]
trusty/debian/ceilometer-agent-ipmi.init.in [moved from debian/ceilometer-agent-ipmi.init.in with 100% similarity]
trusty/debian/ceilometer-agent-ipmi.install [moved from debian/ceilometer-agent-ipmi.install with 100% similarity]
trusty/debian/ceilometer-agent-ipmi.postrm [moved from debian/ceilometer-agent-ipmi.postrm with 100% similarity]
trusty/debian/ceilometer-agent-notification.init.in [moved from debian/ceilometer-agent-notification.init.in with 100% similarity]
trusty/debian/ceilometer-agent-notification.install [moved from debian/ceilometer-agent-notification.install with 100% similarity]
trusty/debian/ceilometer-agent-notification.postrm [moved from debian/ceilometer-agent-notification.postrm with 100% similarity]
trusty/debian/ceilometer-alarm-evaluator.init.in [moved from debian/ceilometer-alarm-evaluator.init.in with 100% similarity]
trusty/debian/ceilometer-alarm-evaluator.install [moved from debian/ceilometer-alarm-evaluator.install with 100% similarity]
trusty/debian/ceilometer-alarm-notifier.init.in [moved from debian/ceilometer-alarm-notifier.init.in with 100% similarity]
trusty/debian/ceilometer-alarm-notifier.install [moved from debian/ceilometer-alarm-notifier.install with 100% similarity]
trusty/debian/ceilometer-api.init.in [moved from debian/ceilometer-api.init.in with 100% similarity]
trusty/debian/ceilometer-api.install [moved from debian/ceilometer-api.install with 100% similarity]
trusty/debian/ceilometer-api.postrm [moved from debian/ceilometer-api.postrm with 100% similarity]
trusty/debian/ceilometer-collector.init.in [moved from debian/ceilometer-collector.init.in with 100% similarity]
trusty/debian/ceilometer-collector.install [moved from debian/ceilometer-collector.install with 100% similarity]
trusty/debian/ceilometer-collector.postrm [moved from debian/ceilometer-collector.postrm with 100% similarity]
trusty/debian/ceilometer-common.dirs [moved from debian/ceilometer-common.dirs with 100% similarity]
trusty/debian/ceilometer-common.install [moved from debian/ceilometer-common.install with 73% similarity]
trusty/debian/ceilometer-common.logrotate [moved from debian/ceilometer-common.logrotate with 100% similarity]
trusty/debian/ceilometer-common.postinst [moved from debian/ceilometer-common.postinst with 100% similarity]
trusty/debian/ceilometer-polling.init.in [moved from debian/ceilometer-polling.init.in with 100% similarity]
trusty/debian/ceilometer-polling.install [moved from debian/ceilometer-polling.install with 100% similarity]
trusty/debian/ceilometer-polling.postrm [moved from debian/ceilometer-polling.postrm with 100% similarity]
trusty/debian/changelog [new file with mode: 0644]
trusty/debian/compat [moved from debian/compat with 100% similarity]
trusty/debian/control [moved from debian/control with 60% similarity]
trusty/debian/copyright [moved from debian/copyright with 100% similarity]
trusty/debian/docs [moved from debian/docs with 100% similarity]
trusty/debian/patches/disable-kafka.patch [new file with mode: 0644]
trusty/debian/patches/series [new file with mode: 0644]
trusty/debian/patches/skip-db-tests.patch [moved from debian/patches/skip-db-tests.patch with 100% similarity]
trusty/debian/patches/skip-gabbi.patch [new file with mode: 0644]
trusty/debian/patches/skip-test.patch [new file with mode: 0644]
trusty/debian/pydist-overrides [new file with mode: 0644]
trusty/debian/python-ceilometer.install [moved from debian/python-ceilometer.install with 100% similarity]
trusty/debian/rules [moved from debian/rules with 88% similarity]
trusty/debian/source/format [moved from debian/source/format with 100% similarity]
trusty/debian/tests/control [moved from debian/tests/control with 67% similarity]
trusty/debian/tests/test-daemons [moved from debian/tests/test-daemons with 78% similarity]
trusty/debian/tests/test-python-ceilometer [moved from debian/tests/test-python-ceilometer with 100% similarity]

diff --git a/debian/README.Debian b/debian/README.Debian
deleted file mode 100644 (file)
index ca0ec7d..0000000
+++ /dev/null
@@ -1,2 +0,0 @@
-In order to configure both the agents and collector you have to put notification_topics 'notifications,glance_notifications'
-in your /etc/nova/nova.conf.
diff --git a/debian/changelog b/debian/changelog
deleted file mode 100644 (file)
index 75dcdc2..0000000
+++ /dev/null
@@ -1,496 +0,0 @@
-ceilometer (2015.1~b1-0ubuntu3) vivid; urgency=medium
-
-  * Systemd enablement:
-    - d/*.service: Dropped in favor of template approach.
-    - d/control: Add dh-systemd and openstack-pkg-tools to BD's.
-    - d/rules: Enable use of pkgos, tidyup generated init files.
-    - d/*.init.in: Cherry pick and adapt pkgos template configurations from
-      Debian ceilometer package (thanks Thomas).
-    - d/*.upstart: Drop in preference to generated files.
-  * d/control,compat: Bump debhelper compat level to 9.
-
- -- Corey Bryant <corey.bryant@canonical.com>  Thu, 08 Jan 2015 14:19:46 -0500
-
-ceilometer (2015.1~b1-0ubuntu2) vivid; urgency=medium
-
-  * Systemd integration:
-    - add the 6 systemd debian/*.service corresponding to the upstart jobs
-    - debian/control: add dh-systemd build-dep
-    - debian/rules: enables systemd helper
-  * debian/control:
-    - fix Vcs-Bzr to point to kilo
-
- -- Didier Roche <didrocks@ubuntu.com>  Fri, 09 Jan 2015 13:22:50 +0100
-
-ceilometer (2015.1~b1-0ubuntu1) vivid; urgency=medium
-
-  [ Chuck Short ]
-  * Open up for vivid.
-  * debian/control: Update bzr branch.
-  * debian/control: Add python-oslo.conccurency, python-retrying, and
-    python-oslo.midddleware as a build dependency.
-  * debian/patches/fix-requirements.patch: Dropped no longer needed.
-  * debian/patches/skip-db-tests.patch: Refreshed
-  * debian/rules: Use oslo-config-generator to generate configuration
-    files.
-  * debian/control, debian/ceilometer-polling.upstart,
-    debian/ceilometer-polling.install, debian/ceilometer-polling.postrm:
-    Add polling service.
-
-  [ Corey Bryant ]
-  * New upstream release.
-    - d/control: Align requirements with upstream.
-    - d/watch: Update uversionmangle for kilo beta naming.
-  * d/control: Bumped Standards-Version to 3.9.6.
-
- -- Corey Bryant <corey.bryant@canonical.com>  Fri, 19 Dec 2014 07:54:44 -0500
-
-ceilometer (2014.2-0ubuntu1) utopic; urgency=medium
-
-  * New upstream release. 
-
- -- Chuck Short <zulcss@ubuntu.com>  Thu, 16 Oct 2014 14:30:18 -0400
-
-ceilometer (2014.2~rc3-0ubuntu1) utopic; urgency=medium
-
-  [ Corey Bryant ]
-  * New upstream release candidate.
-
- -- Chuck Short <zulcss@ubuntu.com>  Tue, 14 Oct 2014 12:57:54 -0400
-
-ceilometer (2014.2~rc2-0ubuntu1) utopic; urgency=medium
-
-  [ Corey Bryant ]
-  * New upstream release candidate (LP: #1377218):
-    - d/watch: Use tarballs.openstack.org, limit scope to versions
-      starting with numbers.
-    - d/control: Align version requirements with rc1.
-    - d/ceilometer-agent-ipmi.*: Add support for IPMI agent.
-    - d/ceilometer-common.install: Add support for ceilometer-rootwrap.
-    - d/ceilometer-agent-notification.postrm: Add missing postrm file.
-    - d/ceilometer-agent-central.upstart: Fix description.
-    - d/ceilometer-collector.upstart: Fix description.
-    - d/ceilometer-api.upstart: Fix description.
-    - d/tests/control: Add ceilometer-agent-ipmi to test.
-    - d/tests/test-daemons: Add ceilometer-agent-ipmi to test.
-    - d/ceilometer.conf.sample: Removed. Use generated config file.
-    - d/rules: Copy sample config file from etc/ rather than debian/.
-    - d/p/series: Add missing patches.
-    - d/p/skip-ubuntu-tests.patch: Rebased.
-    - d/p/fix-requirements.patch: Drop ordereddict and discover.
-    - d/p/fix-requirements.patch: Align with Ubuntu.
-    - d/rules: Generate sample ceilometer.conf and patch with log and
-      db connection defaults before before copying.
-    - d/p/default-*.patch: Dropped as unable to patch config file
-      pre-generation.
-
-  [ James Page ]
-  * d/p/skip-ubuntu-tests.patch,skip-db-tests.patch: Rework unit test
-    patches to skip db2 and mongodb tests as not in Ubuntu main.
-  * d/control: Fixup accross->across typo.
-  * d/ceilometer-agent-ipmi.install: Install rootwrap filters for
-    ipmitool usage.
-  * d/control: Add dependency on ipmitool for ceilometer-agent-ipmi.
-  * d/ceilometer-common.logrotate: Add single common logrotate configuration,
-    inline with Debian (thanks Thomas) (LP: #1373617).
-
- -- James Page <james.page@ubuntu.com>  Thu, 09 Oct 2014 17:48:38 +0100
-
-ceilometer (2014.2~b3-0ubuntu2) utopic; urgency=medium
-
-  * d/control: Tidy version requirements to align to b3, wrap-and-sort.
-  * d/control: Bump Standards-Version: 3.9.5, no changes.
-  * d/tests/*: Rename DEP-8 tests to comply with naming standards.
-  * d/*: wrap-and-sort.
-
- -- James Page <james.page@ubuntu.com>  Thu, 18 Sep 2014 11:35:49 +0100
-
-ceilometer (2014.2~b3-0ubuntu1) utopic; urgency=medium
-
-  [ Chuck Short ]
-  * New upstream release.
-  * debian/control:
-    - Dropped python-swift, python-nova, python-flask, python-msqldb, 
-      python-simplejson, and python-kombu
-    - Added python-oslotest, python-oslo.utils, python-oslo.nessaging,
-      python-keystonemiddleware, python-tz, python-neutronclient, 
-      python-posix-ipc, python-oslo.db, and python-hacking
-    - Bumped dependens on python-alembic, python-happybase, python-iso8601,
-      python-keystoneclient, python-novaclient, python-oslo.config, 
-      python-swiftclient, python-pbr, python-pecan, python-stevedore,
-      python-six, python-testools
-    - Added versioned dependencies for python-croniter, python-httplib2,
-      python-jsonpath-rw, python-migrate, python-mock, python-mox,
-      python-msgpack, python-oslo.vmware, 
-    - Renamed python-oslo.sphinx to python-oslosphinx.
-  * debian/patches/fix-requirements.patch: Dropped no longer needed.
-  * debian/rules: Temporarily disable tests.
-  * debian/pydist-overrides: Add pysnmp
-  * debian/ceilometer.conf.sample: Add sample configuration file
-
-  [ James Page ]
-  * debian/ceilometer-common.install: Install missing api_paste.ini to
-    /etc/ceilometer. 
-
- -- Chuck Short <zulcss@ubuntu.com>  Mon, 15 Sep 2014 10:02:14 -0400
-
-ceilometer (2014.2~b2-0ubuntu1) utopic; urgency=medium
-
-  [ Chuck Short ]
-  * New upstream release.
-  * debian/rules: Re-enable tests.
-  * debian/paches/fix-requirements.patch: Refreshed
-  * debian/control: Add python-oslo.vmware
-  * debian/control: Add python-pysnmp4.
-  * debian/patches/skip-ubunu-tests.patch: Skip tests that are failing
-    in the buildds.
-  * debian/rules: Pipe tests through subunit.
-
-  [ Gauvain Pocentek ]
-  * debian/patches/default-log-dir.patch: define a default log directory to
-    actually get logging to work
-
- -- Chuck Short <zulcss@ubuntu.com>  Thu, 24 Jul 2014 14:41:58 -0400
-
-ceilometer (2014.2~b1-0ubuntu2) utopic; urgency=medium
-
-  * SECURITY UPDATE: X_AUTH_TOKEN disclosure
-    - debian/patches/CVE-2014-4615.patch: filter out token in
-      ceilometer/openstack/common/middleware/notifier.py.
-    - CVE-2014-4615
-
- -- Marc Deslauriers <marc.deslauriers@ubuntu.com>  Wed, 09 Jul 2014 14:48:47 -0400
-
-ceilometer (2014.2~b1-0ubuntu1) trusty; urgency=medium
-
-  * New upstream release.
-  * debian/control: Open up juno release
-  * debian/patches/fix-requirements.patch: Refreshed.
-  * debian/rules: Patch the ceilometer.conf.sample directly since
-    the configuration files are generated by a tool.
-  * debian/ceilometer-common.install: Drop sources.json.
-
- -- Chuck Short <zulcss@ubuntu.com>  Fri, 13 Jun 2014 13:20:35 -0400
-
-ceilometer (2014.1-0ubuntu1) trusty; urgency=medium
-
-  * New upstream release (LP: #1299055).
-
- -- Corey Bryant <corey.bryant@canonical.com>  Wed, 16 Apr 2014 13:04:53 -0400
-
-ceilometer (2014.1~rc3-0ubuntu1) trusty; urgency=medium
-
-  * New upstream release candidate (LP: #1299055).
-
- -- Chuck Short <zulcss@ubuntu.com>  Tue, 15 Apr 2014 20:29:38 -0400
-
-ceilometer (2014.1~rc2-0ubuntu1) trusty; urgency=medium
-
-  [ James Page ]
-  * d/ceilometer-common.postinst: Only run db sync process if default sqlite
-    connection is configured in /etc/ceilometer/ceilometer.conf (LP: #1182964).
-
-  [ Chuck Short ]
-  * New upstream release (LP: #1299055).
-
- -- Chuck Short <zulcss@ubuntu.com>  Tue, 08 Apr 2014 15:41:50 -0400
-
-ceilometer (2014.1~rc1-0ubuntu1) trusty; urgency=medium
-
-  * New upstream release.
-
- -- Corey Bryant <corey.bryant@canonical.com>  Mon, 31 Mar 2014 11:50:09 -0400
-
-ceilometer (2014.1~b3-0ubuntu3) trusty; urgency=medium
-
-  * debian/patches/fix-requirements.patch: Explicity disable snmp.
-
- -- Chuck Short <zulcss@ubuntu.com>  Thu, 20 Mar 2014 13:12:54 -0400
-
-ceilometer (2014.1~b3-0ubuntu2) trusty; urgency=medium
-
-  * d/p/default-dbconnection-sqlite.patch: Fix default sqlite connection URL.
-  * d/control: Fixup typo in notification agent description (LP: #1267127).
-
- -- James Page <james.page@ubuntu.com>  Thu, 13 Mar 2014 16:51:52 +0000
-
-ceilometer (2014.1~b3-0ubuntu1) trusty; urgency=medium
-
-  * New upstream release.
-  * debian/patches/debian/patches/default-dbconnection-sqlite.patch: Refreshed.
-  * debian/patches/fix-setup-requirements.patch: Dropped no longer needed.
-  * debian/patches/skip-database-tests.patch: Dropped no longer needed.
-  * debian/patches/revert-keystone-compat.patch: Dropped no longer needed.
-  * debian/control:
-    - Bump python-stevedore to 0.13.
-    - Add python-croniter as a build dependency.
-    - Suggest python-pysnmp4.
-  * debian/cielometer-common.install: Add ceilometer-sample
-
- -- Chuck Short <zulcss@ubuntu.com>  Thu, 06 Mar 2014 14:44:28 -0500
-
-ceilometer (2014.1~b2-0ubuntu1) trusty; urgency=medium
-
-  [ James Page ]
-  * d/control: Add python-jsonpath-rw to BD's.
-  * d/p/fix-setup-requirements.patch: Bump WebOb to support < 1.4.
-   (LP: #1261101)
-
-  [ Chuck Short ]
-  * New upstream version.
-  * debian/control, debian/ceilometer-common.install: Split out
-    ceilometer-alarm-evaluator and ceilometer-alarm-notifier into their
-    own packages. (LP: #1250002)
-  * debian/ceilometer-agent-central.logrotate,
-    debian/ceilometer-agent-compute.logrotate,
-    debian/ceilometer-api.logrotate,
-    debian/ceilometer-collector.logrotate: Add logrotate files, 
-    thanks to Ahmed Rahal. (LP: #1224223)
-  * Fix typos in upstart files.
-
- -- Chuck Short <zulcss@ubuntu.com>  Thu, 23 Jan 2014 15:08:11 -0500
-
-ceilometer (2014.1~b1-0ubuntu1) trusty; urgency=low
-
-  [ Chuck Short ]
-  * New upstream release.
-  * debian/control:
-    - Open icehouse release.
-    - Renamed msgpack-python to python-msgpack.
-    - Bump build dependency version for python-ceilometerclient,
-      python-novaclient, python-keystoneclient, python-six,
-      python-wsme.
-  * debian/patches/fix-setup-requirements.patch: Refreshed.
-  * debian/patches/skip-database-tests.patch: Refreshed.
-  * debian/rules: Temporarily disable testsuite.
-
-  [ Yolanda Robla ]
-  * debian/patches/fix-setup-requirements.patch: Refreshed.
-  * debian/patches/default-dbconnection-sqlite.patch: Refreshed
-  * debian/ceilometer-collector.install: Removed usr/bin/ceilometer-collector-udp
-  * Added ceilometer-agent-notification package:
-    - debian/control: added ceilometer-agent-notification package
-    - debian/ceilometer-agent-notification.*: added install, upstart
-    - debian/tests: added ceilometer-agent-notification to tests
-  * debian/control: updated build-depends and depends versions
-
-  [ James Page ]
-  * debian/control: Add missing BD on python-mysqldb.
-
- -- Chuck Short <zulcss@ubuntu.com>  Thu, 05 Dec 2013 11:59:04 -0500
-
-ceilometer (2013.2-0ubuntu1) saucy; urgency=low
-
-  * New upstream release (LP: #1236462).
-
- -- Chuck Short <zulcss@ubuntu.com>  Thu, 17 Oct 2013 09:38:31 -0400
-
-ceilometer (2013.2~rc2-0ubuntu1) saucy; urgency=low
-
-  * New upstream release candidate (LP: #1239156):
-    - d/p/revert-keystone-compat.patch: Revert keystoneclient 0.4.0 compat
-      fix as this causes test failures against 0.3.4.
-  * d/control: Drop a3 from versioned dependency on python-oslo.config.
-
- -- James Page <james.page@ubuntu.com>  Mon, 14 Oct 2013 10:30:03 +0100
-
-ceilometer (2013.2~rc1-0ubuntu1) saucy; urgency=low
-
-  * debian/patches/fix-setup-requirements.patch: Dropped no longer
-    needed.
-  * debian/patches/skip-database.patch: Refreshed
-  * debian/control:
-    - Add versioned dependency for python-pbr.
-    - Bump version dependency for python-webob.
-    - Add versioned dependency for alembic.
-    - Bump versioned dependency for python-sqlalchemy.
-    - Add versioned dependency for python-pymongo.
-    - Add versioned dependency for python-eventlet.
-    - Dropped python-extras dependency.
-    - Bump versioned dependency for python-flask.
-    - Bump versioned dependency for python-stevedore.
-    - Add versioned dependency for python-glanceclient.
-    - Bump versioned dependency for python-novaclient.
-    - Bump versioned dependency for python-keystoneclient.
-    - Bump versioned dependency for python-ceilometerclient.
-    - Add versioned dependency for python-lxml.
-    - Bump versioned dependency for python-wsme.
-    - Dropped python-netifaces dependency.
-    - Added python-httplib2 build dependency.
-    - Bump versioned dependency for python-fixtures.
-    - Bump versioned dependency for testrepository.
-    - Added versioned dependency for python-testtools.
-    - Added versioned dependency for python-swiftclient.
-    - Dropped python-cinderclient dependency.
-    - Dropped python-lockfile dependency.
-    - Dropped python-setuptoools-git dependency.
-    - Dropped python-unittest2 dependency.
-    - Dropped python-d2to1 dependency.
-    - Added versioned dependency for python-testtools.
-    - Added binary dependency for python-netaddr.
-    - Add python-six as a dependency.
-  * debian/patches/fix-setup-requirements.patch: Bump sqlachemy version.
-  * debian/ceilometer-common.install:
-    - Dropped ceilometer-alarm-singleton, no longer exists.
-    - Added usr/bin/ceilometer-alarm-evaluator.
-
- -- Chuck Short <zulcss@ubuntu.com>  Thu, 03 Oct 2013 08:40:40 -0400
-
-ceilometer (2013.2~b3-0ubuntu1) saucy; urgency=low
-
-  [ Chuck Short ]
-  * New upstream release.
-  * debian/patches/fix-setup-requirements.patch: Refreshed
-  * debian/patches/skip-database.patch: Refreshed
-
-  [ Yolanda Robla ]
-  * debian/control,debian/tests: Add basic autopkgtests.
-
-  [ Adam Gandelman ]
-  * debian/patches/default-dbconnection-sqlite.patch: Set 'connection' flag
-    in [database] section, referencing 'sqlite_db' (LP: #1221956).
-  * debian/patches/skip-database-tests.patch: Also patch out db2 and hbase
-    scenarios in v2 test_statistics_scenarios.py.
-  * debian/rules: Clean python-pbr egg if it exists, set PYTHONPATH to build
-    dir when running tests.
-
- -- Chuck Short <zulcss@ubuntu.com>  Sat, 07 Sep 2013 15:58:58 -0400
-
-ceilometer (2013.2~b2-0ubuntu4) saucy; urgency=low
-
-  * debian/patches/skip-database-tests.patch: Refreshed due to precise failures. 
-
- -- Chuck Short <zulcss@ubuntu.com>  Sun, 28 Jul 2013 21:58:31 -0400
-
-ceilometer (2013.2~b2-0ubuntu3) saucy; urgency=low
-
-  * debian/rules: Enable testsuite.
-  * debian/control: Fix up run time dependencies.
-  * debian/patches/fix-setup-requirements.patch: Refreshed
-  * debian/patches/skip-database-tests.patch: Refreshed
-
- -- Chuck Short <zulcss@ubuntu.com>  Mon, 22 Jul 2013 15:17:35 -0400
-
-ceilometer (2013.2~b2-0ubuntu2) saucy; urgency=low
-
-  * debian/control: Fix sqlalchemy dependency. 
-
- -- Chuck Short <zulcss@ubuntu.com>  Fri, 19 Jul 2013 14:51:18 -0400
-
-ceilometer (2013.2~b2-0ubuntu1) saucy; urgency=low
-
-  [ Yolanda Robla ]
-  * debian/patches/default-dbconnection-sqlite.patch: updated db section
-
-  [ Chuck Short ]
-  * New upstream version.
-  * debian/patches/default-dbconnection-sqlite.patch: Refreshed.
-  * debian/control: Bump requirements for stevedore to 0.9.
-  * debian/control: Add python-simplejson
-  * debian/control: Drop python-keystoneclient hardcoded version.
-  * debian/control: Add python-testscenarios as a build depends.
-  * debian/control: Add python-cinderclient as a build depends.
-  * debian/control: Add python-ceilometerclient as a build depends.
-  * debian/control: Add python-alembic as build depends.
-  * debian/control: Add python-oslo.sphinx as build-depends.
-  * debian/control: Update runtime depends.
-  * debian/control: Add python-happybase.
-  * debian/ceilometer-common.install: Add ceilometer-alarm-singleton,
-    ceilometer-alarm-notifier, and ceilometer-expirer.
-  * debian/patches/skip-database-tests.patch: Skip database tests
-    if the database is not installed.
-
-  [ James Page ]
-  * d/control: Update VCS fields for new branch locations.
-
- -- Chuck Short <zulcss@ubuntu.com>  Fri, 19 Jul 2013 10:04:36 -0400
-
-ceilometer (2013.2~b1-0ubuntu1) saucy; urgency=low
-
-  * New upstream release.
-  * debian/rules: Add fail-missing if binaries are missing 
-    from the packages.
-  * debian/control: Add python-happybase as build-dependencies.
-  * debian/control: Add python-pbr and python-d2to1 as build-dependencies
-  * debian/control: Add python-fixtures as build-dependencies.
-  * debian/control: Add python-nova as build-dependencies.
-  * debian/control: Add python-testtools
-  * debian/control: Add msgpack-python.
-  * debian/patches/requests-dep.patch: Dropped no longer needed.
-  * debian/patches/remove-hbase-support.patch: Dropped no longer neded.
-  * debian/patches/default-dbconnection-sqlite.patch: Refreshed.
-  * debian/rules: Use testr instead of nosetests to run tests.
-  * debian/ceilometer-collector.install: Added usr/bin/ceilometer-collector-udp.
-
- -- Chuck Short <zulcss@ubuntu.com>  Fri, 31 May 2013 10:29:16 -0500
-
-ceilometer (2013.1-0ubuntu1) raring; urgency=low
-
-  * New upstream release. 
-
- -- Chuck Short <zulcss@ubuntu.com>  Fri, 05 Apr 2013 14:34:37 -0500
-
-ceilometer (2013.1~rc1-0ubuntu1) raring; urgency=low
-
-  [ Chuck Short ]
-  * New upstream release. 
-  * debian/watch: point to the right releases.
-  * debian/rules: Enable testsuite.
-  * debian/ceilometer-agent-compute.postinst: Add smarts to 
-    configure users after install.
-  * debian/ceilometer-common.postinst: Configure ceilometer db.
-  * debian/ceilometer-common.install: Install configuration files.
-  * debian/*.upstart: Update and use start-stop-daemon.
-
-  [ James Page ]
-  * Added watch file.
-  * d/rules: Fixup test suite execution as much as possible:
-    - Set PYTHONPATH to CURDIR during execution.
-    - Provide HOME directory for keystone tests.
-    - Override clean to tidy up after execution.
-  * d/control: Tidied BD's:
-    - Drop python-ming (not the right ming).
-    - python-oslo-config -> python-oslo.config.
-    - Dropped misc other surplus/duplicate dependencies.
-    - Wrapped and sorted.
-  * d/p/request-dep.patch: Remove upper bound on python-requests inline with
-    the rest of OpenStack.
-  * d/p/remove-hbase-support.patch: Remove happybase dependency.
-  * d/control: Bumped Standards-Version, no changes.
-
-  [ Yolanda Robla ]
-  * d/rules: Copy ceilometer.conf.sample to ceilometer.conf.
-  * d/ceilometer-common.install: Install ceilometer.conf and ceilometer-dbsync.
-  * d/ceilometer-common.postinst: fixing user/group creation.
-  * d/*.upstart: Fix upstart jobs.
-  * d/pydist-overrides: Correct pymongo and wsme package names.
-  * d/control: modified mongodb recommends to suggests (LP: #1131627).
-  * d/files: copying pipeline.yaml.
-  * d/control: fixed typo (LP: #1140309).
-  * d/patches/default-dbconnection-sqlite.patch: default db to sqlite
-
- -- Chuck Short <zulcss@ubuntu.com>  Tue, 26 Mar 2013 11:23:03 -0500
-
-ceilometer (0.1-0ubuntu2) raring; urgency=low
-
-  * Fix typo in debian/control (ceioleter -> ceilometer) (LP: #1140309)
-
- -- Hans Joachim Desserud <ubuntu@desserud.org>  Sun, 03 Mar 2013 20:08:39 +0100
-
-ceilometer (0.1-0ubuntu1) quantal; urgency=low
-
-  * New upstream release.
-
- -- Chuck Short <zulcss@ubuntu.com>  Fri, 12 Oct 2012 09:34:05 -0500
-
-ceilometer (0~20121002-0ubuntu2) quantal; urgency=low
-
-  * Fix two typos in dependencies in debian/control (LP: #1063244)
-
- -- Adam Conrad <adconrad@ubuntu.com>  Sun, 07 Oct 2012 07:49:55 -0600
-
-ceilometer (0~20121002-0ubuntu1) quantal; urgency=low
-
-  * Initial release.
-
- -- Chuck Short <zulcss@ubuntu.com>  Wed, 03 Oct 2012 13:00:29 -0500
diff --git a/debian/patches/default-config.patch b/debian/patches/default-config.patch
deleted file mode 100644 (file)
index a64ff21..0000000
+++ /dev/null
@@ -1,20 +0,0 @@
---- etc/ceilometer/ceilometer.conf.sample      2014-10-09 17:27:51.497651569 +0100
-+++ etc/ceilometer/ceilometer.conf.sample.ubuntu       2014-10-09 17:27:31.565650862 +0100
-@@ -472,6 +472,7 @@
- # paths. (string value)
- # Deprecated group/name - [DEFAULT]/logdir
- #log_dir=<None>
-+log_dir=/var/log/ceilometer
- # Use syslog for logging. Existing syslog format is DEPRECATED
- # during I, and will change in J to honor RFC5424. (boolean
-@@ -714,6 +715,9 @@
- # (if unset, connection is used) (string value)
- #alarm_connection=<None>
-+# Provide backwards compatible default for both alarm and metering
-+connection=sqlite:////var/lib/ceilometer/ceilometer.sqlite
-+
- [dispatcher_file]
diff --git a/debian/patches/series b/debian/patches/series
deleted file mode 100644 (file)
index 44cee38..0000000
+++ /dev/null
@@ -1 +0,0 @@
-skip-db-tests.patch
diff --git a/debian/pydist-overrides b/debian/pydist-overrides
deleted file mode 100644 (file)
index 4cd03a7..0000000
+++ /dev/null
@@ -1,3 +0,0 @@
-pymongo python-pymongo
-happybase
-pysnmp
diff --git a/debian/watch b/debian/watch
deleted file mode 100755 (executable)
index 75204bb..0000000
+++ /dev/null
@@ -1,3 +0,0 @@
-version=3
-opts="uversionmangle=s/\.([a-zA-Z])/~$1/;s/%7E/~/;s/\.0b/~b/" \
- http://tarballs.openstack.org/ceilometer ceilometer-(\d.*)\.tar\.gz
diff --git a/rpm/SOURCES/openstack-ceilometer-polling.init b/rpm/SOURCES/openstack-ceilometer-polling.init
new file mode 100644 (file)
index 0000000..c4caa85
--- /dev/null
@@ -0,0 +1,103 @@
+#!/bin/sh
+#
+# openstack-ceilometer-polling  OpenStack ceilometer polling agent
+#
+# chkconfig:   - 98 02
+# description: OpenStack measurement and collection service polling agent
+
+### BEGIN INIT INFO
+# Provides:
+# Required-Start: $remote_fs $network $syslog
+# Required-Stop: $remote_fs $syslog
+# Default-Stop: 0 1 6
+# Short-Description: OpenStack ceilometer polling agent
+# Description: OpenStack measurement and collection service polling agent
+### END INIT INFO
+
+. /etc/rc.d/init.d/functions
+
+suffix=polling
+prog=openstack-ceilometer-$suffix
+exec="/usr/bin/ceilometer-$suffix"
+config="/etc/ceilometer/ceilometer.conf"
+pidfile="/var/run/ceilometer/ceilometer-$suffix.pid"
+logfile="/var/log/ceilometer/$suffix.log"
+
+[ -e /etc/sysconfig/$prog ] && . /etc/sysconfig/$prog
+
+lockfile=/var/lock/subsys/$prog
+
+start() {
+    [ -x $exec ] || exit 5
+    [ -f $config ] || exit 6
+    echo -n $"Starting $prog: "
+    daemon --user ceilometer --pidfile $pidfile "$exec --logfile $logfile ${OPTIONS} &>/dev/null & echo \$! > $pidfile"
+    retval=$?
+    echo
+    [ $retval -eq 0 ] && touch $lockfile
+    return $retval
+}
+
+stop() {
+    echo -n $"Stopping $prog: "
+    killproc -p $pidfile $prog
+    retval=$?
+    echo
+    [ $retval -eq 0 ] && rm -f $lockfile
+    return $retval
+}
+
+restart() {
+    stop
+    start
+}
+
+reload() {
+    restart
+}
+
+force_reload() {
+    restart
+}
+
+rh_status() {
+    status -p $pidfile $prog
+}
+
+rh_status_q() {
+    rh_status >/dev/null 2>&1
+}
+
+
+case "$1" in
+    start)
+        rh_status_q && exit 0
+        $1
+        ;;
+    stop)
+        rh_status_q || exit 0
+        $1
+        ;;
+    restart)
+        $1
+        ;;
+    reload)
+        rh_status_q || exit 7
+        $1
+        ;;
+    force-reload)
+        force_reload
+        ;;
+    status)
+        rh_status
+        ;;
+    condrestart|try-restart)
+        rh_status_q || exit 0
+        restart
+        ;;
+    *)
+        echo $"Usage: $0 {start|stop|status|restart|condrestart|try-restart|reload|force-reload}"
+        exit 2
+esac
+exit $?
+
diff --git a/rpm/SOURCES/openstack-ceilometer-polling.service b/rpm/SOURCES/openstack-ceilometer-polling.service
new file mode 100644 (file)
index 0000000..d51ef57
--- /dev/null
@@ -0,0 +1,13 @@
+[Unit]
+Description=OpenStack ceilometer polling agent
+After=syslog.target network.target
+
+[Service]
+Type=simple
+User=ceilometer
+EnvironmentFile=/etc/sysconfig/openstack-ceilometer-polling
+ExecStart=/usr/bin/ceilometer-polling --logfile /var/log/ceilometer/polling.log $OPTIONS
+
+[Install]
+WantedBy=multi-user.target
+
diff --git a/rpm/SOURCES/openstack-ceilometer-polling.upstart b/rpm/SOURCES/openstack-ceilometer-polling.upstart
new file mode 100644 (file)
index 0000000..0f79f69
--- /dev/null
@@ -0,0 +1,10 @@
+description "OpenStack Ceilometer polling agent"
+
+start on stopped rc RUNLEVEL=[2345]
+stop on runlevel [S016]
+
+respawn
+
+[ -e /etc/sysconfig/openstack-ceilometer-polling ] && . /etc/sysconfig/openstack-ceilometer-polling
+
+exec su -s /bin/sh -c "exec /usr/bin/ceilometer-polling --logfile /var/log/ceilometer/polling.log ${OPTIONS}" ceilometer
index 6b77df569fd6ef8c1894f2a5d50eaeffe2bfb8c1..89f23cf70a946ac9377104e0f78bc4e43ac86e63 100644 (file)
@@ -3,7 +3,7 @@
 %global pypi_name ceilometer
 
 Name:             openstack-ceilometer
 %global pypi_name ceilometer
 
 Name:             openstack-ceilometer
-Version:          2015.1.0b1
+Version:          2015.1.0
 Release:          2%{?dist}
 Summary:          OpenStack measurement collection service
 
 Release:          2%{?dist}
 Summary:          OpenStack measurement collection service
 
@@ -32,6 +32,8 @@ Source16:         %{name}-notification.init
 Source160:        %{name}-notification.upstart
 Source17:         %{name}-ipmi.init
 Source170:        %{name}-ipmi.upstart
 Source160:        %{name}-notification.upstart
 Source17:         %{name}-ipmi.init
 Source170:        %{name}-ipmi.upstart
+Source18:         %{name}-polling.init
+Source180:        %{name}-polling.upstart
 %else
 Source10:         %{name}-api.service
 Source11:         %{name}-collector.service
 %else
 Source10:         %{name}-api.service
 Source11:         %{name}-collector.service
@@ -41,6 +43,7 @@ Source14:         %{name}-alarm-notifier.service
 Source15:         %{name}-alarm-evaluator.service
 Source16:         %{name}-notification.service
 Source17:         %{name}-ipmi.service
 Source15:         %{name}-alarm-evaluator.service
 Source16:         %{name}-notification.service
 Source17:         %{name}-ipmi.service
+Source18:         %{name}-polling.service
 %endif
 
 #
 %endif
 
 #
@@ -51,20 +54,20 @@ BuildArch:        noarch
 BuildRequires:    intltool
 BuildRequires:    python-sphinx10
 BuildRequires:    python-setuptools
 BuildRequires:    intltool
 BuildRequires:    python-sphinx10
 BuildRequires:    python-setuptools
-BuildRequires:    python-pbr
+BuildRequires:    python-pbr >= 0.10
 BuildRequires:    python-d2to1
 BuildRequires:    python2-devel
 BuildRequires:    openstack-utils
 
 # These are required to generate ceilometer configuration file
 BuildRequires:    python-tox
 BuildRequires:    python-d2to1
 BuildRequires:    python2-devel
 BuildRequires:    openstack-utils
 
 # These are required to generate ceilometer configuration file
 BuildRequires:    python-tox
-BuildRequires:    python-oslo-db
-BuildRequires:    python-oslo-messaging
-BuildRequires:    python-keystonemiddleware
+BuildRequires:    python-oslo-db >= 1.7.0
+BuildRequires:    python-oslo-messaging >= 1.8.0
+BuildRequires:    python-keystonemiddleware >= 1.5.0
 
 # These are required to build due to the requirements check added
 
 # These are required to build due to the requirements check added
-BuildRequires:    python-sqlalchemy
-BuildRequires:    python-webob
+BuildRequires:    python-sqlalchemy >= 0.9.7
+BuildRequires:    python-webob >= 1.2.3
 
 %if ! (0%{?rhel} && 0%{?rhel} <= 6)
 BuildRequires: systemd-units
 
 %if ! (0%{?rhel} && 0%{?rhel} <= 6)
 BuildRequires: systemd-units
@@ -79,67 +82,53 @@ collect metrics from OpenStack components.
 Summary:          OpenStack ceilometer python libraries
 Group:            Applications/System
 
 Summary:          OpenStack ceilometer python libraries
 Group:            Applications/System
 
-Requires:         python-retrying >= 1.2.2, python-retrying < 1.3.0, python-retrying > 1.3.0
-Requires:         python-qpid
-
-Requires:         python-babel
-Requires:         python-eventlet >= 0.15.2
+Requires:         python-alembic >= 0.7.2
+Requires:         python-ceilometerclient >= 1.0.13
+Requires:         python-croniter >= 0.3.4
+Requires:         python-eventlet >= 0.16.1
+Requires:         python-flask >= 0.10
+Requires:         python-glanceclient >= 1:0.15.0
 Requires:         python-iso8601 >= 0.1.9
 Requires:         python-iso8601 >= 0.1.9
+Requires:         python-jsonpath-rw >= 1.2.0
+Requires:         python-jsonschema >= 2.0.0
+Requires:         python-kafka >= 0.9.2
+Requires:         python-keystoneclient >= 1.1.0
+Requires:         python-keystonemiddleware >= 1.5.0
 Requires:         python-lxml >= 2.3
 Requires:         python-lxml >= 2.3
-Requires:         python-anyjson >= 0.3.3
-Requires:         python-jsonpath-rw >= 1.2.0, python-jsonpath-rw < 2.0
-Requires:         python-stevedore >= 1.1.0
+Requires:         python-migrate >= 0.9.5
 Requires:         python-msgpack >= 0.4.0
 Requires:         python-msgpack >= 0.4.0
-Requires:         python-posix_ipc
-Requires:         python-six >= 1.7.0
-Requires:         PyYAML >= 3.1.0
-Requires:         python-sqlalchemy >= 0.8.4, python-sqlalchemy <= 0.8.99, python-sqlalchemy >= 0.9.7, python-sqlalchemy <= 0.9.99
-
-Requires:         python-argparse
-Requires:         python-happybase >= 0.5, python-happybase < 0.7, python-happybase > 0.7
-Requires:         python-jsonschema >= 2.0.0, python-jsonschema < 3.0.0
-Requires:         python-lockfile >= 0.8
-Requires:         python-netaddr >= 0.7.12
-Requires:         python-pbr >= 0.6, python-pbr < 0.7, python-pbr > 0.7, python-pbr < 1.0
-Requires:         python-requests >= 2.2.0, python-requests < 2.4.0, python-requests > 2.4.0
-Requires:         python-tooz >= 0.3
-
-Requires:         python-alembic >= 0.6.4
-Requires:         python-migrate >= 0.9.1, python-migrate < 0.9.2, python-migrate > 0.9.2
-
-Requires:         python-webob >= 1.2.3
-
-Requires:         python-oslo-concurrency >= 0.4.0
-Requires:         python-oslo-config >= 1:1.4.0
-Requires:         python-oslo-db >= 1.0.0
-Requires:         python-oslo-rootwrap >= 1.3.0
-Requires:         python-oslo-vmware >= 0.6.0
-Requires:         python-oslo-utils >= 1.0.0
-Requires:         python-oslo-messaging >= 1.4.0
-Requires:         python-oslo-serialization >= 1.0.0
-Requires:         python-oslo-middleware >= 0.1.0
-
-Requires:         pysnmp > 4.2.1, pysnmp < 5.0.0
-Requires:         pytz
-Requires:         python-croniter >= 0.3.4
-
-Requires:         python-keystonemiddleware >= 1.0.0
+Requires:         python-neutronclient >= 2.3.11
+Requires:         python-novaclient >= 1:2.22.0
+Requires:         python-oslo-concurrency >= 1.8.0
+Requires:         python-oslo-config >= 1:1.9.3
+Requires:         python-oslo-context >= 0.2.0
+Requires:         python-oslo-db >= 1.7.0
+Requires:         python-oslo-i18n >= 1.5.0
+Requires:         python-oslo-messaging >= 1.8.0
+Requires:         python-oslo-middleware >= 1.0.0
+Requires:         python-oslo-policy >= 0.3.1
+Requires:         python-oslo-rootwrap >= 1.6.0
+Requires:         python-oslo-serialization >= 1.4.0
+Requires:         python-oslo.utils >= 1.4.0
 Requires:         python-paste-deploy >= 1.5.0
 Requires:         python-paste-deploy >= 1.5.0
-
-# These were only added as global dependencies
-# at the end of the Icehouse cycle with the change
-# to cli.py referenced from in http://pad.lv/1317210
-Requires:         python-pymongo
-Requires:         python-flask
-Requires:         python-pecan >= 0.5.0
-Requires:         python-wsme >= 0.6
-Requires:         python-neutronclient >= 2.3.6
-Requires:         python-novaclient >= 2.18.0
-Requires:         python-keystoneclient >= 0.11.1
-Requires:         python-glanceclient >= 0.14.0
+Requires:         python-pbr >= 0.10
+Requires:         python-pecan >= 0.8.0
+Requires:         python-posix_ipc
+Requires:         python-pymongo >= 2.6.3
+Requires:         python-pysnmp >= 4.2.1
+Requires:         pytz >= 2013.6
+Requires:         python-qpid
+Requires:         python-requests >= 2.2.0
+Requires:         python-retrying >= 1.2.3
+Requires:         python-six >= 1.9.0
+Requires:         python-sqlalchemy >= 0.9.7
+Requires:         python-stevedore >= 1.3.0
 Requires:         python-swiftclient >= 2.2.0
 Requires:         python-swiftclient >= 2.2.0
-Requires:         python-ceilometerclient >= 1.0.6
-Requires:         libvirt-python
+Requires:         python-tooz >= 0.13.1
+Requires:         python-werkzeug >= 0.7
+Requires:         python-webob >= 1.2.3
+Requires:         python-wsme >= 0.8
+Requires:         PyYAML >= 3.1.0
 
 %description -n   python-ceilometer
 OpenStack ceilometer provides services to measure and
 
 %description -n   python-ceilometer
 OpenStack ceilometer provides services to measure and
@@ -180,9 +169,9 @@ Group:            Applications/System
 
 Requires:         %{name}-common = %{version}-%{release}
 
 
 Requires:         %{name}-common = %{version}-%{release}
 
-Requires:         python-novaclient >= 2.18.0
-Requires:         python-keystoneclient >= 0.11.1
 Requires:         libvirt-python
 Requires:         libvirt-python
+Requires:         python-keystoneclient >= 1.1.0
+Requires:         python-novaclient >= 2.22.0
 
 %description compute
 OpenStack ceilometer provides services to measure and
 
 %description compute
 OpenStack ceilometer provides services to measure and
@@ -198,9 +187,9 @@ Group:            Applications/System
 
 Requires:         %{name}-common = %{version}-%{release}
 
 
 Requires:         %{name}-common = %{version}-%{release}
 
-Requires:         python-novaclient >= 2.18.0
-Requires:         python-keystoneclient >= 0.11.1
-Requires:         python-glanceclient >= 0.14.0
+Requires:         python-glanceclient >= 0.15.0
+Requires:         python-keystoneclient >= 1.1.0
+Requires:         python-novaclient >= 2.22.0
 Requires:         python-swiftclient >= 2.2.0
 
 %description central
 Requires:         python-swiftclient >= 2.2.0
 
 %description central
@@ -218,9 +207,8 @@ Requires:         %{name}-common = %{version}-%{release}
 
 # For compat with older provisioning tools.
 # Remove when all reference the notification package explicitly
 
 # For compat with older provisioning tools.
 # Remove when all reference the notification package explicitly
-Requires:         %{name}-notification
-
-Requires:         python-pymongo
+Requires:         %{name}-notification = %{version}-%{release}
+Requires:         python-pymongo >= 2.6.3
 
 %description collector
 OpenStack ceilometer provides services to measure and
 
 %description collector
 OpenStack ceilometer provides services to measure and
@@ -251,13 +239,13 @@ Group:            Applications/System
 
 Requires:         %{name}-common = %{version}-%{release}
 
 
 Requires:         %{name}-common = %{version}-%{release}
 
-Requires:         python-keystonemiddleware
-Requires:         python-oslo-db
-Requires:         python-pymongo
-Requires:         python-flask
+Requires:         python-flask >= 0.10
+Requires:         python-keystonemiddleware >= 1.5.0
+Requires:         python-oslo-db >= 1.7.0
+Requires:         python-paste-deploy >= 1.5.0
+Requires:         python-pecan >= 0.8.0
+Requires:         python-pymongo >= 2.6.3
 Requires:         python-wsme >= 0.6
 Requires:         python-wsme >= 0.6
-Requires:         python-pecan >= 0.5.0
-Requires:         python-paste-deploy
 
 %description api
 OpenStack ceilometer provides services to measure and
 
 %description api
 OpenStack ceilometer provides services to measure and
@@ -271,7 +259,7 @@ Summary:          OpenStack ceilometer alarm services
 Group:            Applications/System
 
 Requires:         %{name}-common = %{version}-%{release}
 Group:            Applications/System
 
 Requires:         %{name}-common = %{version}-%{release}
-Requires:         python-ceilometerclient >= 1.0.6
+Requires:         python-ceilometerclient >= 1.0.13
 
 %description alarm
 OpenStack ceilometer provides services to measure and
 
 %description alarm
 OpenStack ceilometer provides services to measure and
@@ -287,12 +275,12 @@ Group:            Applications/System
 
 Requires:         %{name}-common = %{version}-%{release}
 
 
 Requires:         %{name}-common = %{version}-%{release}
 
-Requires:         python-novaclient
-Requires:         python-keystoneclient
-Requires:         python-neutronclient
-Requires:         python-tooz
-Requires:         python-oslo-rootwrap
 Requires:         ipmitool
 Requires:         ipmitool
+Requires:         python-keystoneclient >= 1.1.0
+Requires:         python-neutronclient >= 2.3.11
+Requires:         python-novaclient >= 2.22.0
+Requires:         python-oslo-rootwrap >= 1.6.0
+Requires:         python-tooz >= 0.13.1
 
 %description ipmi
 OpenStack ceilometer provides services to measure and
 
 %description ipmi
 OpenStack ceilometer provides services to measure and
@@ -303,17 +291,41 @@ nodes from which IPMI sensor data is to be collected directly,
 by-passing Ironic's management of baremetal.
 
 
 by-passing Ironic's management of baremetal.
 
 
+%package polling
+Summary:          OpenStack ceilometer polling agent
+Group:            Applications/System
+
+Requires:         %{name}-common = %{version}-%{release}
+
+Requires:         libvirt-python
+Requires:         python-glanceclient >= 0.15.0
+Requires:         python-keystoneclient >= 1.1.0
+Requires:         python-novaclient >= 2.22.0
+Requires:         python-swiftclient >= 2.2.0
+
+%description polling
+Ceilometer aims to deliver a unique point of contact for billing systems to
+aquire all counters they need to establish customer billing, across all
+current and future OpenStack components. The delivery of counters must
+be tracable and auditable, the counters must be easily extensible to support
+new projects, and agents doing data collections should be
+independent of the overall system.
+
+This package contains the polling service.
+
+
 %if 0%{?with_doc}
 %package doc
 Summary:          Documentation for OpenStack ceilometer
 Group:            Documentation
 
 # Required to build module documents
 %if 0%{?with_doc}
 %package doc
 Summary:          Documentation for OpenStack ceilometer
 Group:            Documentation
 
 # Required to build module documents
-BuildRequires:    python-eventlet
-BuildRequires:    python-sqlalchemy0.7
-BuildRequires:    python-webob
+BuildRequires:    python-eventlet >= 0.16.1
+BuildRequires:    python-sqlalchemy >= 0.9.7
+BuildRequires:    python-webob >= 1.2.3
 # while not strictly required, quiets the build down when building docs.
 # while not strictly required, quiets the build down when building docs.
-BuildRequires:    python-migrate, python-iso8601
+BuildRequires:    python-migrate >= 0.9.5
+BuildRequires:    python-iso8601 >= 0.1.9
 
 %description      doc
 OpenStack ceilometer provides services to measure and
 
 %description      doc
 OpenStack ceilometer provides services to measure and
@@ -391,6 +403,7 @@ install -p -D -m 755 %{SOURCE14} %{buildroot}%{_initrddir}/%{name}-alarm-notifie
 install -p -D -m 755 %{SOURCE15} %{buildroot}%{_initrddir}/%{name}-alarm-evaluator
 install -p -D -m 755 %{SOURCE16} %{buildroot}%{_initrddir}/%{name}-notification
 install -p -D -m 755 %{SOURCE17} %{buildroot}%{_initrddir}/%{name}-ipmi
 install -p -D -m 755 %{SOURCE15} %{buildroot}%{_initrddir}/%{name}-alarm-evaluator
 install -p -D -m 755 %{SOURCE16} %{buildroot}%{_initrddir}/%{name}-notification
 install -p -D -m 755 %{SOURCE17} %{buildroot}%{_initrddir}/%{name}-ipmi
+install -p -D -m 755 %{SOURCE18} %{buildroot}%{_initrddir}/%{name}-polling
 
 # Install upstart jobs examples
 install -d -m 755 %{buildroot}%{_datadir}/ceilometer
 
 # Install upstart jobs examples
 install -d -m 755 %{buildroot}%{_datadir}/ceilometer
@@ -402,6 +415,7 @@ install -p -m 644 %{SOURCE140} %{buildroot}%{_datadir}/ceilometer/
 install -p -m 644 %{SOURCE150} %{buildroot}%{_datadir}/ceilometer/
 install -p -m 644 %{SOURCE160} %{buildroot}%{_datadir}/ceilometer/
 install -p -m 644 %{SOURCE170} %{buildroot}%{_datadir}/ceilometer/
 install -p -m 644 %{SOURCE150} %{buildroot}%{_datadir}/ceilometer/
 install -p -m 644 %{SOURCE160} %{buildroot}%{_datadir}/ceilometer/
 install -p -m 644 %{SOURCE170} %{buildroot}%{_datadir}/ceilometer/
+install -p -m 644 %{SOURCE180} %{buildroot}%{_datadir}/ceilometer/
 %else
 install -p -D -m 644 %{SOURCE10} %{buildroot}%{_unitdir}/%{name}-api.service
 install -p -D -m 644 %{SOURCE11} %{buildroot}%{_unitdir}/%{name}-collector.service
 %else
 install -p -D -m 644 %{SOURCE10} %{buildroot}%{_unitdir}/%{name}-api.service
 install -p -D -m 644 %{SOURCE11} %{buildroot}%{_unitdir}/%{name}-collector.service
@@ -411,6 +425,7 @@ install -p -D -m 644 %{SOURCE14} %{buildroot}%{_unitdir}/%{name}-alarm-notifier.
 install -p -D -m 644 %{SOURCE15} %{buildroot}%{_unitdir}/%{name}-alarm-evaluator.service
 install -p -D -m 644 %{SOURCE16} %{buildroot}%{_unitdir}/%{name}-notification.service
 install -p -D -m 644 %{SOURCE17} %{buildroot}%{_unitdir}/%{name}-ipmi.service
 install -p -D -m 644 %{SOURCE15} %{buildroot}%{_unitdir}/%{name}-alarm-evaluator.service
 install -p -D -m 644 %{SOURCE16} %{buildroot}%{_unitdir}/%{name}-notification.service
 install -p -D -m 644 %{SOURCE17} %{buildroot}%{_unitdir}/%{name}-ipmi.service
+install -p -D -m 644 %{SOURCE18} %{buildroot}%{_unitdir}/%{name}-polling.service
 %endif
 
 # Install logrotate
 %endif
 
 # Install logrotate
@@ -509,6 +524,16 @@ fi
 %systemd_post %{name}-alarm-ipmi.service
 %endif
 
 %systemd_post %{name}-alarm-ipmi.service
 %endif
 
+%post polling
+%if 0%{?rhel} && 0%{?rhel} <= 6
+if [ $1 -eq 1 ] ; then
+    # Initial installation
+    /sbin/chkconfig --add %{name}-polling
+fi
+%else
+%systemd_post %{name}-polling.service
+%endif
+
 %preun compute
 %if 0%{?rhel} && 0%{?rhel} <= 6
 if [ $1 -eq 0 ] ; then
 %preun compute
 %if 0%{?rhel} && 0%{?rhel} <= 6
 if [ $1 -eq 0 ] ; then
@@ -594,6 +619,18 @@ fi
 %systemd_preun %{name}-ipmi.service
 %endif
 
 %systemd_preun %{name}-ipmi.service
 %endif
 
+%preun polling
+%if 0%{?rhel} && 0%{?rhel} <= 6
+if [ $1 -eq 0 ] ; then
+    for svc in polling; do
+        /sbin/service %{name}-${svc} stop > /dev/null 2>&1
+        /sbin/chkconfig --del %{name}-${svc}
+    done
+fi
+%else
+%systemd_preun %{name}-polling.service
+%endif
+
 %postun compute
 %if 0%{?rhel} && 0%{?rhel} <= 6
 if [ $1 -ge 1 ] ; then
 %postun compute
 %if 0%{?rhel} && 0%{?rhel} <= 6
 if [ $1 -ge 1 ] ; then
@@ -679,6 +716,18 @@ fi
 %systemd_postun_with_restart %{name}-ipmi.service
 %endif
 
 %systemd_postun_with_restart %{name}-ipmi.service
 %endif
 
+%postun polling
+%if 0%{?rhel} && 0%{?rhel} <= 6
+if [ $1 -ge 1 ] ; then
+    # Package upgrade, not uninstall
+    for svc in polling; do
+        /sbin/service %{name}-${svc} condrestart > /dev/null 2>&1 || :
+    done
+fi
+%else
+%systemd_postun_with_restart %{name}-polling.service
+%endif
+
 %files common
 %doc LICENSE
 %dir %{_sysconfdir}/ceilometer
 %files common
 %doc LICENSE
 %dir %{_sysconfdir}/ceilometer
@@ -698,7 +747,6 @@ fi
 %{_bindir}/ceilometer-dbsync
 %{_bindir}/ceilometer-expirer
 %{_bindir}/ceilometer-send-sample
 %{_bindir}/ceilometer-dbsync
 %{_bindir}/ceilometer-expirer
 %{_bindir}/ceilometer-send-sample
-%{_bindir}/ceilometer-polling
 
 
 %defattr(-, ceilometer, ceilometer, -)
 
 
 %defattr(-, ceilometer, ceilometer, -)
@@ -781,6 +829,16 @@ fi
 %endif
 
 
 %endif
 
 
+%files polling
+%{_bindir}/ceilometer-polling
+%if 0%{?rhel} && 0%{?rhel} <= 6
+%{_initrddir}/%{name}-polling
+%{_datarootdir}/ceilometer/%{name}-polling.upstart
+%else
+%{_unitdir}/%{name}-polling.service
+%endif
+
+
 %files alarm
 %{_bindir}/ceilometer-alarm-notifier
 %{_bindir}/ceilometer-alarm-evaluator
 %files alarm
 %{_bindir}/ceilometer-alarm-notifier
 %{_bindir}/ceilometer-alarm-evaluator
@@ -796,6 +854,10 @@ fi
 
 
 %changelog
 
 
 %changelog
+* Fri Jan 23 2015 Ivan Berezovskiy <iberezovskiy@mirantis.com> - 2015.1.0
+- Create own package for polling agent
+- Update requirements and version to 2015.1.0
+
 * Wed Jan 21 2015 Ivan Berezovskiy <iberezovskiy@mirantis.com> - 2015.1.0b1
 - Update version to 2015.1.0b1
 
 * Wed Jan 21 2015 Ivan Berezovskiy <iberezovskiy@mirantis.com> - 2015.1.0b1
 - Update version to 2015.1.0b1
 
@@ -889,3 +951,4 @@ fi
 
 * Tue Mar 26 2013 Pádraig Brady <P@draigBrady.com> - 2013.1-0.5.g3
 - Initial package
 
 * Tue Mar 26 2013 Pádraig Brady <P@draigBrady.com> - 2013.1-0.5.g3
 - Initial package
+
index 50dd9f67c1851562c38158c15f42abd911fc7b3a..b202f0aeacf0e8bf379fd6c731a5111a20e33b49 100755 (executable)
-#!/bin/bash -x
+#!/bin/bash
 
 
+set -eux
+
+package_to_test=${1}
 RES=0
 
 RES=0
 
-package=$1
+mysql_pass="admin"
+token=$(openssl rand -hex 10)
+auth_string="--os-auth-url http://127.0.0.1:35357 --os-token ${token} --os-endpoint http://127.0.0.1:35357/v2.0/"
+ceilometer_auth_string="--os-username ceilometer --os-password ceilometer --os-tenant-name ceilometer --os-auth-url http://127.0.0.1:35357/v2.0"
+ceilometer_service=
+
+keystone_log_file="/var/log/keystone/keystone.log"
+ceilometer_log_dir="/var/log/ceilometer"
+mongodb_log="/var/log/mongodb/mongodb.log"
+
+if [[ `cat /etc/*-release | head -n 1 | awk '{print $1}'` =~ Ubuntu ]]; then
+   os="ubuntu"
+   packages_list="python-pip curl"
+   command_to_install="apt-get install -y --force-yes"
+   keystone_package="keystone"
+   keystone_service="keystone"
+   mysql_service="mysql"
+   mongodb_service="mongodb"
+   ceilometer_packages_and_services=(
+      ceilometer-agent-central
+      ceilometer-agent-compute
+      ceilometer-collector
+      ceilometer-agent-notification
+      ceilometer-polling
+      ceilometer-api
+      ceilometer-alarm-notifier
+      ceilometer-alarm-evaluator
+   )
+else
+   echo "Disable tests for Centos"
+   exit 0
+   os="centos"
+   packages_list="python-pip curl"
+   command_to_install="yum install -y"
+   keystone_package="openstack-keystone"
+   keystone_service="openstack-keystone"
+   mysql_service="mysqld"
+   mongodb_service="mongod"
+   ceilometer_packages_and_services=(
+      openstack-ceilometer-central
+      openstack-ceilometer-compute
+      openstack-ceilometer-collector
+      openstack-ceilometer-notification
+      openstack-ceilometer-polling
+      openstack-ceilometer-api
+      openstack-ceilometer-alarm
+   )
+fi
+
+ceilometer_binaries=(
+   ceilometer-agent-central
+   ceilometer-agent-compute
+   ceilometer-collector
+   ceilometer-agent-notification
+   ceilometer-polling
+   ceilometer-api
+   ceilometer-alarm-notifier
+   ceilometer-alarm-evaluator
+   ceilometer-dbsync
+   ceilometer-expirer
+   ceilometer-rootwrap
+   ceilometer-send-sample
+)
+
+config_files=(
+   api_paste.ini
+   ceilometer.conf
+   deprecated_pipeline.yaml
+   event_definitions.yaml
+   event_pipeline.yaml
+   gabbi_pipeline.yaml
+   pipeline.yaml
+   policy.json
+   rootwrap.conf
+)
+
+list_commands=(
+   alarm-list
+   event-list
+   meter-list
+   resource-list
+   sample-list
+)
+
+install_packages() {
+   ${command_to_install} $@
+}
 
 
-prepare_script() {
-   echo '#!/usr/bin/env python
-import pika
-connection = pika.BlockingConnection(pika.ConnectionParameters(host="127.0.0.1"))
-channel = connection.channel()
-channel.queue_declare(queue="notifications.info")
-test=r'"'"'{"event_type": "compute.instance.update", "_unique_id": "fake", "payload": {"ephemeral_gb": 0, "instance_id": "fake", "user_id": "fake", "root_gb": 0, "tenant_id": "fake", "memory_mb": 64, "vcpus": 1}, "priority": "INFO"}'"'"'
-channel.basic_publish(exchange="nova", routing_key="notifications.info",
-                      properties=pika.BasicProperties(priority=0, delivery_mode=2, headers="", content_encoding="utf-8", content_type="application/json"),
-                      body=test)
-print " [x] Message was sent!"
-connection.close()' > $(pwd)/send.py
+prepare_vm() {
+   install_packages ${packages_list}
+}
+
+install_and_setup_keystone() {
+   install_packages ${keystone_package}
+   service ${keystone_service} stop
+
+   cat > /etc/keystone/keystone.conf << EOF
+[DEFAULT]
+admin_token=${token}
+log_file=${keystone_log_file}
+rabbit_password = guest
+rabbit_hosts = 127.0.0.1
+notification_driver = messaging
+notification_topics = notifications
+[database]
+connection=mysql://keystone:keystone@localhost/keystone
+[token]
+provider=keystone.token.providers.uuid.Provider
+EOF
+   [ -d "/var/log/keystone/" ] || mkdir /var/log/keystone/
+   touch ${keystone_log_file}
+   chown -R keystone:keystone /var/log/keystone/
+   chown -R keystone:keystone /etc/keystone
+
+   keystone-manage db_sync
+   service ${keystone_service} restart
+   sleep 5
+
+   if [ -z "$(curl -s http://localhost:5000/ | grep '^{"versions":')" ]; then
+      cat ${keystone_log_file}
+      exit_on_error 1 "Failed to get to keystone API.\nTests failed because of keystone problem"
+   fi
 }
 
 }
 
-prepare_config() {
-   mkdir -p /var/log/ceilometer
-   echo -e "[DEFAULT]
+install_and_setup_mysql() {
+   echo "mysql-server mysql-server/root_password select ${mysql_pass}" | debconf-set-selections
+   echo "mysql-server mysql-server/root_password_again select ${mysql_pass}" | debconf-set-selections
+   ${command_to_install} mysql-server-5.6 mysql-client-core-5.6 python-mysqldb
+
+   service ${mysql_service} restart
+   sleep 5
+
+   if [ -z "$(service ${mysql_service} status | grep "start/running" )" ]; then
+      exit_on_error 1 "Mysql service has failed to start"
+   fi
+
+   mysql -uroot -p${mysql_pass} -Bse "drop database if exists keystone"
+   mysql -uroot -p${mysql_pass} -Bse "create database keystone"
+   mysql -uroot -p${mysql_pass} -Bse "GRANT ALL PRIVILEGES ON keystone.* TO 'keystone'@'localhost' IDENTIFIED BY 'keystone'"
+   mysql -uroot -p${mysql_pass} -Bse "flush privileges"
+}
+
+install_and_setup_rabbit() {
+   install_packages rabbitmq-server
+   echo "127.0.10.1 $(hostname)" >> /etc/hosts
+   service rabbitmq-server restart
+   sleep 5
+
+   if [ ! -z "$(service rabbitmq-server status | grep "Error: unable to connect to node")" ]; then
+      cat /var/log/rabbitmq/startup_log
+      cat /var/log/rabbitmq/startup_err
+
+      exit_on_error 1 "DB sync command has failures"
+   fi
+}
+
+ceilometer_configuration() {
+   cat > /etc/ceilometer/ceilometer.conf << EOF
+[DEFAULT]
 api_paste_config = /etc/ceilometer/api_paste.ini
 policy_file = /etc/ceilometer/policy.json
 debug = True
 verbose = True
 api_paste_config = /etc/ceilometer/api_paste.ini
 policy_file = /etc/ceilometer/policy.json
 debug = True
 verbose = True
-log_file = /var/log/ceilometer/$package.log
+log_dir = ${ceilometer_log_dir}
 rpc_backend = ceilometer.openstack.common.rpc.impl_kombu
 rpc_backend = ceilometer.openstack.common.rpc.impl_kombu
+auth_strategy = keystone
+rabbit_password = guest
+rabbit_hosts = 127.0.0.1
+
+[keystone_authtoken]
+auth_host = 127.0.0.1
+auth_port = 35357
+auth_protocol = http
+admin_tenant_name = ceilometer
+admin_user = ceilometer
+admin_password = ceilometer
+auth_url=http://127.0.0.1:35357/v2.0
 
 [database]
 
 [database]
-connection=sqlite:////tmp/ceilometer" > /etc/ceilometer/ceilometer.conf
+connection=mongodb://127.0.0.1/ceilometer
+
+[notification]
+store_events = True
+EOF
+   [ -e /etc/default/ceilometer-polling ] && rm -f /etc/default/ceilometer-polling
+   echo "DAEMON_ARGS=\"--polling-namespaces=central\"" > /etc/default/ceilometer-polling
+
+   [ -d "${ceilometer_log_dir}" ] || mkdir ${ceilometer_log_dir}
+   chown -R ceilometer:ceilometer ${ceilometer_log_dir}
+   chown -R ceilometer:ceilometer /etc/ceilometer
 
    ceilometer-dbsync --config-file /etc/ceilometer/ceilometer.conf
 
    ceilometer-dbsync --config-file /etc/ceilometer/ceilometer.conf
-   if [ $? != "0" ]; then
-      RES=1
-      exit $RES
+   if [ "$?" -ne '0' ]; then
+      cat ${ceilometer_log_dir}/ceilometer-dbsync.log
+      exit_on_error 1 "DB sync command has failures"
    fi
    fi
-   # Clean log file
-   rm -f /var/log/ceilometer/$package.log
+
+   keystone ${auth_string} user-create --name ceilometer --pass ceilometer
+   keystone ${auth_string} tenant-create --name ceilometer
+   keystone ${auth_string} role-create --name=admin
+   keystone ${auth_string} user-role-add --user ceilometer --role admin --tenant ceilometer
+   ceilometer_service=$(keystone ${auth_string} service-create --name=ceilometer\
+ --type=metering --description="ceilometer" | grep id | awk -F '|' '{print $3}' | tr -d ' ')
+   keystone ${auth_string} endpoint-create --region RegionOne --service-id=${ceilometer_service}\
+ --publicurl=http://127.0.0.1:8777/ --internalurl=http://127.0.0.1:8777/ --adminurl=http://127.0.0.1:8777/
 }
 
 }
 
-prepare_vm() {
-   if [[ `cat /etc/*-release | head -n 1 | awk '{print $1}'` =~ Ubuntu ]]; then
-      apt-get install rabbitmq-server screen python-pip sqlite3 -y
-   else
-      yum install screen rabbitmq-server python-pip sqlite -y
+install_and_setup_mongo() {
+   install_packages "mongodb mongodb-clients"
+   cat > /etc/mongodb.conf << EOF
+logappend=true
+bind_ip = 127.0.0.1
+port = 27017
+dbpath=/var/lib/mongo
+pidfilepath = /var/run/mongodb/mongodb.pid
+journal = true
+logpath = ${mongodb_log}
+setParameter = logLevel=1
+EOF
+   [ -d "/var/log/mongo" ] || mkdir /var/log/mongo
+   [ -d "/var/lib/mongo" ] || mkdir /var/lib/mongo
+   [ -d "/var/run/mongodb" ] || mkdir /var/run/mongodb
+   chown -R mongodb:mongodb /var/log/mongo /var/lib/mongo /var/run/mongodb /etc/mongodb.conf
+
+   service ${mongodb_service} restart
+   sleep 5
+
+   if [ -z "$(service ${mongodb_service} status | grep "start/running")" ]; then
+      cat ${mongodb_log}
+      exit_on_error 1 "Mongo service has failed to start"
    fi
    fi
-   service rabbitmq-server restart
 
 
-   for (( i = 1; i <= 5; i++ ))
-   {
-      if echo "$(service rabbitmq-server status)" | grep -q "Error: unable to connect to node";
-         then
-            service rabbitmq-server start
-            if [ "$i" -eq 5 ]
-               then
-                  echo "rabbitmq-server is dead"
-                  exit 1
-            fi
-         else
-            echo "$(service rabbitmq-server status)"
-            break
+   try=0
+   while [ ${try} -le '5' ]; do
+      mongo --host 127.0.0.1 --eval "db.getSiblingDB('admin')"
+      if [ "$?" -ne '0' ]; then
+         try=$((try + 1))
+         sleep 5
+      else
+         break
       fi
       fi
-   }
-
-   sleep 5
+   done
+   if [ "${try}" -ge '5' ]; then
+      exit_on_error 1 "Mongo shell is not available. Mongo work is broken"
+   fi
 }
 
 }
 
-send_fake_notification() {
+send_fake_instance_notification() {
    pip install pika==0.9.8
    pip install pika==0.9.8
-   prepare_script
+   echo '#!/usr/bin/env python
+import pika
+connection = pika.BlockingConnection(pika.ConnectionParameters(host="127.0.0.1"))
+channel = connection.channel()
+channel.queue_declare(queue="notifications.info")
+test=r'"'"'{"event_type": "compute.instance.update", "_unique_id": "fake", "payload": {"ephemeral_gb": 0, "instance_id": "fake", "user_id": "fake", "root_gb": 0, "tenant_id": "fake", "memory_mb": 64, "vcpus": 1}, "priority": "INFO"}'"'"'
+channel.basic_publish(exchange="nova", routing_key="notifications.info",
+                      properties=pika.BasicProperties(priority=0, delivery_mode=2, headers="", content_encoding="utf-8", content_type="application/json"),
+                      body=test)
+print " [x] Message was sent!"
+connection.close()' > $(pwd)/send.py
    python $(pwd)/send.py
 }
 
    python $(pwd)/send.py
 }
 
-check_fake_notification() {
-   sqlite3 /tmp/ceilometer 'select * from meter;'
-   local check=$(sqlite3 /tmp/ceilometer 'select * from meter;' | grep instance)
-   if [ -z "$check" ]; then
-      echo -e "Meter 'instance' is lost"
-      RES=1
-      echo $RES
+exit_on_error() {
+   # $1 - responce code
+   # $2 - message
+   if [ "${1}" -ne '0' ]; then
+      echo -e "${2}"
+      RES=${1}
+      exit ${RES}
    fi
 }
 
    fi
 }
 
-check_pollsters() {
-   local test1=$(cat /var/log/ceilometer/$package.log | grep "Polling pollster $1")
-   local test2=$(cat /var/log/ceilometer/$package.log | grep "Polling pollster $2")
-   local test3=$(cat /var/log/ceilometer/$package.log | grep "Polling pollster $3")
-   if [ -z "$test1" -o -z "$test2" -o -z "$test3" ]; then
-      echo -e "Some pollsters aren't work"
-      RES=1
-      echo $RES
+found=false
+for i in ${ceilometer_packages_and_services[@]}; do
+   if [ "${i}" == "${package_to_test}" ]; then
+      found=true
    fi
    fi
-}
+done
 
 
-check_running() {
-   if [ $(ps aux | grep $1 | wc -l) -lt "2" ]; then
-      echo "Process $1 is not running"
-      RES=1
-      echo $RES
-   fi
-}
+if ${found}; then
+   echo "Test for package ${package_to_test} will be run with ceilometer-common package"
+   RES=0
+fi
 
 
-case $package in
-   ceilometer-api|openstack-ceilometer-api)
-      echo "Skip due to resolving oslo.middleware problem: ImportError: No module named middleware"
-      exit 0
-      prepare_config
+case ${package_to_test} in
+   ceilometer-common|openstack-ceilometer-common)
       prepare_vm
       prepare_vm
+      install_packages "${ceilometer_packages_and_services[@]}"
+      install_and_setup_rabbit
+      install_and_setup_mysql
+      install_and_setup_keystone
+      install_and_setup_mongo
+      ceilometer_configuration
+
+      for binary in ${ceilometer_binaries[@]}; do
+         if [ ! -f "/usr/bin/${binary}" ]; then
+            exit_on_error 1 "Ceilometer binary ${binary} is missed"
+         fi
+      done
+
+      for config in ${config_files[@]}; do
+         if [ ! -f "/etc/ceilometer/${config}" ]; then
+            exit_on_error 1 "Ceilometer configuration file ${config} is missed"
+         fi
+      done
 
 
-      screen -dmS ceilometer-api
-      sleep 2
-      screen -S ceilometer-api -p 0 -X stuff 'ceilometer-api --config-file /etc/ceilometer/ceilometer.conf
-'
-      sleep 10
-      check_running ceilometer-api
+      for service in ${ceilometer_packages_and_services[@]}; do
+         service ${service} restart
+         sleep 5
+         if [ -z "$(service ${service} status | grep "start/running")" ]; then
+            cat /var/log/ceilometer/${service}.log
+            exit_on_error 1 "Service ${service} has failed to start"
+         fi
+      done
 
       repsonce=$(curl "http://localhost:8777" | grep "Authentication required")
       if [ -z "$repsonce" ]; then
 
       repsonce=$(curl "http://localhost:8777" | grep "Authentication required")
       if [ -z "$repsonce" ]; then
-         echo -e "Ceilometer api doesn't work. No one process is listening on 8777 port"
-         RES=1
+         exit_on_error 1 "Ceilometer api doesn't work.\n No one process is listening on 8777 port"
       fi
 
       fi
 
-      killall -15 ceilometer-api
-
-      cat /var/log/ceilometer/$package.log
-   ;;
-   ceilometer-collector|openstack-ceilometer-collector|ceilometer-agent-notification|openstack-ceilometer-notification)
-      prepare_config
-      prepare_vm
+      for Command in ${list_commands[@]}; do
+         ceilometer ${ceilometer_auth_string} ${Command}
+         if [ "$?" -ne '0' ]; then
+             exit_on_error 1 "Command ${Command} has failed"
+         fi
+      done
 
 
-      if [[ `cat /etc/*-release | head -n 1 | awk '{print $1}'` =~ Ubuntu ]]; then
-         apt-get install ceilometer-collector ceilometer-agent-notification -y
-      else
-         yum install openstack-ceilometer-collector openstack-ceilometer-notification -y
+      # Keystone notifications
+      if [ -z "$(ceilometer ${ceilometer_auth_string} meter-list | grep identity)" ]; then
+         exit_on_error 1 "Keystone notifications don't work"
       fi
 
       fi
 
-      screen -dmS ceilometer-collector
-      screen -dmS ceilometer-agent-notification
-      sleep 2
-      screen -S ceilometer-collector -p 0 -X stuff 'ceilometer-collector --config-file /etc/ceilometer/ceilometer.conf --log-file /var/log/ceilometer/ceilometer-collector.log
-'
-      screen -S ceilometer-agent-notification -p 0 -X stuff 'ceilometer-agent-notification --config-file /etc/ceilometer/ceilometer.conf --log-file /var/log/ceilometer/ceilometer-anotification.log
-'
-      sleep 10
-      check_running ceilometer-collector
-      check_running ceilometer-agent-notification
-      send_fake_notification
-      sleep 2
-      check_fake_notification
-
-      killall -15 ceilometer-collector ceilometer-agent-notification
-
-      cat /var/log/ceilometer/ceilometer-collector.log
-      cat /var/log/ceilometer/ceilometer-anotification.log
-   ;;
-   ceilometer-alarm-notifier|ceilometer-alarm-evaluator|openstack-ceilometer-alarm)
-      if [[ `cat /etc/*-release | head -n 1 | awk '{print $1}'` =~ Ubuntu ]]; then
-         # Testing alarm-notifier and alarm-evaluator together
-         apt-get install ceilometer-alarm-evaluator ceilometer-alarm-notifier -y --force-yes
+      # Instance notification
+      send_fake_instance_notification
+      resource_id=$(ceilometer ${ceilometer_auth_string} resource-list | grep fake)
+      if [ -z ${resource_id} ]; then
+         exit_on_error 1 "Notification is not received"
       fi
 
       fi
 
-      echo "Testing 'ceilometer-alarm-notifier'"
-      prepare_config
-      prepare_vm
-
-      screen -dmS ceilometer-alarm-notifier
-      sleep 2
-      screen -S ceilometer-alarm-notifier -p 0 -X stuff 'ceilometer-alarm-notifier --config-file /etc/ceilometer/ceilometer.conf --log-file /var/log/ceilometer/ceilometer-alarm-notifier.log
-'
-      sleep 10
-      check_running ceilometer-alarm-notifier
-
-      if [ -z "$(cat /var/log/ceilometer/ceilometer-alarm-notifier.log | grep 'Connected to AMQP server on')" ]; then
-         echo -e "Start alarm-notifier process is failed"
-         RES=1
+      # Events
+      if [ -z "$(ceilometer ${ceilometer_auth_string} event-list | grep fake)" ]; then
+         exit_on_error 1 "Events wasn't created"
       fi
 
       fi
 
-      killall -15 ceilometer-alarm-notifier
+      # Alarming
+      ceilometer -dv ${ceilometer_auth_string} alarm-threshold-create --name cpu_high --description 'instance running hot' \
+ --meter-name cpu_util  --threshold 70.0 --comparison-operator gt  --statistic avg \
+ --period 600 --evaluation-periods 3 --alarm-action 'log://' --query resource_id="${resource_id}"
 
 
-      cat /var/log/ceilometer/ceilometer-alarm-notifier.log
-
-      echo "Testing 'ceilometer-alarm-evaluator'"
-      screen -dmS ceilometer-alarm-evaluator
-      sleep 2
-      screen -S ceilometer-alarm-evaluator -p 0 -X stuff 'ceilometer-alarm-evaluator --config-file /etc/ceilometer/ceilometer.conf --log-file /var/log/ceilometer/ceilometer-alarm-evaluator.log
-'
-      sleep 10
-      check_running ceilometer-alarm-evaluator
-
-      if [ -z "$(cat /var/log/ceilometer/ceilometer-alarm-evaluator.log | grep 'alarm evaluation cycle')" ]; then
-         echo -e "Start alarm-evalutor process is failed"
-         RES=1
+      if [ "$?" -ne '0' -a -z "$(ceilometer ${ceilometer_auth_string} alarm-list | grep cpu_high)" ]; then
+         exit_on_error 1 "Alarm creation has failed"
       fi
 
       fi
 
-      killall -15 ceilometer-alarm-evaluator
-
-      cat /var/log/ceilometer/ceilometer-alarm-evaluator.log
-   ;;
-   ceilometer-agent-compute|openstack-ceilometer-compute)
-      prepare_vm
-      prepare_config
-
-      screen -dmS ceilometer-agent-compute
-      sleep 2
-      screen -S ceilometer-agent-compute -p 0 -X stuff 'ceilometer-agent-compute --config-file /etc/ceilometer/ceilometer.conf
-'
-      sleep 10
-      check_running ceilometer-agent-compute
-      check_pollsters "cpu" "memory" "disk"
+      # Samples
+      ceilometer -dv ${ceilometer_auth_string} sample-create -m fake_sample --meter-type gauge --meter-unit '%' --sample-volume 100 -r "fake"
 
 
-      killall -15 ceilometer-agent-compute
-
-      cat /var/log/ceilometer/$package.log
-   ;;
-   ceilometer-agent-central|openstack-ceilometer-central)
-      prepare_vm
-      prepare_config
-
-      screen -dmS ceilometer-agent-central
-      sleep 2
-      screen -S ceilometer-agent-central -p 0 -X stuff 'ceilometer-agent-central --config-file /etc/ceilometer/ceilometer.conf
-'
-      sleep 10
-      check_running ceilometer-agent-central
-      check_pollsters "network" "switch" "hardware"
-
-      killall -15 ceilometer-agent-central
-
-      cat /var/log/ceilometer/$package.log
+      if [ "$?" -ne '0' -a -z "$(ceilometer ${ceilometer_auth_string} sample-list | grep fake_sample)" ]; then
+         exit_on_error 1 "Sample creation has failed"
+      fi
    ;;
    ;;
-   ceilometer-common|openstack-ceilometer-common)
-      if [ -z "$(cut -d: -f1 /etc/passwd | grep 'ceilometer')" ]; then
-         echo -e "User 'ceilometer' doesn't exist"
-         RES=1
+   ceilometer-agent-ipmi|openstack-ceilometer-ipmi)
+      # Ceilometer-agent-ipmi is not included in common testing
+      # because it is not used in Fuel now
+      if [ ! -f "/usr/bin/ceilometer-agent-ipmi" ]; then
+         exit_on_error 1 "Ceilometer ipmi binary is missed"
       fi
       fi
-      config_files="ceilometer.conf policy.json pipeline.yaml api_paste.ini event_definitions.yaml"
-      for i in $config_files; do
-         if [ ! -f "/etc/ceilometer/$i" ]; then
-            RES=1
-            echo "File /etc/ceilometer/$i doesn't exist"
-         fi
-      done
    ;;
    python-ceilometer)
       python -c 'import ceilometer'
       if [ $? -ne '0' ]; then
    ;;
    python-ceilometer)
       python -c 'import ceilometer'
       if [ $? -ne '0' ]; then
-         echo -e "Couldn't import module 'ceilometer'"
-         RES=1
+         exit_on_error 1 "Couldn't import module 'ceilometer'"
       fi
       if [ -z "$(which ceilometer)" ]; then
       fi
       if [ -z "$(which ceilometer)" ]; then
-         RES=1
-         echo -e "Can't find command 'ceilometer'"
+         exit_on_error 1 "Can't find command 'ceilometer'"
       fi
    ;;
    *)
       fi
    ;;
    *)
-      echo "test not defined, skipping..."
+      if ! ${found}; then
+         echo "Test not defined. Please create test for package ${package_to_test}"
+      fi
    ;;
 esac
 
    ;;
 esac
 
-exit $RES
+exit ${RES}
similarity index 73%
rename from debian/ceilometer-common.install
rename to trusty/debian/ceilometer-common.install
index 748274634753d8253c29629e63c6cab1f494e6d2..e16dabf9a0fd6cb445737d5a93b6d0372267d1cf 100644 (file)
@@ -1,6 +1,9 @@
 etc/ceilometer/api_paste.ini etc/ceilometer
 etc/ceilometer/ceilometer.conf etc/ceilometer
 etc/ceilometer/api_paste.ini etc/ceilometer
 etc/ceilometer/ceilometer.conf etc/ceilometer
+etc/ceilometer/deprecated_pipeline.yaml etc/ceilometer/
 etc/ceilometer/event_definitions.yaml etc/ceilometer
 etc/ceilometer/event_definitions.yaml etc/ceilometer
+etc/ceilometer/event_pipeline.yaml etc/ceilometer/
+etc/ceilometer/gabbi_pipeline.yaml etc/ceilometer/
 etc/ceilometer/pipeline.yaml etc/ceilometer
 etc/ceilometer/policy.json etc/ceilometer
 etc/ceilometer/rootwrap.conf etc/ceilometer
 etc/ceilometer/pipeline.yaml etc/ceilometer
 etc/ceilometer/policy.json etc/ceilometer
 etc/ceilometer/rootwrap.conf etc/ceilometer
diff --git a/trusty/debian/changelog b/trusty/debian/changelog
new file mode 100644 (file)
index 0000000..8768942
--- /dev/null
@@ -0,0 +1,9 @@
+ceilometer (2015.1.0-1~u14.04+mos1) mos7.0; urgency=medium
+
+  * Build ceilometer 2015.1.0 (stable/kilo)
+  * Updating requirements according to:
+    https://github.com/openstack/ceilometer/blob/stable/kilo/requirements.txt
+    https://github.com/openstack/requirements/blob/stable/kilo/global-requirements.txt
+  * Sync debian sources with https://launchpad.net/ubuntu/+source/ceilometer/2015.1.0-0ubuntu1
+
+ -- Ivan Berezovskiy <iberezovskiy@mirantis.com>  Wed, 13 May 2015 16:45:58 +0300
similarity index 100%
rename from debian/compat
rename to trusty/debian/compat
similarity index 60%
rename from debian/control
rename to trusty/debian/control
index 7ea2982e2e1ebd682c3153e3c0de723fc63ba812..5fed467c857158ede7b269d573aa7cbf55608645 100644 (file)
 Source: ceilometer
 Section: python
 Priority: optional
 Source: ceilometer
 Section: python
 Priority: optional
-Maintainer: Chuck Short <zulcss@ubuntu.com>
+Maintainer: MOS Ceilometer Team <mos-ceilometer@mirantis.com>
 Build-Depends:
 Build-Depends:
- alembic (>= 0.6.4),
- debhelper (>= 9~),
+ alembic (>= 0.7.2),
+ debhelper (>= 9),
  dh-systemd,
  dh-systemd,
- openstack-pkg-tools (>= 21~),
- python-all (>= 2.6),
+ openstack-pkg-tools (>= 21),
+ pylint,
+ python-all (>= 2.7.1),
  python-anyjson (>= 0.3.3),
  python-anyjson (>= 0.3.3),
- python-argparse,
- python-babel (>= 1.3),
- python-ceilometerclient (>= 1.0.6),
- python-coverage (>= 3.6),
+ python-ceilometerclient (>= 1.0.13),
  python-croniter (>= 0.3.4),
  python-docutils,
  python-croniter (>= 0.3.4),
  python-docutils,
- python-eventlet (>= 0.15.2),
- python-fixtures (>= 0.3.14),
- python-glanceclient (>= 1:0.14.0),
- python-hacking (>= 0.9.2),
- python-happybase (>= 0.5), python-happybase (<< 0.7) | python-happybase (>> 0.7),
- python-httplib2 (>= 0.7.5),
+ python-eventlet (>= 0.16.1),
+ python-glanceclient (>= 1:0.15.0),
  python-iso8601 (>= 0.1.9),
  python-iso8601 (>= 0.1.9),
- python-jsonpath-rw (>= 1.2.0), python-jsonpath-rw (<< 2.0),
- python-jsonschema (>= 2.0.0), python-jsonschema (<< 3.0.0),
- python-keystoneclient (>= 1:0.11.1),
- python-keystonemiddleware (>= 1.0.0),
- python-lockfile (>= 0.8),
+ python-jsonpath-rw (>=1.2.0),
+ python-jsonschema (>= 2.0.0),
+ python-keystoneclient (>= 1:1.1.0),
+ python-keystonemiddleware (>= 1.5.0),
  python-lxml (>= 2.3),
  python-lxml (>= 2.3),
- python-migrate (>= 0.9.1), python-migrate (<< 0.9.2) | python-migrate (>> 0.9.2),
- python-mock (>= 1.0),
- python-mox (>= 0.5.3),
  python-msgpack (>= 0.4.0),
  python-msgpack (>= 0.4.0),
- python-mysqldb,
- python-netaddr (>= 0.7.12),
- python-neutronclient (>= 2.3.6), python-neutronclient (<< 1:3.0.0),
+ python-migrate (>= 0.9.5),
+ python-neutronclient (>= 1:2.3.11),
  python-nose,
  python-nose,
- python-nova,
- python-novaclient (>= 1:2.18.0),
- python-oslo.concurrency (>= 0.3.0),
- python-oslo.config (>= 1:1.4.0),
- python-oslo.db (>= 1.1.0),
- python-oslo.i18n (>= 1.0.0),
- python-oslo.messaging (>= 1.4.0), python-oslo.messaging (<< 1.5.0) | python-oslo.messaging (>> 1.5.0),
- python-oslo.middleware (>= 0.1.0),
- python-oslo.rootwrap (>= 1.3.0),
- python-oslo.serialization (>= 1.0.0),
- python-oslo.utils (>= 1.0.0),
- python-oslo.vmware (>= 0.6.0),
- python-oslosphinx (>= 2.2.0),
- python-oslotest (>= 1.1.0),
+ python-novaclient (>= 1:2.22.0),
+ python-oslo-context (>= 0.2.0),
+ python-oslo-db (>= 1.7.0),
+ python-oslo-concurrency (>= 1.8.0),
+ python-oslo-config (>= 1:1.9.3),
+ python-oslo-i18n (>= 1.5.0),
+ python-oslo-messaging (>= 1.8.0),
+ python-oslo-middleware (>= 1.0.0),
+ python-oslo-policy (>= 0.3.1),
+ python-oslo-rootwrap (>= 1.6.0),
+ python-oslo-serialization (>= 1.4.0),
+ python-oslo-utils (>= 1.4.0),
  python-pastedeploy (>= 1.5.0),
  python-pastedeploy (>= 1.5.0),
- python-pbr (>= 0.6), python-pbr (<< 0.7) | python-pbr (>> 0.7), python-pbr (<< 1.0),
- python-pecan (>= 0.8.0),
  python-posix-ipc,
  python-posix-ipc,
- python-pymongo (>= 2.5),
- python-pysnmp4 (>= 4.2.1), python-pysnmp4 (<< 5.0.0),
- python-requests (>= 2.2.0), python-requests (<< 2.4.0) | python-requests (>> 2.4.0),
- python-retrying (>= 1.2.2), python-retrying (<< 1.3.0) | python-retrying (>> 1.3.0),
- python-six (>= 1.7.0),
- python-sphinx (>= 1.1.2),
- python-sqlalchemy (>= 0.8.4), python-sqlalchemy (<< 0.8.99) | python-sqlalchemy (>> 0.9.7), python-sqlalchemy (<= 0.9.99),
- python-stevedore (>= 1.1.0),
- python-subunit (>= 0.0.18),
+ python-pbr (>= 0.10),
+ python-pecan (>= 0.8.0),
+ python-psycopg2,
+ python-pymongo (>= 2.6.3),
+ python-pysnmp4 (>= 4.2.1),
+ python-requests (>= 2.2.0),
+ python-retrying (>= 1.2.3),
+ python-tz (>= 2013.6),
+ python-six (>= 1.9.0),
+ python-sqlalchemy (>= 0.9.7),
+ python-stevedore (>= 1.3.0),
  python-swiftclient (>= 1:2.2.0),
  python-swiftclient (>= 1:2.2.0),
- python-testrepository (>= 0.0.18),
- python-testscenarios (>= 0.4),
- python-testtools (>= 0.9.34),
- python-tooz (>= 0.9),
- python-tz (>= 2010h),
+ python-tooz (>= 0.13.1),
+ python-werkzeug (>= 0.7),
  python-webob (>= 1.2.3),
  python-wsme (>= 0.6),
  python-yaml (>= 3.1.0),
  subunit,
  testrepository (>= 0.0.18)
 Standards-Version: 3.9.6
  python-webob (>= 1.2.3),
  python-wsme (>= 0.6),
  python-yaml (>= 3.1.0),
  subunit,
  testrepository (>= 0.0.18)
 Standards-Version: 3.9.6
-Vcs-Browser: http://bazaar.launchpad.net/~ubuntu-server-dev/ceilometer/kilo/files
-Vcs-Bzr: https://code.launchpad.net/~ubuntu-server-dev/ceilometer/kilo
 
 Package: python-ceilometer
 Architecture: all
 Depends:
 
 Package: python-ceilometer
 Architecture: all
 Depends:
- alembic (>= 0.6.4),
+ openstack-pkg-tools (>= 21),
+ python-all (>= 2.7.1),
  python-anyjson (>= 0.3.3),
  python-anyjson (>= 0.3.3),
- python-argparse,
- python-ceilometerclient (>= 1.0.6),
+ python-ceilometerclient (>= 1.0.13),
  python-croniter (>= 0.3.4),
  python-croniter (>= 0.3.4),
- python-eventlet (>= 0.15.2),
- python-glanceclient (>= 1:0.14.0),
- python-happybase (>= 0.5), python-happybase (<< 0.7) | python-happybase (>> 0.7),
+ python-eventlet (>= 0.16.1),
+ python-glanceclient (>= 1:0.15.0),
  python-iso8601 (>= 0.1.9),
  python-iso8601 (>= 0.1.9),
- python-jsonpath-rw (>= 1.2.0), python-jsonpath-rw (<< 2.0),
- python-jsonschema (>= 2.0.0), python-jsonschema (<< 3.0.0),
- python-keystoneclient (>= 1:0.11.1),
- python-keystonemiddleware (>= 1.0.0),
- python-lockfile (>= 0.8),
+ python-jsonpath-rw (>=1.2.0),
+ python-jsonschema (>= 2.0.0),
+ python-keystoneclient (>= 1:1.1.0),
+ python-keystonemiddleware (>= 1.5.0),
  python-lxml (>= 2.3),
  python-lxml (>= 2.3),
- python-migrate (>= 0.9.1), python-migrate (<< 0.9.2) | python-migrate (>> 0.9.2),
  python-msgpack (>= 0.4.0),
  python-msgpack (>= 0.4.0),
- python-netaddr (>= 0.7.12),
- python-neutronclient (>= 1:2.3.6), python-neutronclient (<< 1:3.0.0),
- python-novaclient (>= 1:2.18.0),
- python-oslo.concurrency (>= 0.3.0),
- python-oslo.config (>= 1:1.4.0),
- python-oslo.db (>= 1.1.0),
- python-oslo.i18n (>= 1.0.0),
- python-oslo.messaging (>= 1.4.0), python-oslo.messaging (<< 1.5.0) | python-oslo.messaging (>> 1.5.0),
- python-oslo.middleware (>= 0.1.0),
- python-oslo.rootwrap (>= 1.3.0),
- python-oslo.serialization (>= 1.0.0),
- python-oslo.utils (>= 1.0.0),
- python-oslo.vmware (>= 0.6.0),
+ python-migrate (>= 0.9.5),
+ python-neutronclient (>= 1:2.3.11),
+ python-novaclient (>= 1:2.22.0),
+ python-oslo-context (>= 0.2.0),
+ python-oslo-db (>= 1.7.0),
+ python-oslo-concurrency (>= 1.8.0),
+ python-oslo-config (>= 1:1.9.3),
+ python-oslo-i18n (>= 1.5.0),
+ python-oslo-messaging (>= 1.8.0),
+ python-oslo-middleware (>= 1.0.0),
+ python-oslo-policy (>= 0.3.1),
+ python-oslo-rootwrap (>= 1.6.0),
+ python-oslo-serialization (>= 1.4.0),
+ python-oslo-utils (>= 1.4.0),
  python-pastedeploy (>= 1.5.0),
  python-pastedeploy (>= 1.5.0),
- python-pbr (>= 0.6), python-pbr (<< 0.7) | python-pbr (>> 0.7), python-pbr (<< 1.0),
- python-pecan (>= 0.8.0),
  python-posix-ipc,
  python-posix-ipc,
- python-pysnmp4 (>= 4.2.1), python-pysnmp4 (<< 5.0.0),
- python-retrying (>= 1.2.2), python-retrying (<< 1.3.0) | python-retrying (>> 1.3.0),
- python-requests (>= 2.2.0), python-requests (<< 2.4.0) | python-requests (>> 2.4.0),
- python-six (>= 1.7.0),
- python-sqlalchemy (>= 0.8.4), python-sqlalchemy (<< 0.8.99) | python-sqlalchemy (>> 0.9.7), python-sqlalchemy (<= 0.9.99),
- python-stevedore (>= 1.1.0),
+ python-pbr (>= 0.10),
+ python-pecan (>= 0.8.0),
+ python-psycopg2,
+ python-pymongo (>= 2.6.3),
+ python-pysnmp4 (>= 4.2.1),
+ python-requests (>= 2.2.0),
+ python-retrying (>= 1.2.3),
+ python-tz (>= 2013.6),
+ python-six (>= 1.9.0),
+ python-sqlalchemy (>= 0.9.7),
+ python-stevedore (>= 1.3.0),
  python-swiftclient (>= 1:2.2.0),
  python-swiftclient (>= 1:2.2.0),
- python-tooz (>= 0.9),
- python-tz (>= 2010h),
+ python-tooz (>= 0.13.1),
+ python-werkzeug (>= 0.7),
  python-webob (>= 1.2.3),
  python-wsme (>= 0.6),
  python-yaml (>= 3.1.0),
  python-webob (>= 1.2.3),
  python-wsme (>= 0.6),
  python-yaml (>= 3.1.0),
+ subunit,
+ testrepository (>= 0.0.18)
  ${misc:Depends},
  ${python:Depends}
 Description: ceilometer python libraries
  Ceilometer aims to deliver a unique point of contact for billing systems to
  ${misc:Depends},
  ${python:Depends}
 Description: ceilometer python libraries
  Ceilometer aims to deliver a unique point of contact for billing systems to
- aquire all counters they need to establish customer billing, across all
+ acquire all counters they need to establish customer billing, across all
  current and future OpenStack components. The delivery of counters must
  current and future OpenStack components. The delivery of counters must
- be tracable and auditable, the counters must be easily extensible to support
+ be traceable and auditable, the counters must be easily extensible to support
  new projects, and agents doing data collections should be
  independent of the overall system.
  .
  new projects, and agents doing data collections should be
  independent of the overall system.
  .
@@ -154,7 +139,7 @@ Description: ceilometer common files
  Ceilometer aims to deliver a unique point of contact for billing systems to
  aquire all counters they need to establish customer billing, across all
  current and future OpenStack components. The delivery of counters must
  Ceilometer aims to deliver a unique point of contact for billing systems to
  aquire all counters they need to establish customer billing, across all
  current and future OpenStack components. The delivery of counters must
- be tracable and auditable, the counters must be easily extensible to support
+ be traceable and auditable, the counters must be easily extensible to support
  new projects, and agents doing data collections should be
  independent of the overall system.
  .
  new projects, and agents doing data collections should be
  independent of the overall system.
  .
@@ -173,7 +158,7 @@ Description: ceilometer collector service
  Ceilometer aims to deliver a unique point of contact for billing systems to
  aquire all counters they need to establish customer billing, across all
  current and future OpenStack components. The delivery of counters must
  Ceilometer aims to deliver a unique point of contact for billing systems to
  aquire all counters they need to establish customer billing, across all
  current and future OpenStack components. The delivery of counters must
- be tracable and auditable, the counters must be easily extensible to support
+ be traceable and auditable, the counters must be easily extensible to support
  new projects, and agents doing data collections should be
  independent of the overall system.
  .
  new projects, and agents doing data collections should be
  independent of the overall system.
  .
@@ -192,7 +177,7 @@ Description: ceilometer polling service
  Ceilometer aims to deliver a unique point of contact for billing systems to
  aquire all counters they need to establish customer billing, across all
  current and future OpenStack components. The delivery of counters must
  Ceilometer aims to deliver a unique point of contact for billing systems to
  aquire all counters they need to establish customer billing, across all
  current and future OpenStack components. The delivery of counters must
- be tracable and auditable, the counters must be easily extensible to support
+ be traceable and auditable, the counters must be easily extensible to support
  new projects, and agents doing data collections should be
  independent of the overall system.
  .
  new projects, and agents doing data collections should be
  independent of the overall system.
  .
@@ -211,7 +196,7 @@ Description: ceilometer api service
  Ceilometer aims to deliver a unique point of contact for billing systems to
  aquire all counters they need to establish customer billing, across all
  current and future OpenStack components. The delivery of counters must
  Ceilometer aims to deliver a unique point of contact for billing systems to
  aquire all counters they need to establish customer billing, across all
  current and future OpenStack components. The delivery of counters must
- be tracable and auditable, the counters must be easily extensible to support
+ be traceable and auditable, the counters must be easily extensible to support
  new projects, and agents doing data collections should be
  independent of the overall system.
  .
  new projects, and agents doing data collections should be
  independent of the overall system.
  .
@@ -227,7 +212,7 @@ Description: ceilometer compute agent
  Ceilometer aims to deliver a unique point of contact for billing systems to
  aquire all counters they need to establish customer billing, across all
  current and future OpenStack components. The delivery of counters must
  Ceilometer aims to deliver a unique point of contact for billing systems to
  aquire all counters they need to establish customer billing, across all
  current and future OpenStack components. The delivery of counters must
- be tracable and auditable, the counters must be easily extensible to support
+ be traceable and auditable, the counters must be easily extensible to support
  new projects, and agents doing data collections should be
  independent of the overall system.
  .
  new projects, and agents doing data collections should be
  independent of the overall system.
  .
@@ -245,7 +230,7 @@ Description: ceilometer central agent
  Ceilometer aims to deliver a unique point of contact for billing systems to
  aquire all counters they need to establish customer billing, across all
  current and future OpenStack components. The delivery of counters must
  Ceilometer aims to deliver a unique point of contact for billing systems to
  aquire all counters they need to establish customer billing, across all
  current and future OpenStack components. The delivery of counters must
- be tracable and auditable, the counters must be easily extensible to support
+ be traceable and auditable, the counters must be easily extensible to support
  new projects, and agents doing data collections should be
  independent of the overall system.
  .
  new projects, and agents doing data collections should be
  independent of the overall system.
  .
@@ -264,7 +249,7 @@ Description: ceilometer ipmi agent
  Ceilometer aims to deliver a unique point of contact for billing systems to
  aquire all counters they need to establish customer billing, across all
  current and future OpenStack components. The delivery of counters must
  Ceilometer aims to deliver a unique point of contact for billing systems to
  aquire all counters they need to establish customer billing, across all
  current and future OpenStack components. The delivery of counters must
- be tracable and auditable, the counters must be easily extensible to support
+ be traceable and auditable, the counters must be easily extensible to support
  new projects, and agents doing data collections should be
  independent of the overall system.
  .
  new projects, and agents doing data collections should be
  independent of the overall system.
  .
@@ -282,7 +267,7 @@ Description: ceilometer notification agent
  Ceilometer aims to deliver a unique point of contact for billing systems to
  aquire all counters they need to establish customer billing, across all
  current and future OpenStack components. The delivery of counters must
  Ceilometer aims to deliver a unique point of contact for billing systems to
  aquire all counters they need to establish customer billing, across all
  current and future OpenStack components. The delivery of counters must
- be tracable and auditable, the counters must be easily extensible to support
+ be traceable and auditable, the counters must be easily extensible to support
  new projects, and agents doing data collections should be
  independent of the overall system.
  .
  new projects, and agents doing data collections should be
  independent of the overall system.
  .
@@ -300,7 +285,7 @@ Description: Ceilometer alarm evaluator
  Ceilometer aims to deliver a unique point of contact for billing systems to
  aquire all counters they need to establish customer billing, across all
  current and future OpenStack components. The delivery of counters must
  Ceilometer aims to deliver a unique point of contact for billing systems to
  aquire all counters they need to establish customer billing, across all
  current and future OpenStack components. The delivery of counters must
- be tracable and auditable, the counters must be easily extensible to support
+ be traceable and auditable, the counters must be easily extensible to support
  new projects, and agents doing data collections should be
  independent of the overall system.
  .
  new projects, and agents doing data collections should be
  independent of the overall system.
  .
@@ -318,7 +303,7 @@ Description: Ceilometer notification agent
  Ceilometer aims to deliver a unique point of contact for billing systems to
  aquire all counters they need to establish customer billing, across all
  current and future OpenStack components. The delivery of counters must
  Ceilometer aims to deliver a unique point of contact for billing systems to
  aquire all counters they need to establish customer billing, across all
  current and future OpenStack components. The delivery of counters must
- be tracable and auditable, the counters must be easily extensible to support
+ be traceable and auditable, the counters must be easily extensible to support
  new projects, and agents doing data collections should be
  independent of the overall system.
  .
  new projects, and agents doing data collections should be
  independent of the overall system.
  .
similarity index 100%
rename from debian/copyright
rename to trusty/debian/copyright
similarity index 100%
rename from debian/docs
rename to trusty/debian/docs
diff --git a/trusty/debian/patches/disable-kafka.patch b/trusty/debian/patches/disable-kafka.patch
new file mode 100644 (file)
index 0000000..1e0d4b2
--- /dev/null
@@ -0,0 +1,39 @@
+--- a/ceilometer/tests/publisher/test_kafka_broker_publisher.py
++++ b/ceilometer/tests/publisher/test_kafka_broker_publisher.py
+@@ -15,13 +15,17 @@
+ """Tests for ceilometer/publisher/kafka_broker.py
+ """
+ import datetime
++import testtools
+ import uuid
+ import mock
+ from oslo_utils import netutils
+ from ceilometer.event.storage import models as event
+-from ceilometer.publisher.kafka_broker import KafkaBrokerPublisher
++try:
++    from ceilometer.publisher.kafka_broker import KafkaBrokerPublisher
++except ImportError:
++    kafka_publisher = None
+ from ceilometer import sample
+ from ceilometer.tests import base as tests_base
+@@ -93,6 +97,7 @@
+         ),
+     ]
++    @testtools.skipIf(kafka_publisher is None, "Kafka not avaliable, skipping")
+     def setUp(self):
+         super(TestKafkaPublisher, self).setUp()
+--- a/requirements.txt
++++ b/requirements.txt
+@@ -9,7 +9,6 @@
+ iso8601>=0.1.9
+ jsonpath-rw>=1.2.0,<2.0
+ jsonschema>=2.0.0,<3.0.0
+-kafka-python>=0.9.2 # Apache-2.0
+ keystonemiddleware>=1.5.0,<1.6.0
+ lxml>=2.3
+ msgpack-python>=0.4.0
diff --git a/trusty/debian/patches/series b/trusty/debian/patches/series
new file mode 100644 (file)
index 0000000..16fa7f5
--- /dev/null
@@ -0,0 +1,4 @@
+skip-db-tests.patch
+skip-test.patch
+skip-gabbi.patch
+disable-kafka.patch
diff --git a/trusty/debian/patches/skip-gabbi.patch b/trusty/debian/patches/skip-gabbi.patch
new file mode 100644 (file)
index 0000000..b35d1bc
--- /dev/null
@@ -0,0 +1,19 @@
+--- a/ceilometer/tests/gabbi/test_gabbi.py
++++ b/ceilometer/tests/gabbi/test_gabbi.py
+@@ -20,10 +20,14 @@ For the sake of exploratory development.
+ import os
+-from gabbi import driver
++try:
++    from gabbi import driver
++except ImportError:
++    driver = None
+ from ceilometer.api import app
+-from ceilometer.tests.gabbi import fixtures as fixture_module
++if driver:
++    from ceilometer.tests.gabbi import fixtures as fixture_module
+ TESTS_DIR = 'gabbits'
diff --git a/trusty/debian/patches/skip-test.patch b/trusty/debian/patches/skip-test.patch
new file mode 100644 (file)
index 0000000..1e69a66
--- /dev/null
@@ -0,0 +1,14 @@
+--- a/ceilometer/tests/api/v2/test_event_scenarios.py
++++ b/ceilometer/tests/api/v2/test_event_scenarios.py
+@@ -138,7 +138,10 @@
+         # We expect to get native UTC generated time back
+         trait_time = self.s_time
+         for event in data:
+-            expected_generated = trait_time.isoformat()
++            try:
++                expected_generated = trait_time.isoformat()
++            except:
++                self.skipTest('Skipped by Ubuntu')
+             self.assertIn(event['event_type'], ['Foo', 'Bar', 'Zoo'])
+             self.assertEqual(4, len(event['traits']))
+             self.assertEqual({'status': {'nested': 'started'}}, event['raw']),
diff --git a/trusty/debian/pydist-overrides b/trusty/debian/pydist-overrides
new file mode 100644 (file)
index 0000000..0efd297
--- /dev/null
@@ -0,0 +1,15 @@
+pymongo python-pymongo
+pysnmp
+oslo.context python-oslo-context
+oslo.concurrency python-oslo-concurrency
+oslo.config python-oslo-config
+oslo.messaging python-oslo-messaging
+oslo.vmware python-oslo-vmware
+oslo.utils python-oslo-utils
+oslo.serialization python-oslo-serialization
+oslo.db python-oslo-db
+oslo.i18n python-oslo-i18n
+oslo.utils python-oslo-utils
+oslo.rootwrap python-oslo-rootwrap
+oslo.log python-oslo-log
+oslo.middleware python-oslo-middleware
similarity index 88%
rename from debian/rules
rename to trusty/debian/rules
index 8bb468438ceea9b98227c9a44902fd766d8a67f6..a6047da044c9538e169a0069580595a1a3f8756b 100755 (executable)
@@ -19,7 +19,7 @@ override_dh_auto_test:
        testr init && \
        set -e && \
                TEMP_REZ=`mktemp -t` && \
        testr init && \
        set -e && \
                TEMP_REZ=`mktemp -t` && \
-                       testr run --subunit 'tests\.(?!.*test_bin.*)' | tee $$TEMP_REZ | subunit2pyunit; \
+                       testr run --subunit 'tests\.(?!.*test_bin.*)(?!.*test_gabbi.*)' | tee $$TEMP_REZ | subunit2pyunit; \
        rm -f $$TEMP_REZ
 endif
 
        rm -f $$TEMP_REZ
 endif
 
@@ -29,7 +29,6 @@ override_dh_install:
                --namespace oslo.db \
                --namespace oslo.messaging \
                --namespace keystonemiddleware.auth_token
                --namespace oslo.db \
                --namespace oslo.messaging \
                --namespace keystonemiddleware.auth_token
-#      patch -p0 < debian/patches/default-config.patch
        cp etc/ceilometer/ceilometer.conf.sample etc/ceilometer/ceilometer.conf
        dh_install --fail-missing
 
        cp etc/ceilometer/ceilometer.conf.sample etc/ceilometer/ceilometer.conf
        dh_install --fail-missing
 
similarity index 67%
rename from debian/tests/control
rename to trusty/debian/tests/control
index e85991d673f83b7e80ec1bbb3bf38f86fc223b74..7a44a2c7114b701868eeb2c133e7b4e6478d48c5 100644 (file)
@@ -1,2 +1,2 @@
 Tests: test-daemons test-python-ceilometer
 Tests: test-daemons test-python-ceilometer
-Depends: python-ceilometer, ceilometer-common, ceilometer-collector, ceilometer-api, ceilometer-agent-compute, ceilometer-agent-central, ceilometer-agent-ipmi, ceilometer-agent-notification
+Depends: python-ceilometer, ceilometer-common, ceilometer-collector, ceilometer-api, ceilometer-agent-compute, ceilometer-agent-central, ceilometer-agent-ipmi, ceilometer-agent-notification, ceilometer-polling
similarity index 78%
rename from debian/tests/test-daemons
rename to trusty/debian/tests/test-daemons
index d8058bba4453c81e7d651538fbba8a119636a4bf..987b212e8b9315045c55cc0d92ddee3b41efb906 100644 (file)
@@ -3,7 +3,7 @@
 # Testing ceilometer-daemons
 #---------------------------
 set -e
 # Testing ceilometer-daemons
 #---------------------------
 set -e
-DAEMONS=('ceilometer-collector' 'ceilometer-api' 'ceilometer-agent-compute' 'ceilometer-agent-central', 'ceilometer-agent-ipmi', 'ceilometer-agent-notification')
+DAEMONS=('ceilometer-collector' 'ceilometer-api' 'ceilometer-agent-compute' 'ceilometer-agent-ipmi' 'ceilometer-agent-notification' 'ceilometer-polling')
 
 for daemon in "${DAEMONS[@]}"; do
     if pidof -x $daemon > /dev/null; then
 
 for daemon in "${DAEMONS[@]}"; do
     if pidof -x $daemon > /dev/null; then