Files
deb-python-openstacksdk/openstack/telemetry/v2/alarm_change.py
Terry Howe 355945c7f5 Add admonition to telemetry code
This code is subject to change in the near future.  The alarm
class is probably moving out of here and many of the resource
property have aliases.  We have agreed not to support the old
aliases going forward, because it doesn't work well.  The
admonition can be pulled after these issues are fixed.

Closes-Bug: #1468086
Change-Id: Ica464a6c1e2281f4acbd25a121a399b6b0c81376
2015-12-11 14:09:01 -07:00

52 lines
1.9 KiB
Python

# Licensed under the Apache License, Version 2.0 (the "License"); you may
# not use this file except in compliance with the License. You may obtain
# a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
# License for the specific language governing permissions and limitations
# under the License.
from openstack import resource
from openstack.telemetry import telemetry_service
class AlarmChange(resource.Resource):
""".. caution:: This API is a work in progress and is subject to change."""
id_attribute = 'event_id'
resource_key = 'alarm_change'
base_path = '/alarms/%(alarm_id)s/history'
service = telemetry_service.TelemetryService()
# Supported Operations
allow_list = True
# Properties
#: The UUID of the alarm
alarm_id = resource.prop('alarm_id')
#: Data describing the change
detail = resource.prop('detail')
#: The UUID of the change event
event_id = resource.prop('event_id')
#: The tenant on behalf of which the change is being made
on_behalf_of = resource.prop('on_behalf_of')
#: The project ID of the initiating identity
project_id = resource.prop('project_id')
#: The time/date of the alarm change
triggered_at = resource.prop('timestamp')
#: The type of change
type = resource.prop('type')
#: The user ID of the initiating identity
user_id = resource.prop('user_id')
@classmethod
def list(cls, session, limit=None, marker=None, path_args=None,
paginated=False, **params):
url = cls._get_url(path_args)
resp = session.get(url, endpoint_filter=cls.service, params=params)
for item in resp.json():
yield cls.existing(**item)