Move ceilometer to 8.0 branch 45/13945/4 pre_1529660_master
authordtrishkin <dtrishkin@mirantis.com>
Mon, 16 Nov 2015 18:21:14 +0000 (21:21 +0300)
committerIgor Yozhikov <iyozhikov@mirantis.com>
Tue, 17 Nov 2015 10:51:01 +0000 (13:51 +0300)
Change-Id: I3050c173967ca2fd02909c8adc1bdd2b3a442d48

36 files changed:
centos7/rpm/SOURCES/ceilometer-dist.conf [moved from rpm/SOURCES/ceilometer-dist.conf with 100% similarity]
centos7/rpm/SOURCES/ceilometer-rootwrap-sudoers [moved from rpm/SOURCES/ceilometer-rootwrap-sudoers with 100% similarity]
centos7/rpm/SOURCES/ceilometer.conf.sample [new file with mode: 0644]
centos7/rpm/SOURCES/ceilometer.logrotate [moved from rpm/SOURCES/ceilometer.logrotate with 100% similarity]
centos7/rpm/SOURCES/openstack-ceilometer-alarm-evaluator.service [moved from rpm/SOURCES/openstack-ceilometer-alarm-evaluator.service with 100% similarity]
centos7/rpm/SOURCES/openstack-ceilometer-alarm-notifier.service [moved from rpm/SOURCES/openstack-ceilometer-alarm-notifier.service with 100% similarity]
centos7/rpm/SOURCES/openstack-ceilometer-api.service [moved from rpm/SOURCES/openstack-ceilometer-api.service with 100% similarity]
centos7/rpm/SOURCES/openstack-ceilometer-central.service [moved from rpm/SOURCES/openstack-ceilometer-central.service with 60% similarity]
centos7/rpm/SOURCES/openstack-ceilometer-collector.service [moved from rpm/SOURCES/openstack-ceilometer-collector.service with 100% similarity]
centos7/rpm/SOURCES/openstack-ceilometer-compute.service [moved from rpm/SOURCES/openstack-ceilometer-compute.service with 60% similarity]
centos7/rpm/SOURCES/openstack-ceilometer-ipmi.service [moved from rpm/SOURCES/openstack-ceilometer-ipmi.service with 60% similarity]
centos7/rpm/SOURCES/openstack-ceilometer-newdeps.patch [new file with mode: 0644]
centos7/rpm/SOURCES/openstack-ceilometer-notification.service [moved from rpm/SOURCES/openstack-ceilometer-notification.service with 100% similarity]
centos7/rpm/SOURCES/openstack-ceilometer-polling [new file with mode: 0644]
centos7/rpm/SOURCES/openstack-ceilometer-polling.service [moved from rpm/SOURCES/openstack-ceilometer-polling.service with 100% similarity]
centos7/rpm/SOURCES/sources [new file with mode: 0644]
centos7/rpm/SPECS/openstack-ceilometer.spec [moved from rpm/SPECS/openstack-ceilometer.spec with 59% similarity]
rpm/SOURCES/openstack-ceilometer-alarm-evaluator.init [deleted file]
rpm/SOURCES/openstack-ceilometer-alarm-evaluator.upstart [deleted file]
rpm/SOURCES/openstack-ceilometer-alarm-notifier.init [deleted file]
rpm/SOURCES/openstack-ceilometer-alarm-notifier.upstart [deleted file]
rpm/SOURCES/openstack-ceilometer-api.init [deleted file]
rpm/SOURCES/openstack-ceilometer-api.upstart [deleted file]
rpm/SOURCES/openstack-ceilometer-central.init [deleted file]
rpm/SOURCES/openstack-ceilometer-central.upstart [deleted file]
rpm/SOURCES/openstack-ceilometer-collector.init [deleted file]
rpm/SOURCES/openstack-ceilometer-collector.upstart [deleted file]
rpm/SOURCES/openstack-ceilometer-compute.init [deleted file]
rpm/SOURCES/openstack-ceilometer-compute.upstart [deleted file]
rpm/SOURCES/openstack-ceilometer-ipmi.init [deleted file]
rpm/SOURCES/openstack-ceilometer-ipmi.upstart [deleted file]
rpm/SOURCES/openstack-ceilometer-notification.init [deleted file]
rpm/SOURCES/openstack-ceilometer-notification.upstart [deleted file]
rpm/SOURCES/openstack-ceilometer-polling.init [deleted file]
rpm/SOURCES/openstack-ceilometer-polling.upstart [deleted file]
tests/runtests.sh

diff --git a/centos7/rpm/SOURCES/ceilometer.conf.sample b/centos7/rpm/SOURCES/ceilometer.conf.sample
new file mode 100644 (file)
index 0000000..34bb687
--- /dev/null
@@ -0,0 +1,1176 @@
+[DEFAULT]
+
+#
+# Options defined in oslo.messaging
+#
+
+# Use durable queues in amqp. (boolean value)
+# Deprecated group/name - [DEFAULT]/rabbit_durable_queues
+#amqp_durable_queues=false
+
+# Auto-delete queues in amqp. (boolean value)
+#amqp_auto_delete=false
+
+# Size of RPC connection pool. (integer value)
+#rpc_conn_pool_size=30
+
+# Qpid broker hostname. (string value)
+#qpid_hostname=localhost
+
+# Qpid broker port. (integer value)
+#qpid_port=5672
+
+# Qpid HA cluster host:port pairs. (list value)
+#qpid_hosts=$qpid_hostname:$qpid_port
+
+# Username for Qpid connection. (string value)
+#qpid_username=
+
+# Password for Qpid connection. (string value)
+#qpid_password=
+
+# Space separated list of SASL mechanisms to use for auth.
+# (string value)
+#qpid_sasl_mechanisms=
+
+# Seconds between connection keepalive heartbeats. (integer
+# value)
+#qpid_heartbeat=60
+
+# Transport to use, either 'tcp' or 'ssl'. (string value)
+#qpid_protocol=tcp
+
+# Whether to disable the Nagle algorithm. (boolean value)
+#qpid_tcp_nodelay=true
+
+# The number of prefetched messages held by receiver. (integer
+# value)
+#qpid_receiver_capacity=1
+
+# The qpid topology version to use.  Version 1 is what was
+# originally used by impl_qpid.  Version 2 includes some
+# backwards-incompatible changes that allow broker federation
+# to work.  Users should update to version 2 when they are
+# able to take everything down, as it requires a clean break.
+# (integer value)
+#qpid_topology_version=1
+
+# SSL version to use (valid only if SSL enabled). valid values
+# are TLSv1, SSLv23 and SSLv3. SSLv2 may be available on some
+# distributions. (string value)
+#kombu_ssl_version=
+
+# SSL key file (valid only if SSL enabled). (string value)
+#kombu_ssl_keyfile=
+
+# SSL cert file (valid only if SSL enabled). (string value)
+#kombu_ssl_certfile=
+
+# SSL certification authority file (valid only if SSL
+# enabled). (string value)
+#kombu_ssl_ca_certs=
+
+# How long to wait before reconnecting in response to an AMQP
+# consumer cancel notification. (floating point value)
+#kombu_reconnect_delay=1.0
+
+# The RabbitMQ broker address where a single node is used.
+# (string value)
+#rabbit_host=localhost
+
+# The RabbitMQ broker port where a single node is used.
+# (integer value)
+#rabbit_port=5672
+
+# RabbitMQ HA cluster host:port pairs. (list value)
+#rabbit_hosts=$rabbit_host:$rabbit_port
+
+# Connect over SSL for RabbitMQ. (boolean value)
+#rabbit_use_ssl=false
+
+# The RabbitMQ userid. (string value)
+#rabbit_userid=guest
+
+# The RabbitMQ password. (string value)
+#rabbit_password=guest
+
+# the RabbitMQ login method (string value)
+#rabbit_login_method=AMQPLAIN
+
+# The RabbitMQ virtual host. (string value)
+#rabbit_virtual_host=/
+
+# How frequently to retry connecting with RabbitMQ. (integer
+# value)
+#rabbit_retry_interval=1
+
+# How long to backoff for between retries when connecting to
+# RabbitMQ. (integer value)
+#rabbit_retry_backoff=2
+
+# Maximum number of RabbitMQ connection retries. Default is 0
+# (infinite retry count). (integer value)
+#rabbit_max_retries=0
+
+# Use HA queues in RabbitMQ (x-ha-policy: all). If you change
+# this option, you must wipe the RabbitMQ database. (boolean
+# value)
+#rabbit_ha_queues=false
+
+# If passed, use a fake RabbitMQ provider. (boolean value)
+#fake_rabbit=false
+
+# ZeroMQ bind address. Should be a wildcard (*), an ethernet
+# interface, or IP. The "host" option should point or resolve
+# to this address. (string value)
+#rpc_zmq_bind_address=*
+
+# MatchMaker driver. (string value)
+#rpc_zmq_matchmaker=oslo.messaging._drivers.matchmaker.MatchMakerLocalhost
+
+# ZeroMQ receiver listening port. (integer value)
+#rpc_zmq_port=9501
+
+# Number of ZeroMQ contexts, defaults to 1. (integer value)
+#rpc_zmq_contexts=1
+
+# Maximum number of ingress messages to locally buffer per
+# topic. Default is unlimited. (integer value)
+#rpc_zmq_topic_backlog=<None>
+
+# Directory for holding IPC sockets. (string value)
+#rpc_zmq_ipc_dir=/var/run/openstack
+
+# Name of this node. Must be a valid hostname, FQDN, or IP
+# address. Must match "host" option, if running Nova. (string
+# value)
+#rpc_zmq_host=ceilometer
+
+# Seconds to wait before a cast expires (TTL). Only supported
+# by impl_zmq. (integer value)
+#rpc_cast_timeout=30
+
+# Heartbeat frequency. (integer value)
+#matchmaker_heartbeat_freq=300
+
+# Heartbeat time-to-live. (integer value)
+#matchmaker_heartbeat_ttl=600
+
+# Size of RPC greenthread pool. (integer value)
+#rpc_thread_pool_size=64
+
+# Driver or drivers to handle sending notifications. (multi
+# valued)
+#notification_driver=
+
+# AMQP topic used for OpenStack notifications. (list value)
+# Deprecated group/name - [rpc_notifier2]/topics
+#notification_topics=notifications
+
+# Seconds to wait for a response from a call. (integer value)
+#rpc_response_timeout=60
+
+# A URL representing the messaging driver to use and its full
+# configuration. If not set, we fall back to the rpc_backend
+# option and driver specific configuration. (string value)
+#transport_url=<None>
+
+# The messaging driver to use, defaults to rabbit. Other
+# drivers include qpid and zmq. (string value)
+#rpc_backend=rabbit
+
+# The default exchange under which topics are scoped. May be
+# overridden by an exchange name specified in the
+# transport_url option. (string value)
+#control_exchange=openstack
+
+
+#
+# Options defined in ceilometer.middleware
+#
+
+# Exchanges name to listen for notifications. (multi valued)
+#http_control_exchanges=nova
+#http_control_exchanges=glance
+#http_control_exchanges=neutron
+#http_control_exchanges=cinder
+
+
+#
+# Options defined in ceilometer.nova_client
+#
+
+# Allow novaclient's debug log output. (boolean value)
+#nova_http_log_debug=false
+
+
+#
+# Options defined in ceilometer.pipeline
+#
+
+# Configuration file for pipeline definition. (string value)
+#pipeline_cfg_file=pipeline.yaml
+
+
+#
+# Options defined in ceilometer.sample
+#
+
+# Source for samples emitted on this instance. (string value)
+# Deprecated group/name - [DEFAULT]/counter_source
+#sample_source=openstack
+
+
+#
+# Options defined in ceilometer.service
+#
+
+# Name of this node, which must be valid in an AMQP key. Can
+# be an opaque identifier. For ZeroMQ only, must be a valid
+# host name, FQDN, or IP address. (string value)
+#host=ceilometer
+
+# Number of workers for collector service. A single collector
+# is enabled by default. (integer value)
+#collector_workers=1
+
+# Number of workers for notification service. A single
+# notification agent is enabled by default. (integer value)
+#notification_workers=1
+
+
+#
+# Options defined in ceilometer.utils
+#
+
+# Path to the rootwrap configuration file touse for running
+# commands as root (string value)
+#rootwrap_config=/etc/ceilometer/rootwrap.conf
+
+
+#
+# Options defined in ceilometer.api.app
+#
+
+# Configuration file for WSGI definition of API. (string
+# value)
+#api_paste_config=api_paste.ini
+
+
+#
+# Options defined in ceilometer.compute.notifications
+#
+
+# Exchange name for Nova notifications. (string value)
+#nova_control_exchange=nova
+
+
+#
+# Options defined in ceilometer.compute.util
+#
+
+# List of metadata prefixes reserved for metering use. (list
+# value)
+#reserved_metadata_namespace=metering.
+
+# Limit on length of reserved metadata values. (integer value)
+#reserved_metadata_length=256
+
+
+#
+# Options defined in ceilometer.compute.virt.inspector
+#
+
+# Inspector to use for inspecting the hypervisor layer.
+# (string value)
+#hypervisor_inspector=libvirt
+
+
+#
+# Options defined in ceilometer.compute.virt.libvirt.inspector
+#
+
+# Libvirt domain type (valid options are: kvm, lxc, qemu, uml,
+# xen). (string value)
+#libvirt_type=kvm
+
+# Override the default libvirt URI (which is dependent on
+# libvirt_type). (string value)
+#libvirt_uri=
+
+
+#
+# Options defined in ceilometer.data_processing.notifications
+#
+
+# Exchange name for Data Processing notifications (string
+# value)
+#sahara_control_exchange=sahara
+
+
+#
+# Options defined in ceilometer.dispatcher
+#
+
+# Dispatcher to process data. (multi valued)
+#dispatcher=database
+
+
+#
+# Options defined in ceilometer.identity.notifications
+#
+
+# Exchange name for Keystone notifications. (string value)
+#keystone_control_exchange=keystone
+
+
+#
+# Options defined in ceilometer.image.glance
+#
+
+# Number of items to request in each paginated Glance API
+# request (parameter used by glancecelient). If this is less
+# than or equal to 0, page size is not specified (default
+# value in glanceclient is used). (integer value)
+#glance_page_size=0
+
+
+#
+# Options defined in ceilometer.image.notifications
+#
+
+# Exchange name for Glance notifications. (string value)
+#glance_control_exchange=glance
+
+
+#
+# Options defined in ceilometer.ipmi.notifications.ironic
+#
+
+# Exchange name for Ironic notifications. (string value)
+#ironic_exchange=ironic
+
+
+#
+# Options defined in ceilometer.network.notifications
+#
+
+# Exchange name for Neutron notifications. (string value)
+# Deprecated group/name - [DEFAULT]/quantum_control_exchange
+#neutron_control_exchange=neutron
+
+
+#
+# Options defined in ceilometer.objectstore.swift
+#
+
+# Swift reseller prefix. Must be on par with reseller_prefix
+# in proxy-server.conf. (string value)
+#reseller_prefix=AUTH_
+
+
+#
+# Options defined in ceilometer.openstack.common.eventlet_backdoor
+#
+
+# Enable eventlet backdoor.  Acceptable values are 0, <port>,
+# and <start>:<end>, where 0 results in listening on a random
+# tcp port number; <port> results in listening on the
+# specified port number (and not enabling backdoor if that
+# port is in use); and <start>:<end> results in listening on
+# the smallest unused port number within the specified range
+# of port numbers.  The chosen port is displayed in the
+# service's log file. (string value)
+#backdoor_port=<None>
+
+
+#
+# Options defined in ceilometer.openstack.common.lockutils
+#
+
+# Enables or disables inter-process locks. (boolean value)
+#disable_process_locking=false
+
+# Directory to use for lock files. (string value)
+#lock_path=<None>
+
+
+#
+# Options defined in ceilometer.openstack.common.log
+#
+
+# Print debugging output (set logging level to DEBUG instead
+# of default WARNING level). (boolean value)
+#debug=false
+
+# Print more verbose output (set logging level to INFO instead
+# of default WARNING level). (boolean value)
+#verbose=false
+
+# Log output to standard error. (boolean value)
+#use_stderr=true
+
+# Format string to use for log messages with context. (string
+# value)
+#logging_context_format_string=%(asctime)s.%(msecs)03d %(process)d %(levelname)s %(name)s [%(request_id)s %(user_identity)s] %(instance)s%(message)s
+
+# Format string to use for log messages without context.
+# (string value)
+#logging_default_format_string=%(asctime)s.%(msecs)03d %(process)d %(levelname)s %(name)s [-] %(instance)s%(message)s
+
+# Data to append to log format when level is DEBUG. (string
+# value)
+#logging_debug_format_suffix=%(funcName)s %(pathname)s:%(lineno)d
+
+# Prefix each line of exception output with this format.
+# (string value)
+#logging_exception_prefix=%(asctime)s.%(msecs)03d %(process)d TRACE %(name)s %(instance)s
+
+# List of logger=LEVEL pairs. (list value)
+#default_log_levels=amqp=WARN,amqplib=WARN,boto=WARN,qpid=WARN,sqlalchemy=WARN,suds=INFO,oslo.messaging=INFO,iso8601=WARN,requests.packages.urllib3.connectionpool=WARN,urllib3.connectionpool=WARN,websocket=WARN,keystonemiddleware=WARN,routes.middleware=WARN,stevedore=WARN
+
+# Enables or disables publication of error events. (boolean
+# value)
+#publish_errors=false
+
+# Enables or disables fatal status of deprecations. (boolean
+# value)
+#fatal_deprecations=false
+
+# The format for an instance that is passed with the log
+# message. (string value)
+#instance_format="[instance: %(uuid)s] "
+
+# The format for an instance UUID that is passed with the log
+# message. (string value)
+#instance_uuid_format="[instance: %(uuid)s] "
+
+# The name of a logging configuration file. This file is
+# appended to any existing logging configuration files. For
+# details about logging configuration files, see the Python
+# logging module documentation. (string value)
+# Deprecated group/name - [DEFAULT]/log_config
+#log_config_append=<None>
+
+# DEPRECATED. A logging.Formatter log message format string
+# which may use any of the available logging.LogRecord
+# attributes. This option is deprecated.  Please use
+# logging_context_format_string and
+# logging_default_format_string instead. (string value)
+#log_format=<None>
+
+# Format string for %%(asctime)s in log records. Default:
+# %(default)s . (string value)
+#log_date_format=%Y-%m-%d %H:%M:%S
+
+# (Optional) Name of log file to output to. If no default is
+# set, logging will go to stdout. (string value)
+# Deprecated group/name - [DEFAULT]/logfile
+#log_file=<None>
+
+# (Optional) The base directory used for relative --log-file
+# paths. (string value)
+# Deprecated group/name - [DEFAULT]/logdir
+#log_dir=<None>
+
+# Use syslog for logging. Existing syslog format is DEPRECATED
+# during I, and will change in J to honor RFC5424. (boolean
+# value)
+#use_syslog=false
+
+# (Optional) Enables or disables syslog rfc5424 format for
+# logging. If enabled, prefixes the MSG part of the syslog
+# message with APP-NAME (RFC5424). The format without the APP-
+# NAME is deprecated in I, and will be removed in J. (boolean
+# value)
+#use_syslog_rfc_format=false
+
+# Syslog facility to receive log lines. (string value)
+#syslog_log_facility=LOG_USER
+
+
+#
+# Options defined in ceilometer.openstack.common.policy
+#
+
+# The JSON file that defines policies. (string value)
+#policy_file=policy.json
+
+# Default rule. Enforced when a requested rule is not found.
+# (string value)
+#policy_default_rule=default
+
+
+#
+# Options defined in ceilometer.orchestration.notifications
+#
+
+# Exchange name for Heat notifications (string value)
+#heat_control_exchange=heat
+
+
+#
+# Options defined in ceilometer.profiler.notifications
+#
+
+# Exchange name for DBaaS notifications (string value)
+#trove_control_exchange=trove
+
+
+#
+# Options defined in ceilometer.storage
+#
+
+# DEPRECATED - Database connection string. (string value)
+#database_connection=<None>
+
+
+#
+# Options defined in ceilometer.volume.notifications
+#
+
+# Exchange name for Cinder notifications. (string value)
+#cinder_control_exchange=cinder
+
+
+[alarm]
+
+#
+# Options defined in ceilometer.alarm.notifier.rest
+#
+
+# SSL Client certificate for REST notifier. (string value)
+#rest_notifier_certificate_file=
+
+# SSL Client private key for REST notifier. (string value)
+#rest_notifier_certificate_key=
+
+# Whether to verify the SSL Server certificate when calling
+# alarm action. (boolean value)
+#rest_notifier_ssl_verify=true
+
+# Number of retries for REST notifier (integer value)
+#rest_notifier_max_retries=0
+
+
+#
+# Options defined in ceilometer.alarm.rpc
+#
+
+# The topic that ceilometer uses for alarm notifier messages.
+# (string value)
+#notifier_rpc_topic=alarm_notifier
+
+# The topic that ceilometer uses for alarm partition
+# coordination messages. DEPRECATED: RPC-based
+# partitionedalarm evaluation service will be removed in Kilo
+# in favour of the default alarm evaluation service using tooz
+# for partitioning. (string value)
+#partition_rpc_topic=alarm_partition_coordination
+
+
+#
+# Options defined in ceilometer.alarm.service
+#
+
+# Period of evaluation cycle, should be >= than configured
+# pipeline interval for collection of underlying metrics.
+# (integer value)
+# Deprecated group/name - [alarm]/threshold_evaluation_interval
+#evaluation_interval=60
+
+
+#
+# Options defined in ceilometer.api.controllers.v2
+#
+
+# Record alarm change events. (boolean value)
+#record_history=true
+
+# Maximum number of alarms defined for a user. (integer value)
+#user_alarm_quota=<None>
+
+# Maximum number of alarms defined for a project. (integer
+# value)
+#project_alarm_quota=<None>
+
+
+#
+# Options defined in ceilometer.cmd.alarm
+#
+
+# Driver to use for alarm evaluation service. DEPRECATED:
+# "singleton" and "partitioned" alarm evaluator services will
+# be removed in Kilo in favour of the default alarm evaluation
+# service using tooz for partitioning. (string value)
+#evaluation_service=default
+
+
+[api]
+
+#
+# Options defined in ceilometer.api
+#
+
+# The port for the ceilometer API server. (integer value)
+# Deprecated group/name - [DEFAULT]/metering_api_port
+#port=8777
+
+# The listen IP for the ceilometer API server. (string value)
+#host=0.0.0.0
+
+# Set it to False if your environment does not need or have
+# dns server, otherwise it will delay the response from api.
+# (boolean value)
+#enable_reverse_dns_lookup=false
+
+
+#
+# Options defined in ceilometer.api.app
+#
+
+# Toggle Pecan Debug Middleware. Defaults to global debug
+# value. (boolean value)
+#pecan_debug=false
+
+
+[central]
+
+#
+# Options defined in ceilometer.central.manager
+#
+
+# Work-load partitioning group prefix. Use only if you want to
+# run multiple central agents with different config files. For
+# each sub-group of the central agent pool with the same
+# partitioning_group_prefix a disjoint subset of pollsters
+# should be loaded. (string value)
+#partitioning_group_prefix=<None>
+
+
+[collector]
+
+#
+# Options defined in ceilometer.collector
+#
+
+# Address to which the UDP socket is bound. Set to an empty
+# string to disable. (string value)
+#udp_address=0.0.0.0
+
+# Port to which the UDP socket is bound. (integer value)
+#udp_port=4952
+
+# Requeue the sample on the collector sample queue when the
+# collector fails to dispatch it. This is only valid if the
+# sample come from the notifier publisher (boolean value)
+#requeue_sample_on_dispatcher_error=false
+
+
+[compute]
+
+#
+# Options defined in ceilometer.compute.discovery
+#
+
+# Enable work-load partitioning, allowing multiple compute
+# agents to be run simultaneously. (boolean value)
+#workload_partitioning=false
+
+
+[coordination]
+
+#
+# Options defined in ceilometer.coordination
+#
+
+# The backend URL to use for distributed coordination. If left
+# empty, per-deployment central agent and per-host compute
+# agent won't do workload partitioning and will only function
+# correctly if a single instance of that service is running.
+# (string value)
+#backend_url=<None>
+
+# Number of seconds between heartbeats for distributed
+# coordination (float) (floating point value)
+#heartbeat=1.0
+
+
+[database]
+
+#
+# Options defined in ceilometer.storage
+#
+
+# Number of seconds that samples are kept in the database for
+# (<= 0 means forever). (integer value)
+#time_to_live=-1
+
+# The connection string used to connect to the meteting
+# database. (if unset, connection is used) (string value)
+#metering_connection=<None>
+
+# The connection string used to connect to the alarm database.
+# (if unset, connection is used) (string value)
+#alarm_connection=<None>
+
+
+[dispatcher_file]
+
+#
+# Options defined in ceilometer.dispatcher.file
+#
+
+# Name and the location of the file to record meters. (string
+# value)
+#file_path=<None>
+
+# The max size of the file. (integer value)
+#max_bytes=0
+
+# The max number of the files to keep. (integer value)
+#backup_count=0
+
+
+[event]
+
+#
+# Options defined in ceilometer.event.converter
+#
+
+# Configuration file for event definitions. (string value)
+#definitions_cfg_file=event_definitions.yaml
+
+# Drop notifications if no event definition matches.
+# (Otherwise, we convert them with just the default traits)
+# (boolean value)
+#drop_unmatched_notifications=false
+
+
+[hardware]
+
+#
+# Options defined in ceilometer.hardware.discovery
+#
+
+# URL scheme to use for hardware nodes (string value)
+#url_scheme=snmp://
+
+# SNMPd user name of all nodes running in the cloud. (string
+# value)
+#readonly_user_name=ro_snmp_user
+
+# SNMPd password of all the nodes running in the cloud (string
+# value)
+#readonly_user_password=password
+
+
+[ipmi]
+
+#
+# Options defined in ceilometer.ipmi.platform.intel_node_manager
+#
+
+# Number of retries upon Intel Node Manager initialization
+# failure (integer value)
+#node_manager_init_retry=3
+
+
+[keystone_authtoken]
+
+#
+# Options defined in keystonemiddleware.auth_token
+#
+
+# Prefix to prepend at the beginning of the path. Deprecated,
+# use identity_uri. (string value)
+#auth_admin_prefix=
+
+# Host providing the admin Identity API endpoint. Deprecated,
+# use identity_uri. (string value)
+#auth_host=127.0.0.1
+
+# Port of the admin Identity API endpoint. Deprecated, use
+# identity_uri. (integer value)
+#auth_port=35357
+
+# Protocol of the admin Identity API endpoint (http or https).
+# Deprecated, use identity_uri. (string value)
+#auth_protocol=https
+
+# Complete public Identity API endpoint (string value)
+#auth_uri=<None>
+
+# Complete admin Identity API endpoint. This should specify
+# the unversioned root endpoint e.g. https://localhost:35357/
+# (string value)
+#identity_uri=<None>
+
+# API version of the admin Identity API endpoint (string
+# value)
+#auth_version=<None>
+
+# Do not handle authorization requests within the middleware,
+# but delegate the authorization decision to downstream WSGI
+# components (boolean value)
+#delay_auth_decision=false
+
+# Request timeout value for communicating with Identity API
+# server. (boolean value)
+#http_connect_timeout=<None>
+
+# How many times are we trying to reconnect when communicating
+# with Identity API Server. (integer value)
+#http_request_max_retries=3
+
+# This option is deprecated and may be removed in a future
+# release. Single shared secret with the Keystone
+# configuration used for bootstrapping a Keystone
+# installation, or otherwise bypassing the normal
+# authentication process. This option should not be used, use
+# `admin_user` and `admin_password` instead. (string value)
+#admin_token=<None>
+
+# Keystone account username (string value)
+#admin_user=<None>
+
+# Keystone account password (string value)
+#admin_password=<None>
+
+# Keystone service account tenant name to validate user tokens
+# (string value)
+#admin_tenant_name=admin
+
+# Env key for the swift cache (string value)
+#cache=<None>
+
+# Required if Keystone server requires client certificate
+# (string value)
+#certfile=<None>
+
+# Required if Keystone server requires client certificate
+# (string value)
+#keyfile=<None>
+
+# A PEM encoded Certificate Authority to use when verifying
+# HTTPs connections. Defaults to system CAs. (string value)
+#cafile=<None>
+
+# Verify HTTPS connections. (boolean value)
+#insecure=false
+
+# Directory used to cache files related to PKI tokens (string
+# value)
+#signing_dir=<None>
+
+# Optionally specify a list of memcached server(s) to use for
+# caching. If left undefined, tokens will instead be cached
+# in-process. (list value)
+# Deprecated group/name - [DEFAULT]/memcache_servers
+#memcached_servers=<None>
+
+# In order to prevent excessive effort spent validating
+# tokens, the middleware caches previously-seen tokens for a
+# configurable duration (in seconds). Set to -1 to disable
+# caching completely. (integer value)
+#token_cache_time=300
+
+# Determines the frequency at which the list of revoked tokens
+# is retrieved from the Identity service (in seconds). A high
+# number of revocation events combined with a low cache
+# duration may significantly reduce performance. (integer
+# value)
+#revocation_cache_time=10
+
+# (optional) if defined, indicate whether token data should be
+# authenticated or authenticated and encrypted. Acceptable
+# values are MAC or ENCRYPT.  If MAC, token data is
+# authenticated (with HMAC) in the cache. If ENCRYPT, token
+# data is encrypted and authenticated in the cache. If the
+# value is not one of these options or empty, auth_token will
+# raise an exception on initialization. (string value)
+#memcache_security_strategy=<None>
+
+# (optional, mandatory if memcache_security_strategy is
+# defined) this string is used for key derivation. (string
+# value)
+#memcache_secret_key=<None>
+
+# (optional) number of seconds memcached server is considered
+# dead before it is tried again. (integer value)
+#memcache_pool_dead_retry=300
+
+# (optional) max total number of open connections to every
+# memcached server. (integer value)
+#memcache_pool_maxsize=10
+
+# (optional) socket timeout in seconds for communicating with
+# a memcache server. (integer value)
+#memcache_pool_socket_timeout=3
+
+# (optional) number of seconds a connection to memcached is
+# held unused in the pool before it is closed. (integer value)
+#memcache_pool_unused_timeout=60
+
+# (optional) number of seconds that an operation will wait to
+# get a memcache client connection from the pool. (integer
+# value)
+#memcache_pool_conn_get_timeout=10
+
+# (optional) use the advanced (eventlet safe) memcache client
+# pool. The advanced pool will only work under python 2.x.
+# (boolean value)
+#memcache_use_advanced_pool=false
+
+# (optional) indicate whether to set the X-Service-Catalog
+# header. If False, middleware will not ask for service
+# catalog on token validation and will not set the X-Service-
+# Catalog header. (boolean value)
+#include_service_catalog=true
+
+# Used to control the use and type of token binding. Can be
+# set to: "disabled" to not check token binding. "permissive"
+# (default) to validate binding information if the bind type
+# is of a form known to the server and ignore it if not.
+# "strict" like "permissive" but if the bind type is unknown
+# the token will be rejected. "required" any form of token
+# binding is needed to be allowed. Finally the name of a
+# binding method that must be present in tokens. (string
+# value)
+#enforce_token_bind=permissive
+
+# If true, the revocation list will be checked for cached
+# tokens. This requires that PKI tokens are configured on the
+# Keystone server. (boolean value)
+#check_revocations_for_cached=false
+
+# Hash algorithms to use for hashing PKI tokens. This may be a
+# single algorithm or multiple. The algorithms are those
+# supported by Python standard hashlib.new(). The hashes will
+# be tried in the order given, so put the preferred one first
+# for performance. The result of the first hash will be stored
+# in the cache. This will typically be set to multiple values
+# only while migrating from a less secure algorithm to a more
+# secure one. Once all the old tokens are expired this option
+# should be set to a single value for better performance.
+# (list value)
+#hash_algorithms=md5
+
+
+[matchmaker_redis]
+
+#
+# Options defined in oslo.messaging
+#
+
+# Host to locate redis. (string value)
+#host=127.0.0.1
+
+# Use this port to connect to redis host. (integer value)
+#port=6379
+
+# Password for Redis server (optional). (string value)
+#password=<None>
+
+
+[matchmaker_ring]
+
+#
+# Options defined in oslo.messaging
+#
+
+# Matchmaker ring file (JSON). (string value)
+# Deprecated group/name - [DEFAULT]/matchmaker_ringfile
+#ringfile=/etc/oslo/matchmaker_ring.json
+
+
+[notification]
+
+#
+# Options defined in ceilometer.notification
+#
+
+# Acknowledge message when event persistence fails. (boolean
+# value)
+#ack_on_event_error=true
+
+# Save event details. (boolean value)
+#store_events=false
+
+# Messaging URLs to listen for notifications. Example:
+# transport://user:pass@host1:port[,hostN:portN]/virtual_host
+# (DEFAULT/transport_url is used if empty) (multi valued)
+#messaging_urls=
+
+
+[publisher]
+
+#
+# Options defined in ceilometer.publisher.utils
+#
+
+# Secret value for signing metering messages. (string value)
+# Deprecated group/name - [DEFAULT]/metering_secret
+# Deprecated group/name - [publisher_rpc]/metering_secret
+#metering_secret=change this or be hacked
+
+
+[publisher_notifier]
+
+#
+# Options defined in ceilometer.publisher.messaging
+#
+
+# The topic that ceilometer uses for metering notifications.
+# (string value)
+#metering_topic=metering
+
+# The driver that ceilometer uses for metering notifications.
+# (string value)
+#metering_driver=messagingv2
+
+
+[publisher_rpc]
+
+#
+# Options defined in ceilometer.publisher.messaging
+#
+
+# The topic that ceilometer uses for metering messages.
+# (string value)
+#metering_topic=metering
+
+
+[service_credentials]
+
+#
+# Options defined in ceilometer.service
+#
+
+# User name to use for OpenStack service access. (string
+# value)
+#os_username=ceilometer
+
+# Password to use for OpenStack service access. (string value)
+#os_password=admin
+
+# Tenant ID to use for OpenStack service access. (string
+# value)
+#os_tenant_id=
+
+# Tenant name to use for OpenStack service access. (string
+# value)
+#os_tenant_name=admin
+
+# Certificate chain for SSL validation. (string value)
+#os_cacert=<None>
+
+# Auth URL to use for OpenStack service access. (string value)
+#os_auth_url=http://localhost:5000/v2.0
+
+# Region name to use for OpenStack service endpoints. (string
+# value)
+#os_region_name=<None>
+
+# Type of endpoint in Identity service catalog to use for
+# communication with OpenStack services. (string value)
+#os_endpoint_type=publicURL
+
+# Disables X.509 certificate validation when an SSL connection
+# to Identity Service is established. (boolean value)
+#insecure=false
+
+
+[service_types]
+
+#
+# Options defined in ceilometer.neutron_client
+#
+
+# Neutron service type. (string value)
+#neutron=network
+
+
+#
+# Options defined in ceilometer.nova_client
+#
+
+# Nova service type. (string value)
+#nova=compute
+
+
+#
+# Options defined in ceilometer.energy.kwapi
+#
+
+# Kwapi service type. (string value)
+#kwapi=energy
+
+
+#
+# Options defined in ceilometer.image.glance
+#
+
+# Glance service type. (string value)
+#glance=image
+
+
+#
+# Options defined in ceilometer.objectstore.swift
+#
+
+# Swift service type. (string value)
+#swift=object-store
+
+
+[vmware]
+
+#
+# Options defined in ceilometer.compute.virt.vmware.inspector
+#
+
+# IP address of the VMware Vsphere host (string value)
+#host_ip=
+
+# Username of VMware Vsphere (string value)
+#host_username=
+
+# Password of VMware Vsphere (string value)
+#host_password=
+
+# Number of times a VMware Vsphere API must be retried
+# (integer value)
+#api_retry_count=10
+
+# Sleep time in seconds for polling an ongoing async task
+# (floating point value)
+#task_poll_interval=0.5
+
+# Optional vim service WSDL location e.g
+# http://<server>/vimService.wsdl. Optional over-ride to
+# default location for bug work-arounds (string value)
+#wsdl_location=<None>
+
+
+[xenapi]
+
+#
+# Options defined in ceilometer.compute.virt.xenapi.inspector
+#
+
+# URL for connection to XenServer/Xen Cloud Platform (string
+# value)
+#connection_url=<None>
+
+# Username for connection to XenServer/Xen Cloud Platform
+# (string value)
+#connection_username=root
+
+# Password for connection to XenServer/Xen Cloud Platform
+# (string value)
+#connection_password=<None>
+
+# Timeout in seconds for XenAPI login. (integer value)
+#login_timeout=10
+
+
similarity index 60%
rename from rpm/SOURCES/openstack-ceilometer-central.service
rename to centos7/rpm/SOURCES/openstack-ceilometer-central.service
index 5a8a06b2268154eed038d60677244ae61af40180..462b7b53e975f62439c4436a1bf0ded0ebbf6e2a 100644 (file)
@@ -5,7 +5,7 @@ After=syslog.target network.target
 [Service]
 Type=simple
 User=ceilometer
-ExecStart=/usr/bin/ceilometer-agent-central --logfile /var/log/ceilometer/central.log
+ExecStart=/usr/bin/ceilometer-polling --polling-namespaces central --logfile /var/log/ceilometer/central.log
 
 [Install]
 WantedBy=multi-user.target
similarity index 60%
rename from rpm/SOURCES/openstack-ceilometer-compute.service
rename to centos7/rpm/SOURCES/openstack-ceilometer-compute.service
index db44e039536daa55fe2d09c5c1a269e1b64691b6..c25245204cca9198b84637d2079a8c65bc6f710d 100644 (file)
@@ -1,4 +1,3 @@
-
 [Unit]
 Description=OpenStack ceilometer compute agent
 After=syslog.target network.target
@@ -6,7 +5,7 @@ After=syslog.target network.target
 [Service]
 Type=simple
 User=ceilometer
-ExecStart=/usr/bin/ceilometer-agent-compute --logfile /var/log/ceilometer/compute.log
+ExecStart=/usr/bin/ceilometer-polling --polling-namespaces compute --logfile /var/log/ceilometer/compute.log
 
 [Install]
 WantedBy=multi-user.target
similarity index 60%
rename from rpm/SOURCES/openstack-ceilometer-ipmi.service
rename to centos7/rpm/SOURCES/openstack-ceilometer-ipmi.service
index 918db67099d78324a2b0e870d816f644a034d628..134f0709673aea5e2ed048b326ffc6e1210e272f 100644 (file)
@@ -5,7 +5,7 @@ After=syslog.target network.target
 [Service]
 Type=simple
 User=ceilometer
-ExecStart=/usr/bin/ceilometer-agent-ipmi --logfile /var/log/ceilometer/agent-ipmi.log
+ExecStart=/usr/bin/ceilometer-polling --polling-namespaces ipmi --logfile /var/log/ceilometer/agent-ipmi.log
 
 [Install]
 WantedBy=multi-user.target
diff --git a/centos7/rpm/SOURCES/openstack-ceilometer-newdeps.patch b/centos7/rpm/SOURCES/openstack-ceilometer-newdeps.patch
new file mode 100644 (file)
index 0000000..099a882
--- /dev/null
@@ -0,0 +1,25 @@
+diff -Naur ceilometer-2014.1.b2.orig/ceilometer/__init__.py ceilometer-2014.1.b2/ceilometer/__init__.py
+--- ceilometer-2014.1.b2.orig/ceilometer/__init__.py   2014-01-23 14:55:44.000000000 +0000
++++ ceilometer-2014.1.b2/ceilometer/__init__.py        2014-01-27 15:03:39.691353920 +0000
+@@ -0,0 +1,21 @@
++import sys
++import pkg_resources
++
++# If there is a conflicting non egg module,
++# i.e. an older standard system module installed,
++# then replace it with this requirement
++def replace_dist(requirement):
++    try:
++        return pkg_resources.require(requirement)
++    except pkg_resources.VersionConflict:
++        e = sys.exc_info()[1]
++        dist=e.args[0]
++        req=e.args[1]
++        if dist.key == req.key and not dist.location.endswith('.egg'):
++            del pkg_resources.working_set.by_key[dist.key]
++            # We assume there is no need to adjust sys.path
++            # and the associated pkg_resources.working_set.entries
++            return pkg_resources.require(requirement)
++
++replace_dist("WebOb >= 1.2")
++replace_dist("SQLAlchemy >= 0.7.3")
diff --git a/centos7/rpm/SOURCES/openstack-ceilometer-polling b/centos7/rpm/SOURCES/openstack-ceilometer-polling
new file mode 100644 (file)
index 0000000..c2fcada
--- /dev/null
@@ -0,0 +1 @@
+OPTIONS="--polling-namespace 'central' 'compute'"
diff --git a/centos7/rpm/SOURCES/sources b/centos7/rpm/SOURCES/sources
new file mode 100644 (file)
index 0000000..e69de29
similarity index 59%
rename from rpm/SPECS/openstack-ceilometer.spec
rename to centos7/rpm/SPECS/openstack-ceilometer.spec
index 89f23cf70a946ac9377104e0f78bc4e43ac86e63..5a9dcbff0ee0d745813dd1a3654bfd0f034ab0d2 100644 (file)
@@ -3,38 +3,23 @@
 %global pypi_name ceilometer
 
 Name:             openstack-ceilometer
-Version:          2015.1.0
-Release:          2%{?dist}
+# Liberty semver reset
+# https://review.openstack.org/#/q/I6a35fa0dda798fad93b804d00a46af80f08d475c,n,z
+Epoch:            1
+Version:          5.0.0.0rc1
+Release:          1%{?dist}~mos8.0.1
 Summary:          OpenStack measurement collection service
 
 Group:            Applications/System
 License:          ASL 2.0
 URL:              https://wiki.openstack.org/wiki/Ceilometer
-Source0:          http://tarballs.openstack.org/%{pypi_name}/%{pypi_name}-%{version}.tar.gz
+Source0:          %{pypi_name}-%{version}.tar.gz
 Source1:          %{pypi_name}-dist.conf
 Source2:          %{pypi_name}.logrotate
-Source3:          ceilometer-rootwrap-sudoers
+Source3:          %{pypi_name}.conf.sample
+Source4:          ceilometer-rootwrap-sudoers
+Source5:          openstack-ceilometer-polling
 
-%if 0%{?rhel} && 0%{?rhel} <= 6
-Source10:         %{name}-api.init
-Source100:        %{name}-api.upstart
-Source11:         %{name}-collector.init
-Source110:        %{name}-collector.upstart
-Source12:         %{name}-compute.init
-Source120:        %{name}-compute.upstart
-Source13:         %{name}-central.init
-Source130:        %{name}-central.upstart
-Source14:         %{name}-alarm-notifier.init
-Source140:        %{name}-alarm-notifier.upstart
-Source15:         %{name}-alarm-evaluator.init
-Source150:        %{name}-alarm-evaluator.upstart
-Source16:         %{name}-notification.init
-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
 Source12:         %{name}-compute.service
@@ -44,34 +29,16 @@ Source15:         %{name}-alarm-evaluator.service
 Source16:         %{name}-notification.service
 Source17:         %{name}-ipmi.service
 Source18:         %{name}-polling.service
-%endif
-
-#
-# patches_base=2014.1.1
-#
 
 BuildArch:        noarch
 BuildRequires:    intltool
-BuildRequires:    python-sphinx10
+BuildRequires:    python-sphinx
 BuildRequires:    python-setuptools
-BuildRequires:    python-pbr >= 0.10
+BuildRequires:    python-pbr
 BuildRequires:    python-d2to1
 BuildRequires:    python2-devel
-BuildRequires:    openstack-utils
-
-# These are required to generate ceilometer configuration file
-BuildRequires:    python-tox
-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
-BuildRequires:    python-sqlalchemy >= 0.9.7
-BuildRequires:    python-webob >= 1.2.3
 
-%if ! (0%{?rhel} && 0%{?rhel} <= 6)
-BuildRequires: systemd-units
-%endif
+BuildRequires:    systemd-units
 
 %description
 OpenStack ceilometer provides services to measure and
@@ -82,53 +49,47 @@ collect metrics from OpenStack components.
 Summary:          OpenStack ceilometer python libraries
 Group:            Applications/System
 
-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-babel >= 1.3
+Requires:         python-eventlet >= 0.7.14
+Requires:         python-greenlet >= 0.3.2
 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-migrate >= 0.9.5
+Requires:         python-anyjson >= 0.3.3
+Requires:         python-jsonpath-rw >= 1.2.0
+Requires:         python-jsonpath-rw-ext >= 0.1.7
+Requires:         python-stevedore >= 1.5.0
 Requires:         python-msgpack >= 0.4.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-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-pbr >= 1.6
 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-tooz >= 0.13.1
-Requires:         python-werkzeug >= 0.7
+
+Requires:         python-sqlalchemy >= 0.9.9
+Requires:         python-alembic >= 0.8.0
+Requires:         python-migrate >= 0.9.6
+
 Requires:         python-webob >= 1.2.3
-Requires:         python-wsme >= 0.8
+Requires:         python-oslo-config >= 2:2.3.0
 Requires:         PyYAML >= 3.1.0
+Requires:         python-netaddr >= 0.7.12
+Requires:         python-oslo-rootwrap >= 2.0.0
+Requires:         python-oslo-vmware >= 1.16.0
+Requires:         python-requests >= 2.5.2
+
+Requires:         pysnmp >= 4.2.1
+Requires:         pytz >= 2013.6
+Requires:         python-croniter >= 0.3.4
+
+Requires:         python-retrying >= 1.2.3
+Requires:         python-jsonschema >= 2.0.0
+Requires:         python-werkzeug >= 0.7
+
+Requires:         python-oslo-context >= 0.2.0
+Requires:         python-oslo-concurrency >= 2.3.0
+Requires:         python-oslo-i18n >= 1.5.0
+Requires:         python-oslo-log >= 1.8.0
+Requires:         python-oslo-middleware >= 2.8.0
+Requires:         python-oslo-policy >= 0.5.0
+Requires:         python-oslo-service >= 0.7.0
+Requires:         python-oslo-reports >= 0.1.0
 
 %description -n   python-ceilometer
 OpenStack ceilometer provides services to measure and
@@ -141,20 +102,19 @@ This package contains the ceilometer python library.
 Summary:          Components common to all OpenStack ceilometer services
 Group:            Applications/System
 
-Requires:         python-ceilometer = %{version}-%{release}
-Requires:         openstack-utils
+Requires:         python-ceilometer = %{epoch}:%{version}-%{release}
+Requires:         python-oslo-messaging >= 1.16.0
+Requires:         python-oslo-serialization >= 1.4.0
+Requires:         python-oslo-utils >= 2.0.0
+Requires:         python-posix_ipc
 
-%if 0%{?rhel} && 0%{?rhel} <= 6
-Requires(post):   chkconfig
-Requires(postun): initscripts
-Requires(preun):  chkconfig
-%else
 Requires(post):   systemd-units
 Requires(preun):  systemd-units
 Requires(postun): systemd-units
-%endif
 Requires(pre):    shadow-utils
 
+
+
 %description common
 OpenStack ceilometer provides services to measure and
 collect metrics from OpenStack components.
@@ -167,11 +127,13 @@ ceilometer services.
 Summary:          OpenStack ceilometer compute agent
 Group:            Applications/System
 
-Requires:         %{name}-common = %{version}-%{release}
+Requires:         %{name}-common = %{epoch}:%{version}-%{release}
+Requires:         %{name}-polling = %{epoch}:%{version}-%{release}
 
-Requires:         libvirt-python
-Requires:         python-keystoneclient >= 1.1.0
-Requires:         python-novaclient >= 2.22.0
+Requires:         python-novaclient >= 1:2.28.1
+Requires:         python-keystoneclient >= 1:1.6.0
+Requires:         python-tooz >= 1.19.0
+Requires:         libvirt-python >= 1.2.5
 
 %description compute
 OpenStack ceilometer provides services to measure and
@@ -185,12 +147,15 @@ running on OpenStack compute nodes.
 Summary:          OpenStack ceilometer central agent
 Group:            Applications/System
 
-Requires:         %{name}-common = %{version}-%{release}
+Requires:         %{name}-common = %{epoch}:%{version}-%{release}
+Requires:         %{name}-polling = %{epoch}:%{version}-%{release}
 
-Requires:         python-glanceclient >= 0.15.0
-Requires:         python-keystoneclient >= 1.1.0
-Requires:         python-novaclient >= 2.22.0
+Requires:         python-novaclient >= 1:2.28.1
+Requires:         python-keystoneclient >= 1:1.6.0
+Requires:         python-glanceclient >= 1:0.18.0
 Requires:         python-swiftclient >= 2.2.0
+Requires:         python-neutronclient >= 2.6.0
+Requires:         python-tooz >= 1.19.0
 
 %description central
 OpenStack ceilometer provides services to measure and
@@ -203,12 +168,14 @@ This package contains the central ceilometer agent.
 Summary:          OpenStack ceilometer collector
 Group:            Applications/System
 
-Requires:         %{name}-common = %{version}-%{release}
+Requires:         %{name}-common = %{epoch}:%{version}-%{release}
 
 # For compat with older provisioning tools.
 # Remove when all reference the notification package explicitly
-Requires:         %{name}-notification = %{version}-%{release}
-Requires:         python-pymongo >= 2.6.3
+Requires:         %{name}-notification
+
+Requires:         python-oslo-db >= 2.4.1
+Requires:         python-pymongo >= 3.0.2
 
 %description collector
 OpenStack ceilometer provides services to measure and
@@ -222,7 +189,7 @@ which collects metrics from the various agents.
 Summary:          OpenStack ceilometer notification agent
 Group:            Applications/System
 
-Requires:         %{name}-common = %{version}-%{release}
+Requires:         %{name}-common = %{epoch}:%{version}-%{release}
 
 %description notification
 OpenStack ceilometer provides services to measure and
@@ -237,15 +204,16 @@ various OpenStack services.
 Summary:          OpenStack ceilometer API service
 Group:            Applications/System
 
-Requires:         %{name}-common = %{version}-%{release}
+Requires:         %{name}-common = %{epoch}:%{version}-%{release}
 
-Requires:         python-flask >= 0.10
-Requires:         python-keystonemiddleware >= 1.5.0
-Requires:         python-oslo-db >= 1.7.0
+Requires:         python-keystonemiddleware >= 2.0.0
+Requires:         python-oslo-db >= 2.4.1
+Requires:         python-pymongo >= 3.0.2
+Requires:         python-pecan >= 1.0.0
+Requires:         python-wsme >= 0.7
 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-ceilometerclient >= 1.5.0
+Requires:         python-tooz >= 1.19.0
 
 %description api
 OpenStack ceilometer provides services to measure and
@@ -258,8 +226,8 @@ This package contains the ceilometer API service.
 Summary:          OpenStack ceilometer alarm services
 Group:            Applications/System
 
-Requires:         %{name}-common = %{version}-%{release}
-Requires:         python-ceilometerclient >= 1.0.13
+Requires:         %{name}-common = %{epoch}:%{version}-%{release}
+Requires:         python-ceilometerclient >= 1.5.0
 
 %description alarm
 OpenStack ceilometer provides services to measure and
@@ -273,14 +241,15 @@ and evaluation services.
 Summary:          OpenStack ceilometer ipmi agent
 Group:            Applications/System
 
-Requires:         %{name}-common = %{version}-%{release}
+Requires:         %{name}-common = %{epoch}:%{version}-%{release}
+Requires:         %{name}-polling = %{epoch}:%{version}-%{release}
 
+Requires:         python-novaclient >= 1:2.28.1
+Requires:         python-keystoneclient >= 1:1.6.0
+Requires:         python-neutronclient >= 2.6.0
+Requires:         python-tooz >= 1.19.0
+Requires:         python-oslo-rootwrap >= 2.0.0
 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
@@ -295,13 +264,13 @@ by-passing Ironic's management of baremetal.
 Summary:          OpenStack ceilometer polling agent
 Group:            Applications/System
 
-Requires:         %{name}-common = %{version}-%{release}
+Requires:         %{name}-common = %{epoch}:%{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-novaclient >= 1:2.28.1
+Requires:         python-keystoneclient >= 1:1.6.0
+Requires:         python-glanceclient >= 1:0.18.0
 Requires:         python-swiftclient >= 2.2.0
+Requires:         libvirt-python >= 1.2.5
 
 %description polling
 Ceilometer aims to deliver a unique point of contact for billing systems to
@@ -320,12 +289,11 @@ Summary:          Documentation for OpenStack ceilometer
 Group:            Documentation
 
 # Required to build module documents
-BuildRequires:    python-eventlet >= 0.16.1
-BuildRequires:    python-sqlalchemy >= 0.9.7
-BuildRequires:    python-webob >= 1.2.3
+BuildRequires:    python-eventlet
+BuildRequires:    python-sqlalchemy
+BuildRequires:    python-webob
 # while not strictly required, quiets the build down when building docs.
-BuildRequires:    python-migrate >= 0.9.5
-BuildRequires:    python-iso8601 >= 0.1.9
+BuildRequires:    python-migrate, python-iso8601
 
 %description      doc
 OpenStack ceilometer provides services to measure and
@@ -349,10 +317,22 @@ sed -i '/setup_requires/d; /install_requires/d; /dependency_links/d' setup.py
 rm -rf {test-,}requirements.txt tools/{pip,test}-requires
 
 %build
-%{__python} setup.py build
+%{__python2} setup.py build
+
+install -p -D -m 640 %{SOURCE3} etc/ceilometer/ceilometer.conf.sample
+
+# Programmatically update defaults in sample config
+# which is installed at /etc/ceilometer/ceilometer.conf
+# TODO: Make this more robust
+# Note it only edits the first occurance, so assumes a section ordering in sample
+# and also doesn't support multi-valued variables.
+while read name eq value; do
+  test "$name" && test "$value" || continue
+  sed -i "0,/^# *$name=/{s!^# *$name=.*!#$name=$value!}" etc/ceilometer/ceilometer.conf.sample
+done < %{SOURCE1}
 
 %install
-%{__python} setup.py install -O1 --skip-build --root %{buildroot}
+%{__python2} setup.py install -O1 --skip-build --root %{buildroot}
 
 # docs generation requires everything to be installed first
 export PYTHONPATH="$( pwd ):$PYTHONPATH"
@@ -360,34 +340,30 @@ export PYTHONPATH="$( pwd ):$PYTHONPATH"
 pushd doc
 
 %if 0%{?with_doc}
-SPHINX_DEBUG=1 sphinx-1.0-build -b html source build/html
+SPHINX_DEBUG=1 sphinx-build -b html source build/html
 # Fix hidden-file-or-dir warnings
 rm -fr build/html/.doctrees build/html/.buildinfo
 %endif
 
 popd
 
-# Genenrate ceilometer.conf.sample
-oslo-config-generator --output-file etc/ceilometer/ceilometer.conf.sample \
-             --namespace ceilometer \
-             --namespace oslo.db \
-             --namespace oslo.messaging \
-             --namespace keystonemiddleware.auth_token
-
 # Setup directories
 install -d -m 755 %{buildroot}%{_sharedstatedir}/ceilometer
 install -d -m 755 %{buildroot}%{_sharedstatedir}/ceilometer/tmp
-install -d -m 775 %{buildroot}%{_localstatedir}/log/ceilometer
+install -d -m 755 %{buildroot}%{_localstatedir}/log/ceilometer
 
 # Install config files
 install -d -m 755 %{buildroot}%{_sysconfdir}/ceilometer
 install -d -m 755 %{buildroot}%{_sysconfdir}/ceilometer/rootwrap.d
 install -d -m 755 %{buildroot}%{_sysconfdir}/sudoers.d
+install -d -m 755 %{buildroot}%{_sysconfdir}/sysconfig
 install -p -D -m 640 %{SOURCE1} %{buildroot}%{_datadir}/ceilometer/ceilometer-dist.conf
-install -p -D -m 640 %{SOURCE3} %{buildroot}%{_sysconfdir}/sudoers.d/ceilometer
+install -p -D -m 644 %{SOURCE4} %{buildroot}%{_sysconfdir}/sudoers.d/ceilometer
+install -p -D -m 644 %{SOURCE5} %{buildroot}%{_sysconfdir}/sysconfig/openstack-ceilometer-polling
 install -p -D -m 640 etc/ceilometer/ceilometer.conf.sample %{buildroot}%{_sysconfdir}/ceilometer/ceilometer.conf
 install -p -D -m 640 etc/ceilometer/policy.json %{buildroot}%{_sysconfdir}/ceilometer/policy.json
 install -p -D -m 640 etc/ceilometer/pipeline.yaml %{buildroot}%{_sysconfdir}/ceilometer/pipeline.yaml
+install -p -D -m 640 etc/ceilometer/event_pipeline.yaml %{buildroot}%{_sysconfdir}/ceilometer/event_pipeline.yaml
 install -p -D -m 640 etc/ceilometer/event_definitions.yaml %{buildroot}%{_sysconfdir}/ceilometer/event_definitions.yaml
 install -p -D -m 640 etc/ceilometer/api_paste.ini %{buildroot}%{_sysconfdir}/ceilometer/api_paste.ini
 install -p -D -m 640 etc/ceilometer/rootwrap.conf %{buildroot}%{_sysconfdir}/ceilometer/rootwrap.conf
@@ -431,15 +407,10 @@ install -p -D -m 644 %{SOURCE18} %{buildroot}%{_unitdir}/%{name}-polling.service
 # Install logrotate
 install -p -D -m 644 %{SOURCE2} %{buildroot}%{_sysconfdir}/logrotate.d/%{name}
 
-%if 0%{?rhel} && 0%{?rhel} <= 6
-# Install pid directory
-install -d -m 755 %{buildroot}%{_localstatedir}/run/ceilometer
-%endif
-
 # Remove unneeded in production stuff
 rm -f %{buildroot}%{_bindir}/ceilometer-debug
-rm -fr %{buildroot}%{python_sitelib}/tests/
-rm -fr %{buildroot}%{python_sitelib}/run_tests.*
+rm -fr %{buildroot}%{python2_sitelib}/tests/
+rm -fr %{buildroot}%{python2_sitelib}/run_tests.*
 rm -f %{buildroot}/usr/share/doc/ceilometer/README*
 
 
@@ -452,297 +423,90 @@ fi
 exit 0
 
 %post compute
-%if 0%{?rhel} && 0%{?rhel} <= 6
-if [ $1 -eq 1 ] ; then
-    # Initial installation
-    /sbin/chkconfig --add %{name}-compute
-fi
-%else
 %systemd_post %{name}-compute.service
-%endif
 
 %post collector
-%if 0%{?rhel} && 0%{?rhel} <= 6
-if [ $1 -eq 1 ] ; then
-    # Initial installation
-    /sbin/chkconfig --add %{name}-collector
-fi
-%else
 %systemd_post %{name}-collector.service
-%endif
 
 %post notification
-%if 0%{?rhel} && 0%{?rhel} <= 6
-if [ $1 -eq 1 ] ; then
-    # Initial installation
-    /sbin/chkconfig --add %{name}-notification
-fi
-%else
 %systemd_post %{name}-notification.service
-%endif
 
 %post api
-%if 0%{?rhel} && 0%{?rhel} <= 6
-if [ $1 -eq 1 ] ; then
-    # Initial installation
-    /sbin/chkconfig --add %{name}-api
-fi
-%else
 %systemd_post %{name}-api.service
-%endif
 
 %post central
-%if 0%{?rhel} && 0%{?rhel} <= 6
-if [ $1 -eq 1 ] ; then
-    # Initial installation
-    /sbin/chkconfig --add %{name}-central
-fi
-%else
 %systemd_post %{name}-central.service
-%endif
-
 
 %post alarm
-%if 0%{?rhel} && 0%{?rhel} <= 6
-if [ $1 -eq 1 ] ; then
-    # Initial installation
-    for svc in alarm-notifier alarm-evaluator; do
-        /sbin/chkconfig --add %{name}-${svc}
-    done
-fi
-%else
 %systemd_post %{name}-alarm-notifier.service %{name}-alarm-evaluator.service
-%endif
 
 %post ipmi
-%if 0%{?rhel} && 0%{?rhel} <= 6
-if [ $1 -eq 1 ] ; then
-    # Initial installation
-    /sbin/chkconfig --add %{name}-ipmi
-fi
-%else
 %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
-    for svc in compute; do
-        /sbin/service %{name}-${svc} stop > /dev/null 2>&1
-        /sbin/chkconfig --del %{name}-${svc}
-    done
-fi
-%else
 %systemd_preun %{name}-compute.service
-%endif
 
 %preun collector
-%if 0%{?rhel} && 0%{?rhel} <= 6
-if [ $1 -eq 0 ] ; then
-    for svc in collector; do
-        /sbin/service %{name}-${svc} stop > /dev/null 2>&1
-        /sbin/chkconfig --del %{name}-${svc}
-    done
-fi
-%else
 %systemd_preun %{name}-collector.service
-%endif
 
 %preun notification
-%if 0%{?rhel} && 0%{?rhel} <= 6
-if [ $1 -eq 0 ] ; then
-    for svc in notification; do
-        /sbin/service %{name}-${svc} stop > /dev/null 2>&1
-        /sbin/chkconfig --del %{name}-${svc}
-    done
-fi
-%else
 %systemd_preun %{name}-notification.service
-%endif
 
 %preun api
-%if 0%{?rhel} && 0%{?rhel} <= 6
-if [ $1 -eq 0 ] ; then
-    for svc in api; do
-        /sbin/service %{name}-${svc} stop > /dev/null 2>&1
-        /sbin/chkconfig --del %{name}-${svc}
-    done
-fi
-%else
 %systemd_preun %{name}-api.service
-%endif
 
 %preun central
-%if 0%{?rhel} && 0%{?rhel} <= 6
-if [ $1 -eq 0 ] ; then
-    for svc in central; do
-        /sbin/service %{name}-${svc} stop > /dev/null 2>&1
-        /sbin/chkconfig --del %{name}-${svc}
-    done
-fi
-%else
 %systemd_preun %{name}-central.service
-%endif
-
 
 %preun alarm
-%if 0%{?rhel} && 0%{?rhel} <= 6
-if [ $1 -eq 0 ] ; then
-    for svc in alarm-notifier alarm-evaluator; do
-        /sbin/service %{name}-${svc} stop > /dev/null 2>&1
-        /sbin/chkconfig --del %{name}-${svc}
-    done
-fi
-%else
 %systemd_preun %{name}-alarm-notifier.service %{name}-alarm-evaluator.service
-%endif
 
 %preun ipmi
-%if 0%{?rhel} && 0%{?rhel} <= 6
-if [ $1 -eq 0 ] ; then
-    for svc in ipmi; do
-        /sbin/service %{name}-${svc} stop > /dev/null 2>&1
-        /sbin/chkconfig --del %{name}-${svc}
-    done
-fi
-%else
 %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
-    # Package upgrade, not uninstall
-    for svc in compute; do
-        /sbin/service %{name}-${svc} condrestart > /dev/null 2>&1 || :
-    done
-fi
-%else
 %systemd_postun_with_restart %{name}-compute.service
-%endif
 
 %postun collector
-%if 0%{?rhel} && 0%{?rhel} <= 6
-if [ $1 -ge 1 ] ; then
-    # Package upgrade, not uninstall
-    for svc in collector; do
-        /sbin/service %{name}-${svc} condrestart > /dev/null 2>&1 || :
-    done
-fi
-%else
 %systemd_postun_with_restart %{name}-collector.service
-%endif
 
 %postun notification
-%if 0%{?rhel} && 0%{?rhel} <= 6
-if [ $1 -ge 1 ] ; then
-    # Package upgrade, not uninstall
-    for svc in notification; do
-        /sbin/service %{name}-${svc} condrestart > /dev/null 2>&1 || :
-    done
-fi
-%else
 %systemd_postun_with_restart %{name}-notification.service
-%endif
 
 %postun api
-%if 0%{?rhel} && 0%{?rhel} <= 6
-if [ $1 -ge 1 ] ; then
-    # Package upgrade, not uninstall
-    for svc in api; do
-        /sbin/service %{name}-${svc} condrestart > /dev/null 2>&1 || :
-    done
-fi
-%else
 %systemd_postun_with_restart %{name}-api.service
-%endif
 
 %postun central
-%if 0%{?rhel} && 0%{?rhel} <= 6
-if [ $1 -ge 1 ] ; then
-    # Package upgrade, not uninstall
-    for svc in central; do
-        /sbin/service %{name}-${svc} condrestart > /dev/null 2>&1 || :
-    done
-fi
-%else
 %systemd_postun_with_restart %{name}-central.service
-%endif
-
 
 %postun alarm
-%if 0%{?rhel} && 0%{?rhel} <= 6
-if [ $1 -ge 1 ] ; then
-    # Package upgrade, not uninstall
-    for svc in alarm-notifier alarm-evaluator; do
-        /sbin/service %{name}-${svc} condrestart > /dev/null 2>&1 || :
-    done
-fi
-%else
 %systemd_postun_with_restart %{name}-alarm-notifier.service %{name}-alarm-evaluator.service
-%endif
 
 %postun ipmi
-%if 0%{?rhel} && 0%{?rhel} <= 6
-if [ $1 -ge 1 ] ; then
-    # Package upgrade, not uninstall
-    for svc in ipmi; do
-        /sbin/service %{name}-${svc} condrestart > /dev/null 2>&1 || :
-    done
-fi
-%else
 %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
+%license LICENSE
 %dir %{_sysconfdir}/ceilometer
 %attr(-, root, ceilometer) %{_datadir}/ceilometer/ceilometer-dist.conf
 %config(noreplace) %attr(-, root, ceilometer) %{_sysconfdir}/ceilometer/ceilometer.conf
 %config(noreplace) %attr(-, root, ceilometer) %{_sysconfdir}/ceilometer/policy.json
 %config(noreplace) %attr(-, root, ceilometer) %{_sysconfdir}/ceilometer/pipeline.yaml
 %config(noreplace) %attr(-, root, ceilometer) %{_sysconfdir}/ceilometer/api_paste.ini
-%config(noreplace) %attr(-, root, ceilometer) %{_sysconfdir}/ceilometer/event_definitions.yaml
 %config(noreplace) %{_sysconfdir}/logrotate.d/%{name}
 
-%dir %attr(0775, ceilometer, ceilometer) %{_localstatedir}/log/ceilometer
-%if 0%{?rhel} && 0%{?rhel} <= 6
-%dir %attr(0755, ceilometer, root) %{_localstatedir}/run/ceilometer
-%endif
+%dir %attr(0755, ceilometer, root) %{_localstatedir}/log/ceilometer
 
 %{_bindir}/ceilometer-dbsync
 %{_bindir}/ceilometer-expirer
@@ -755,8 +519,8 @@ fi
 
 
 %files -n python-ceilometer
-%{python_sitelib}/ceilometer
-%{python_sitelib}/ceilometer-%{version}*.egg-info
+%{python2_sitelib}/ceilometer
+%{python2_sitelib}/ceilometer-*.egg-info
 
 
 %if 0%{?with_doc}
@@ -766,94 +530,56 @@ fi
 
 
 %files compute
-%{_bindir}/ceilometer-agent-compute
-%if 0%{?rhel} && 0%{?rhel} <= 6
-%{_initrddir}/%{name}-compute
-%{_datarootdir}/ceilometer/%{name}-compute.upstart
-%else
 %{_unitdir}/%{name}-compute.service
-%endif
 
 
 %files collector
 %{_bindir}/ceilometer-collector*
-%if 0%{?rhel} && 0%{?rhel} <= 6
-%{_initrddir}/%{name}-collector
-%{_datarootdir}/ceilometer/%{name}-collector.upstart
-%else
 %{_unitdir}/%{name}-collector.service
-%endif
 
 
 %files notification
+%config(noreplace) %attr(-, root, ceilometer) %{_sysconfdir}/ceilometer/event_pipeline.yaml
+%config(noreplace) %attr(-, root, ceilometer) %{_sysconfdir}/ceilometer/event_definitions.yaml
 %{_bindir}/ceilometer-agent-notification
-%if 0%{?rhel} && 0%{?rhel} <= 6
-%{_initrddir}/%{name}-notification
-%{_datarootdir}/ceilometer/%{name}-notification.upstart
-%else
 %{_unitdir}/%{name}-notification.service
-%endif
 
 
 %files api
 %{_bindir}/ceilometer-api
-%if 0%{?rhel} && 0%{?rhel} <= 6
-%{_initrddir}/%{name}-api
-%{_datarootdir}/ceilometer/%{name}-api.upstart
-%else
 %{_unitdir}/%{name}-api.service
-%endif
 
 
 %files central
-%{_bindir}/ceilometer-agent-central
-%if 0%{?rhel} && 0%{?rhel} <= 6
-%{_initrddir}/%{name}-central
-%{_datarootdir}/ceilometer/%{name}-central.upstart
-%else
 %{_unitdir}/%{name}-central.service
-%endif
+
+
+%files alarm
+%{_bindir}/ceilometer-alarm-notifier
+%{_bindir}/ceilometer-alarm-evaluator
+%{_unitdir}/%{name}-alarm-notifier.service
+%{_unitdir}/%{name}-alarm-evaluator.service
 
 
 %files ipmi
 %config(noreplace) %attr(-, root, ceilometer) %{_sysconfdir}/ceilometer/rootwrap.conf
 %config(noreplace) %attr(-, root, ceilometer) %{_sysconfdir}/ceilometer/rootwrap.d/ipmi.filters
 %{_bindir}/ceilometer-rootwrap
-%{_bindir}/ceilometer-agent-ipmi
 %{_sysconfdir}/sudoers.d/ceilometer
-%if 0%{?rhel} && 0%{?rhel} <= 6
-%{_initrddir}/%{name}-ipmi
-%{_datarootdir}/ceilometer/%{name}-ipmi.upstart
-%else
 %{_unitdir}/%{name}-ipmi.service
-%endif
-
 
 %files polling
 %{_bindir}/ceilometer-polling
-%if 0%{?rhel} && 0%{?rhel} <= 6
-%{_initrddir}/%{name}-polling
-%{_datarootdir}/ceilometer/%{name}-polling.upstart
-%else
+%attr(-, root, ceilometer) %{_sysconfdir}/sysconfig/openstack-ceilometer-polling
 %{_unitdir}/%{name}-polling.service
-%endif
-
-
-%files alarm
-%{_bindir}/ceilometer-alarm-notifier
-%{_bindir}/ceilometer-alarm-evaluator
-%if 0%{?rhel} && 0%{?rhel} <= 6
-%{_initrddir}/%{name}-alarm-notifier
-%{_datarootdir}/ceilometer/%{name}-alarm-notifier.upstart
-%{_initrddir}/%{name}-alarm-evaluator
-%{_datarootdir}/ceilometer/%{name}-alarm-evaluator.upstart
-%else
-%{_unitdir}/%{name}-alarm-notifier.service
-%{_unitdir}/%{name}-alarm-evaluator.service
-%endif
 
 
 %changelog
+* Mon Sep 28 2015 Daniil Trishkin <dtrishkin@mirantis.com> - 1:5.0.0.0rc1-1%{?dist}~mos8.0.1
+- Update for Liberty
+- Update requirements according to global requirements of Liberty
+- .spec is from https://raw.githubusercontent.com/openstack-packages/ceilometer/rpm-master/openstack-ceilometer.spec
+
 * 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
@@ -922,7 +648,7 @@ fi
 * Fri Sep 13 2013 Pádraig Brady <pbrady@redhat.com> - 2013.2-0.10.b3
 - Depend on python-oslo-config >= 1:1.2.0 so it upgraded automatically
 
-* Mon Sep 10 2013 Pádraig Brady <pbrady@redhat.com> - 2013.2-0.8.b3
+* Tue Sep 10 2013 Pádraig Brady <pbrady@redhat.com> - 2013.2-0.8.b3
 - Depend on python-pymongo rather than pymongo to avoid a puppet bug
 
 * Mon Sep 9 2013 Pádraig Brady <pbrady@redhat.com> - 2013.2-0.7.b3
diff --git a/rpm/SOURCES/openstack-ceilometer-alarm-evaluator.init b/rpm/SOURCES/openstack-ceilometer-alarm-evaluator.init
deleted file mode 100644 (file)
index 265576e..0000000
+++ /dev/null
@@ -1,102 +0,0 @@
-#!/bin/sh
-#
-# openstack-ceilometer-alarm-evaluator  OpenStack ceilometer alarm evaluation service
-#
-# chkconfig:   - 98 02
-# description: OpenStack measurement and collection alarm evaluation service
-
-### BEGIN INIT INFO
-# Provides:
-# Required-Start: $remote_fs $network $syslog
-# Required-Stop: $remote_fs $syslog
-# Default-Stop: 0 1 6
-# Short-Description: OpenStack ceilometer alarm evaluation service
-# Description: OpenStack measurement and collection alarm evaluation service
-### END INIT INFO
-
-. /etc/rc.d/init.d/functions
-
-suffix=alarm-evaluator
-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 &>/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-alarm-evaluator.upstart b/rpm/SOURCES/openstack-ceilometer-alarm-evaluator.upstart
deleted file mode 100644 (file)
index c3d665d..0000000
+++ /dev/null
@@ -1,8 +0,0 @@
-description "OpenStack Ceilometer alarm evaluation service"
-
-start on stopped rc RUNLEVEL=[2345]
-stop on runlevel [S016]
-
-respawn
-
-exec su -s /bin/sh -c "exec /usr/bin/ceilometer-alarm-evaluator --logfile /var/log/ceilometer/alarm-evaluator.log" ceilometer
diff --git a/rpm/SOURCES/openstack-ceilometer-alarm-notifier.init b/rpm/SOURCES/openstack-ceilometer-alarm-notifier.init
deleted file mode 100644 (file)
index 424e6ac..0000000
+++ /dev/null
@@ -1,102 +0,0 @@
-#!/bin/sh
-#
-# openstack-ceilometer-alarm-notifier  OpenStack ceilometer alarm notification service
-#
-# chkconfig:   - 98 02
-# description: OpenStack measurement and collection alarm notification service
-
-### BEGIN INIT INFO
-# Provides:
-# Required-Start: $remote_fs $network $syslog
-# Required-Stop: $remote_fs $syslog
-# Default-Stop: 0 1 6
-# Short-Description: OpenStack ceilometer alarm notification service
-# Description: OpenStack measurement and collection alarm notification service
-### END INIT INFO
-
-. /etc/rc.d/init.d/functions
-
-suffix=alarm-notifier
-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 &>/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-alarm-notifier.upstart b/rpm/SOURCES/openstack-ceilometer-alarm-notifier.upstart
deleted file mode 100644 (file)
index 9a92074..0000000
+++ /dev/null
@@ -1,8 +0,0 @@
-description "OpenStack Ceilometer alarm notification service"
-
-start on stopped rc RUNLEVEL=[2345]
-stop on runlevel [S016]
-
-respawn
-
-exec su -s /bin/sh -c "exec /usr/bin/ceilometer-alarm-notifier --logfile /var/log/ceilometer/alarm-notifier.log" ceilometer
diff --git a/rpm/SOURCES/openstack-ceilometer-api.init b/rpm/SOURCES/openstack-ceilometer-api.init
deleted file mode 100644 (file)
index 731c64c..0000000
+++ /dev/null
@@ -1,102 +0,0 @@
-#!/bin/sh
-#
-# openstack-ceilometer-api  OpenStack ceilometer API Server
-#
-# chkconfig:   - 98 02
-# description: OpenStack measurement and collection service API server
-
-### BEGIN INIT INFO
-# Provides:
-# Required-Start: $remote_fs $network $syslog
-# Required-Stop: $remote_fs $syslog
-# Default-Stop: 0 1 6
-# Short-Description: OpenStack ceilometer API Server
-# Description: OpenStack measurement and collection service API server
-### END INIT INFO
-
-. /etc/rc.d/init.d/functions
-
-suffix=api
-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 &>/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-api.upstart b/rpm/SOURCES/openstack-ceilometer-api.upstart
deleted file mode 100644 (file)
index 56b66eb..0000000
+++ /dev/null
@@ -1,8 +0,0 @@
-description "OpenStack Ceilometer API Server"
-
-start on stopped rc RUNLEVEL=[2345]
-stop on runlevel [S016]
-
-respawn
-
-exec su -s /bin/sh -c "exec /usr/bin/ceilometer-api --logfile /var/log/ceilometer/api.log" ceilometer
diff --git a/rpm/SOURCES/openstack-ceilometer-central.init b/rpm/SOURCES/openstack-ceilometer-central.init
deleted file mode 100644 (file)
index 5d4d1ab..0000000
+++ /dev/null
@@ -1,102 +0,0 @@
-#!/bin/sh
-#
-# openstack-ceilometer-central  OpenStack ceilometer central agent
-#
-# chkconfig:   - 98 02
-# description: OpenStack measurement and collection service central 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 central agent
-# Description: OpenStack measurement and collection service central agent
-### END INIT INFO
-
-. /etc/rc.d/init.d/functions
-
-suffix=central
-prog=openstack-ceilometer-$suffix
-exec="/usr/bin/ceilometer-agent-$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 &>/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-central.upstart b/rpm/SOURCES/openstack-ceilometer-central.upstart
deleted file mode 100644 (file)
index 889cda9..0000000
+++ /dev/null
@@ -1,8 +0,0 @@
-description "OpenStack Ceilometer central agent"
-
-start on stopped rc RUNLEVEL=[2345]
-stop on runlevel [S016]
-
-respawn
-
-exec su -s /bin/sh -c "exec /usr/bin/ceilometer-agent-central --logfile /var/log/ceilometer/central.log" ceilometer
diff --git a/rpm/SOURCES/openstack-ceilometer-collector.init b/rpm/SOURCES/openstack-ceilometer-collector.init
deleted file mode 100644 (file)
index 8f798b9..0000000
+++ /dev/null
@@ -1,102 +0,0 @@
-#!/bin/sh
-#
-# openstack-ceilometer-collector  OpenStack ceilometer collector Service
-#
-# chkconfig:   - 98 02
-# description: OpenStack measurement and collection service collector
-
-### BEGIN INIT INFO
-# Provides:
-# Required-Start: $remote_fs $network $syslog
-# Required-Stop: $remote_fs $syslog
-# Default-Stop: 0 1 6
-# Short-Description: OpenStack ceilometer collector Server
-# Description: OpenStack measurement and collection service collector
-### END INIT INFO
-
-. /etc/rc.d/init.d/functions
-
-suffix=collector
-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 &>/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-collector.upstart b/rpm/SOURCES/openstack-ceilometer-collector.upstart
deleted file mode 100644 (file)
index fb6188b..0000000
+++ /dev/null
@@ -1,8 +0,0 @@
-description "OpenStack Ceilometer collector service"
-
-start on stopped rc RUNLEVEL=[2345]
-stop on runlevel [S016]
-
-respawn
-
-exec su -s /bin/sh -c "exec /usr/bin/ceilometer-collector --logfile /var/log/ceilometer/collector.log" ceilometer
diff --git a/rpm/SOURCES/openstack-ceilometer-compute.init b/rpm/SOURCES/openstack-ceilometer-compute.init
deleted file mode 100644 (file)
index 6facfb0..0000000
+++ /dev/null
@@ -1,102 +0,0 @@
-#!/bin/sh
-#
-# openstack-ceilometer-compute  OpenStack ceilometer compute node agent
-#
-# chkconfig:   - 98 02
-# description: OpenStack measurement and collection service for running on compute nodes
-
-### BEGIN INIT INFO
-# Provides:
-# Required-Start: $remote_fs $network $syslog
-# Required-Stop: $remote_fs $syslog
-# Default-Stop: 0 1 6
-# Short-Description: OpenStack ceilometer compute node agent
-# Description: OpenStack measurement and collection service for running on compute nodes
-### END INIT INFO
-
-. /etc/rc.d/init.d/functions
-
-suffix=compute
-prog=openstack-ceilometer-$suffix
-exec="/usr/bin/ceilometer-agent-$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 &>/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-compute.upstart b/rpm/SOURCES/openstack-ceilometer-compute.upstart
deleted file mode 100644 (file)
index 2a06de1..0000000
+++ /dev/null
@@ -1,8 +0,0 @@
-description "OpenStack Ceilometer compute agent"
-
-start on stopped rc RUNLEVEL=[2345]
-stop on runlevel [S016]
-
-respawn
-
-exec su -s /bin/sh -c "exec /usr/bin/ceilometer-agent-compute --logfile /var/log/ceilometer/compute.log" ceilometer
diff --git a/rpm/SOURCES/openstack-ceilometer-ipmi.init b/rpm/SOURCES/openstack-ceilometer-ipmi.init
deleted file mode 100644 (file)
index 70aead2..0000000
+++ /dev/null
@@ -1,102 +0,0 @@
-#!/bin/sh
-#
-# openstack-ceilometer-ipmi  OpenStack ceilometer ipmi agent
-#
-# chkconfig:   - 98 02
-# description: OpenStack measurement and collection agent ipmi service
-
-### BEGIN INIT INFO
-# Provides:
-# Required-Start: $remote_fs $network $syslog
-# Required-Stop: $remote_fs $syslog
-# Default-Stop: 0 1 6
-# Short-Description: OpenStack ceilometer agent ipmi service
-# Description: OpenStack measurement collection agent ipmi service
-### END INIT INFO
-
-. /etc/rc.d/init.d/functions
-
-suffix=agent-ipmi
-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 &>/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-ipmi.upstart b/rpm/SOURCES/openstack-ceilometer-ipmi.upstart
deleted file mode 100644 (file)
index ddf491b..0000000
+++ /dev/null
@@ -1,8 +0,0 @@
-description "OpenStack Ceilometer ipmi agent"
-
-start on stopped rc RUNLEVEL=[2345]
-stop on runlevel [S016]
-
-respawn
-
-exec su -s /bin/sh -c "exec /usr/bin/ceilometer-agent-ipmi --logfile /var/log/ceilometer/agent-ipmi.log" ceilometer
diff --git a/rpm/SOURCES/openstack-ceilometer-notification.init b/rpm/SOURCES/openstack-ceilometer-notification.init
deleted file mode 100644 (file)
index 2695eca..0000000
+++ /dev/null
@@ -1,102 +0,0 @@
-#!/bin/sh
-#
-# openstack-ceilometer-notification  OpenStack ceilometer notification agent
-#
-# chkconfig:   - 98 02
-# description: OpenStack measurement and collection agent notification service
-
-### BEGIN INIT INFO
-# Provides:
-# Required-Start: $remote_fs $network $syslog
-# Required-Stop: $remote_fs $syslog
-# Default-Stop: 0 1 6
-# Short-Description: OpenStack ceilometer agent notification service
-# Description: OpenStack measurement collection agent notification service
-### END INIT INFO
-
-. /etc/rc.d/init.d/functions
-
-suffix=agent-notification
-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 &>/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-notification.upstart b/rpm/SOURCES/openstack-ceilometer-notification.upstart
deleted file mode 100644 (file)
index f12ad33..0000000
+++ /dev/null
@@ -1,8 +0,0 @@
-description "OpenStack Ceilometer notification agent"
-
-start on stopped rc RUNLEVEL=[2345]
-stop on runlevel [S016]
-
-respawn
-
-exec su -s /bin/sh -c "exec /usr/bin/ceilometer-agent-notification --logfile /var/log/ceilometer/agent-notification.log" ceilometer
diff --git a/rpm/SOURCES/openstack-ceilometer-polling.init b/rpm/SOURCES/openstack-ceilometer-polling.init
deleted file mode 100644 (file)
index c4caa85..0000000
+++ /dev/null
@@ -1,103 +0,0 @@
-#!/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.upstart b/rpm/SOURCES/openstack-ceilometer-polling.upstart
deleted file mode 100644 (file)
index 0f79f69..0000000
+++ /dev/null
@@ -1,10 +0,0 @@
-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 f731f1c091f3b460d10bddaa14416a98f5dbd542..4604350e0a453c8cb61fa61572c1703a83cdf7b6 100755 (executable)
@@ -8,7 +8,7 @@ RES=0
 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_auth_string="--debug --os-username ceilometer --os-password ceilometer --os-tenant-name ceilometer --os-auth-url http://127.0.0.1:35357"
 ceilometer_service=
 
 keystone_log_file="/var/log/keystone/keystone.log"
@@ -18,15 +18,15 @@ 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"
+   export DEBIAN_FRONTEND=noninteractive
    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_packages=(
       ceilometer-agent-central
       ceilometer-agent-compute
-      ceilometer-agent-ipmi
       ceilometer-collector
       ceilometer-agent-notification
       ceilometer-polling
@@ -34,17 +34,40 @@ if [[ `cat /etc/*-release | head -n 1 | awk '{print $1}'` =~ Ubuntu ]]; then
       ceilometer-alarm-notifier
       ceilometer-alarm-evaluator
    )
+
+   ceilometer_services=("${ceilometer_packages[@]}")
+
+   ceilometer_binaries=(
+     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
+     event_definitions.yaml
+     event_pipeline.yaml
+     pipeline.yaml
+     policy.json
+   )
 else
-   echo "Disable tests for Centos"
-   exit 0
+   setenforce 0 && service firewalld stop
    os="centos"
    packages_list="python-pip curl"
    command_to_install="yum install -y"
    keystone_package="openstack-keystone"
    keystone_service="openstack-keystone"
-   mysql_service="mysqld"
+   mysql_service="mysql"
    mongodb_service="mongod"
-   ceilometer_packages_and_services=(
+   ceilometer_packages=(
+      python-ceilometerclient
       openstack-ceilometer-central
       openstack-ceilometer-compute
       openstack-ceilometer-collector
@@ -53,30 +76,37 @@ else
       openstack-ceilometer-api
       openstack-ceilometer-alarm
    )
+   ceilometer_services=(
+      openstack-ceilometer-central
+      openstack-ceilometer-compute
+      openstack-ceilometer-collector
+      openstack-ceilometer-notification
+      openstack-ceilometer-polling
+      openstack-ceilometer-api
+      openstack-ceilometer-alarm-notifier
+      openstack-ceilometer-alarm-evaluator
+   )
+   ceilometer_binaries=(
+     ceilometer-agent-notification
+     ceilometer-alarm-evaluator
+     ceilometer-alarm-notifier
+     ceilometer-api
+     ceilometer-collector
+     ceilometer-dbsync
+     ceilometer-expirer
+     ceilometer-polling
+     ceilometer-send-sample
+   )
+   config_files=(
+     api_paste.ini
+     ceilometer.conf
+     event_definitions.yaml
+     event_pipeline.yaml
+     pipeline.yaml
+     policy.json
+   )
 fi
 
-ceilometer_binaries=(
-   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
-   event_definitions.yaml
-   pipeline.yaml
-   policy.json
-   rootwrap.conf
-)
-
 list_commands=(
    alarm-list
    event-list
@@ -106,7 +136,7 @@ rabbit_hosts = 127.0.0.1
 notification_driver = messaging
 notification_topics = notifications
 [database]
-connection=mysql://keystone:keystone@localhost/keystone
+connection=mysql://keystone:keystone@127.0.0.1/keystone
 [token]
 provider=keystone.token.providers.uuid.Provider
 EOF
@@ -114,50 +144,54 @@ EOF
    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}
+   if [ -z "$(curl -s http://127.0.0.1:5000/ | grep '^{"versions":')" ]; then
       exit_on_error 1 "Failed to get to keystone API.\nTests failed because of keystone problem"
    fi
 }
 
 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
-   if [ -f "/etc/mysql/conf.d/wsrep.cnf" ]; then
-     rm -f /etc/mysql/conf.d/wsrep.cnf
+   if [[ "$os" == "ubuntu" ]]; then
+     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 mysql-client python-mysqldb
+     MYSQL_PASSWORD=''
+   else
+     ${command_to_install} mysql-client mysql-server mysql-libs MySQL-python
+     MYSQL_PASSWORD=$(cat /root/.mysql_secret | head -1 | awk -F': ' '{print $2}')
    fi
-
-   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"
+   mycnf=$(find /etc/ -name my.cnf)
+   cat $mycnf
+   service mysql restart
+   sleep 10
+   if [ ! -z "${MYSQL_PASSWORD}" ]; then
+       mysqladmin -u root -p${MYSQL_PASSWORD} password ${mysql_pass}
+   fi
+   if [ -z "$(service ${mysql_service} status | grep "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 "drop database if exists ceilometer"
+   mysql -uroot -p${mysql_pass} -Bse "create database ceilometer"
+   mysql -uroot -p${mysql_pass} -Bse "GRANT ALL PRIVILEGES ON ceilometer.* TO 'ceilometer'@'localhost' IDENTIFIED BY 'ceilometer'"
    mysql -uroot -p${mysql_pass} -Bse "flush privileges"
 }
 
 install_and_setup_rabbit() {
    install_packages rabbitmq-server
-   echo "127.0.10.1 $(hostname)" >> /etc/hosts
+   echo "127.0.0.1 $(hostname)" >> /etc/hosts
+   if [[ "$os" == "ubuntu" ]]; then
+       update-rc.d rabbitmq-server defaults
+   else
+       systemctl enable rabbitmq-server
+   fi
    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() {
@@ -168,7 +202,6 @@ policy_file = /etc/ceilometer/policy.json
 debug = True
 verbose = True
 log_dir = ${ceilometer_log_dir}
-rpc_backend = rabbit
 auth_strategy = keystone
 rabbit_password = guest
 rabbit_hosts = 127.0.0.1
@@ -180,10 +213,10 @@ auth_protocol = http
 admin_tenant_name = ceilometer
 admin_user = ceilometer
 admin_password = ceilometer
-auth_url=http://127.0.0.1:35357/v2.0
+auth_url=http://127.0.0.1:35357
 
 [database]
-connection=mongodb://127.0.0.1/ceilometer
+connection=mysql://ceilometer:ceilometer@127.0.0.1/ceilometer
 
 [notification]
 store_events = True
@@ -211,47 +244,12 @@ EOF
  --publicurl=http://127.0.0.1:8777/ --internalurl=http://127.0.0.1:8777/ --adminurl=http://127.0.0.1:8777/
 }
 
-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
-
-   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
-   done
-   if [ "${try}" -ge '5' ]; then
-      exit_on_error 1 "Mongo shell is not available. Mongo work is broken"
+send_fake_instance_notification() {
+   if [ $os == "centos" ]; then
+     curl -LO https://bootstrap.pypa.io/get-pip.py
+     python get-pip.py
    fi
-}
 
-send_fake_instance_notification() {
    pip install pika==0.9.8
    echo '#!/usr/bin/env python
 import pika
@@ -278,7 +276,7 @@ exit_on_error() {
 }
 
 found=false
-for i in ${ceilometer_packages_and_services[@]}; do
+for i in ${ceilometer_packages[@]}; do
    if [ "${i}" == "${package_to_test}" ]; then
       found=true
    fi
@@ -292,11 +290,10 @@ fi
 case ${package_to_test} in
    ceilometer-common|openstack-ceilometer-common)
       prepare_vm
-      install_packages "${ceilometer_packages_and_services[@]}"
+      install_packages "${ceilometer_packages[@]}"
       install_and_setup_rabbit
       install_and_setup_mysql
       install_and_setup_keystone
-      install_and_setup_mongo
       ceilometer_configuration
 
       for binary in ${ceilometer_binaries[@]}; do
@@ -311,48 +308,46 @@ case ${package_to_test} in
          fi
       done
 
-      for service in ${ceilometer_packages_and_services[@]}; do
+      for service in ${ceilometer_services[@]}; do
          service ${service} restart
          sleep 5
-         if [ -z "$(service ${service} status | grep "start/running")" ]; then
+         if [ -z "$(service ${service} status | grep "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")
+      repsonce=$(curl "http://127.0.0.1:8777" | grep "Authentication required")
       if [ -z "$repsonce" ]; then
          exit_on_error 1 "Ceilometer api doesn't work.\n No one process is listening on 8777 port"
       fi
 
+
       for Command in ${list_commands[@]}; do
-         ceilometer ${ceilometer_auth_string} ${Command}
+         ceilometer ${ceilometer_auth_string} ${Command} || true
+         cat $keystone_log_file
          if [ "$?" -ne '0' ]; then
              exit_on_error 1 "Command ${Command} has failed"
          fi
       done
 
-
-      # Ceilometer functionality has changed.
-      # Remove after test rework.
-      exit 0
+      send_fake_instance_notification
 
       # Keystone notifications
-      if [ -z "$(ceilometer ${ceilometer_auth_string} meter-list | grep identity)" ]; then
+      if [ -z "$(ceilometer ${ceilometer_auth_string} meter-list | grep fake)" ]; then
          exit_on_error 1 "Keystone notifications don't work"
       fi
 
       # Instance notification
-      send_fake_instance_notification
       resource_id=$(ceilometer ${ceilometer_auth_string} resource-list | grep fake)
-      if [ -z ${resource_id} ]; then
+      if [ -z "${resource_id}" ]; then
          exit_on_error 1 "Notification is not received"
       fi
 
       # Events
-      if [ -z "$(ceilometer ${ceilometer_auth_string} event-list | grep fake)" ]; then
-         exit_on_error 1 "Events wasn't created"
-      fi
+      #if [ -z "$(ceilometer ${ceilometer_auth_string} event-list | grep fake)" ]; then
+      #   exit_on_error 1 "Events wasn't created"
+      #fi
 
       # Alarming
       ceilometer -dv ${ceilometer_auth_string} alarm-threshold-create --name cpu_high --description 'instance running hot' \
@@ -373,24 +368,15 @@ case ${package_to_test} in
    ceilometer-agent-ipmi|openstack-ceilometer-ipmi)
       # Ceilometer-agent-ipmi is not included in common testing
       # because it is not used in Fuel now
-
-      # Binary does not exist anymore. ceilometer-polling is
-      # responsible for service start.
-      # Remove after test rework.
-      exit 0
-
-      if [ ! -f "/usr/bin/ceilometer-agent-ipmi" ]; then
-         exit_on_error 1 "Ceilometer ipmi binary is missed"
-      fi
+      #if [ ! -f "/usr/bin/ceilometer-agent-ipmi" ]; then
+      #   exit_on_error 1 "Ceilometer ipmi binary is missed"
+      #fi
    ;;
    python-ceilometer)
       python -c 'import ceilometer'
       if [ $? -ne '0' ]; then
          exit_on_error 1 "Couldn't import module 'ceilometer'"
       fi
-      if [ -z "$(which ceilometer)" ]; then
-         exit_on_error 1 "Can't find command 'ceilometer'"
-      fi
    ;;
    *)
       if ! ${found}; then