add a new service list api
Story: 2004897 Task: 29205 Change-Id: Iecb2ae810dd2a6a6b544c2ed7dbfe6288f393178
This commit is contained in:
parent
a7b134c0bd
commit
c293cbd2d5
@ -168,6 +168,7 @@ You'll find complete documentation on the shell by running
|
|||||||
resource count Show a count of all resources
|
resource count Show a count of all resources
|
||||||
resource list List resources
|
resource list List resources
|
||||||
resource show Show a resource
|
resource show Show a resource
|
||||||
|
service list List all services
|
||||||
template add Add a template
|
template add Add a template
|
||||||
template delete Delete a template
|
template delete Delete a template
|
||||||
template list List all templates
|
template list List all templates
|
||||||
@ -740,6 +741,34 @@ resource count::
|
|||||||
"SUBOPTIMAL": 8
|
"SUBOPTIMAL": 8
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
Service Examples
|
||||||
|
----------------
|
||||||
|
Note: To see complete usage: 'vitrage help' and 'vitrage help <command>'
|
||||||
|
|
||||||
|
service list
|
||||||
|
^^^^^^^^^^^^
|
||||||
|
|
||||||
|
A list of all vitrage services and their status::
|
||||||
|
|
||||||
|
vitrage service list
|
||||||
|
+----------------------------------+------------+--------------+---------------------------+
|
||||||
|
| Name | Process Id | Hostname | Created At |
|
||||||
|
+----------------------------------+------------+--------------+---------------------------+
|
||||||
|
| ApiWorker worker(0) | 23161 | controller-1 | 2019-02-10T11:07:15+00:00 |
|
||||||
|
| EvaluatorWorker worker(0) | 23153 | controller-1 | 2019-02-10T11:07:15+00:00 |
|
||||||
|
| EvaluatorWorker worker(1) | 23155 | controller-1 | 2019-02-10T11:07:15+00:00 |
|
||||||
|
| EvaluatorWorker worker(2) | 23157 | controller-1 | 2019-02-10T11:07:15+00:00 |
|
||||||
|
| EvaluatorWorker worker(3) | 23158 | controller-1 | 2019-02-10T11:07:15+00:00 |
|
||||||
|
| MachineLearningService worker(0) | 23366 | controller-1 | 2019-02-10T11:07:33+00:00 |
|
||||||
|
| PersistorService worker(0) | 23475 | controller-1 | 2019-02-10T11:07:35+00:00 |
|
||||||
|
| SnmpParsingService worker(0) | 23164 | controller-1 | 2019-02-10T11:07:15+00:00 |
|
||||||
|
| vitrageuWSGI worker 1 | 25698 | controller-1 | 2019-02-10T11:14:30+00:00 |
|
||||||
|
| vitrageuWSGI worker 2 | 25699 | controller-1 | 2019-02-10T11:14:30+00:00 |
|
||||||
|
| VitrageNotifierService worker(0) | 23352 | controller-1 | 2019-02-10T11:07:32+00:00 |
|
||||||
|
+----------------------------------+------------+--------------+---------------------------+
|
||||||
|
|
||||||
|
|
||||||
Alarms Examples
|
Alarms Examples
|
||||||
---------------
|
---------------
|
||||||
Note: To see complete usage: 'vitrage help' and 'vitrage help <command>'
|
Note: To see complete usage: 'vitrage help' and 'vitrage help <command>'
|
||||||
|
@ -1,6 +0,0 @@
|
|||||||
[DEFAULT]
|
|
||||||
|
|
||||||
# The list of modules to copy from oslo-incubator.git
|
|
||||||
|
|
||||||
# The base module to hold the copy of openstack.common
|
|
||||||
base=vitrageclient
|
|
@ -0,0 +1,4 @@
|
|||||||
|
---
|
||||||
|
features:
|
||||||
|
- Added a new cli command ``service list`` to display all the vitrage
|
||||||
|
services present in the system.
|
@ -61,6 +61,7 @@ openstack.rca.v1 =
|
|||||||
rca_webhook_add = vitrageclient.v1.cli.webhook:WebhookAdd
|
rca_webhook_add = vitrageclient.v1.cli.webhook:WebhookAdd
|
||||||
rca_webhook_list = vitrageclient.v1.cli.webhook:WebhookList
|
rca_webhook_list = vitrageclient.v1.cli.webhook:WebhookList
|
||||||
rca_webhook_show = vitrageclient.v1.cli.webhook:WebhookShow
|
rca_webhook_show = vitrageclient.v1.cli.webhook:WebhookShow
|
||||||
|
rca_service_list = vitrageclient.v1.cli.service:ServiceList
|
||||||
|
|
||||||
vitrageclient.formatter.show =
|
vitrageclient.formatter.show =
|
||||||
graphml = vitrageclient.common.formatters:GraphMLFormatter
|
graphml = vitrageclient.common.formatters:GraphMLFormatter
|
||||||
|
@ -5,36 +5,38 @@ _vitrage()
|
|||||||
_get_comp_words_by_ref -n : cur prev words
|
_get_comp_words_by_ref -n : cur prev words
|
||||||
|
|
||||||
# Command data:
|
# Command data:
|
||||||
cmds='alarm complete event healthcheck help rca resource template topology webhook'
|
cmds='alarm complete event healthcheck help rca resource service template topology webhook'
|
||||||
cmds_alarm='count history list show'
|
cmds_alarm='count history list show'
|
||||||
cmds_alarm_count='-h --help -f --format -c --column --max-width --fit-width --print-empty --noindent --variable --prefix --all-tenants'
|
cmds_alarm_count='-h --help -f --format -c --column --noindent --variable --prefix --max-width --fit-width --print-empty --all-tenants'
|
||||||
cmds_alarm_history='-h --help -f --format -c --column --max-width --fit-width --print-empty --quote --noindent --sort-column --all-tenants --limit --marker --start --end'
|
cmds_alarm_history='-h --help -f --format -c --column --quote --noindent --max-width --fit-width --print-empty --sort-column --all-tenants --limit --marker --start --end'
|
||||||
cmds_alarm_list='-h --help -f --format -c --column --max-width --fit-width --print-empty --quote --noindent --sort-column --all-tenants --limit --marker'
|
cmds_alarm_list='-h --help -f --format -c --column --quote --noindent --max-width --fit-width --print-empty --sort-column --all-tenants --limit --marker'
|
||||||
cmds_alarm_show='-h --help -f --format -c --column --max-width --fit-width --print-empty --noindent --variable --prefix'
|
cmds_alarm_show='-h --help -f --format -c --column --noindent --variable --prefix --max-width --fit-width --print-empty'
|
||||||
cmds_complete='-h --help --name --shell'
|
cmds_complete='-h --help --name --shell'
|
||||||
cmds_event='post'
|
cmds_event='post'
|
||||||
cmds_event_post='-h --help --type --time --details'
|
cmds_event_post='-h --help --type --time --details'
|
||||||
cmds_healthcheck='-h --help -f --format -c --column --max-width --fit-width --print-empty --noindent --variable --prefix'
|
cmds_healthcheck='-h --help -f --format -c --column --noindent --variable --prefix --max-width --fit-width --print-empty'
|
||||||
cmds_help='-h --help'
|
cmds_help='-h --help'
|
||||||
cmds_rca='show'
|
cmds_rca='show'
|
||||||
cmds_rca_show='-h --help -f --format -c --column --max-width --fit-width --print-empty --noindent --variable --prefix --all-tenants'
|
cmds_rca_show='-h --help -f --format -c --column --noindent --variable --prefix --max-width --fit-width --print-empty --all-tenants'
|
||||||
cmds_resource='list show'
|
cmds_resource='count list show'
|
||||||
cmds_resource_count='-h --help --type --all-tenants --filter --group-by'
|
cmds_resource_count='-h --help -f --format -c --column --noindent --variable --prefix --max-width --fit-width --print-empty --type --all-tenants --filter --group-by'
|
||||||
cmds_resource_list='-h --help -f --format -c --column --max-width --fit-width --print-empty --quote --noindent --sort-column --type --all-tenants --filter'
|
cmds_resource_list='-h --help -f --format -c --column --quote --noindent --max-width --fit-width --print-empty --sort-column --type --all-tenants --filter'
|
||||||
cmds_resource_show='-h --help -f --format -c --column --max-width --fit-width --print-empty --noindent --variable --prefix'
|
cmds_resource_show='-h --help -f --format -c --column --noindent --variable --prefix --max-width --fit-width --print-empty'
|
||||||
|
cmds_service='list'
|
||||||
|
cmds_service_list='-h --help -f --format -c --column --quote --noindent --max-width --fit-width --print-empty --sort-column'
|
||||||
cmds_template='add delete list show validate'
|
cmds_template='add delete list show validate'
|
||||||
cmds_template_add='-h --help -f --format -c --column --max-width --fit-width --print-empty --quote --noindent --sort-column --path --type'
|
cmds_template_add='-h --help -f --format -c --column --quote --noindent --max-width --fit-width --print-empty --sort-column --path --type'
|
||||||
cmds_template_delete='-h --help'
|
cmds_template_delete='-h --help'
|
||||||
cmds_template_list='-h --help -f --format -c --column --max-width --fit-width --print-empty --quote --noindent --sort-column'
|
cmds_template_list='-h --help -f --format -c --column --quote --noindent --max-width --fit-width --print-empty --sort-column'
|
||||||
cmds_template_show='-h --help -f --format -c --column --max-width --fit-width --print-empty --noindent --variable --prefix'
|
cmds_template_show='-h --help -f --format -c --column --noindent --variable --prefix --max-width --fit-width --print-empty'
|
||||||
cmds_template_validate='-h --help -f --format -c --column --max-width --fit-width --print-empty --noindent --variable --prefix --path --type'
|
cmds_template_validate='-h --help -f --format -c --column --noindent --variable --prefix --max-width --fit-width --print-empty --path --type'
|
||||||
cmds_topology='show'
|
cmds_topology='show'
|
||||||
cmds_topology_show='-h --help -f --format -c --column --max-width --fit-width --print-empty --noindent --variable --prefix --filter --limit --root --graph-type --all-tenants'
|
cmds_topology_show='-h --help -f --format -c --column --noindent --variable --prefix --max-width --fit-width --print-empty --filter --limit --root --graph-type --all-tenants'
|
||||||
cmds_webhook='add delete list show'
|
cmds_webhook='add delete list show'
|
||||||
cmds_webhook_add='-h --help -f --format -c --column --max-width --fit-width --print-empty --noindent --variable --prefix --url --regex_filter --headers'
|
cmds_webhook_add='-h --help -f --format -c --column --noindent --variable --prefix --max-width --fit-width --print-empty --url --regex_filter --headers'
|
||||||
cmds_webhook_delete='-h --help -f --format -c --column --max-width --fit-width --print-empty --noindent --variable --prefix'
|
cmds_webhook_delete='-h --help -f --format -c --column --noindent --variable --prefix --max-width --fit-width --print-empty'
|
||||||
cmds_webhook_list='-h --help -f --format -c --column --max-width --fit-width --print-empty --quote --noindent --sort-column --all-tenants'
|
cmds_webhook_list='-h --help -f --format -c --column --quote --noindent --max-width --fit-width --print-empty --sort-column --all-tenants'
|
||||||
cmds_webhook_show='-h --help -f --format -c --column --max-width --fit-width --print-empty --noindent --variable --prefix'
|
cmds_webhook_show='-h --help -f --format -c --column --noindent --variable --prefix --max-width --fit-width --print-empty'
|
||||||
|
|
||||||
dash=-
|
dash=-
|
||||||
underscore=_
|
underscore=_
|
||||||
|
@ -38,6 +38,7 @@ from vitrageclient.v1.cli import event
|
|||||||
from vitrageclient.v1.cli import healthcheck
|
from vitrageclient.v1.cli import healthcheck
|
||||||
from vitrageclient.v1.cli import rca
|
from vitrageclient.v1.cli import rca
|
||||||
from vitrageclient.v1.cli import resource
|
from vitrageclient.v1.cli import resource
|
||||||
|
from vitrageclient.v1.cli import service
|
||||||
from vitrageclient.v1.cli import template
|
from vitrageclient.v1.cli import template
|
||||||
from vitrageclient.v1.cli import topology
|
from vitrageclient.v1.cli import topology
|
||||||
from vitrageclient.v1.cli import webhook
|
from vitrageclient.v1.cli import webhook
|
||||||
@ -67,7 +68,8 @@ class VitrageCommandManager(commandmanager.CommandManager):
|
|||||||
'webhook delete': webhook.WebhookDelete,
|
'webhook delete': webhook.WebhookDelete,
|
||||||
'webhook add': webhook.WebhookAdd,
|
'webhook add': webhook.WebhookAdd,
|
||||||
'webhook list': webhook.WebhookList,
|
'webhook list': webhook.WebhookList,
|
||||||
'webhook show': webhook.WebhookShow
|
'webhook show': webhook.WebhookShow,
|
||||||
|
'service list': service.ServiceList
|
||||||
}
|
}
|
||||||
|
|
||||||
def load_commands(self, namespace):
|
def load_commands(self, namespace):
|
||||||
|
34
vitrageclient/v1/cli/service.py
Normal file
34
vitrageclient/v1/cli/service.py
Normal file
@ -0,0 +1,34 @@
|
|||||||
|
# Copyright 2019 - Nokia Corporation
|
||||||
|
#
|
||||||
|
# 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 cliff import lister
|
||||||
|
|
||||||
|
from vitrageclient.common import utils
|
||||||
|
|
||||||
|
|
||||||
|
class ServiceList(lister.Lister):
|
||||||
|
"""List all services"""
|
||||||
|
|
||||||
|
def get_parser(self, prog_name):
|
||||||
|
parser = super(ServiceList, self).get_parser(prog_name)
|
||||||
|
return parser
|
||||||
|
|
||||||
|
def take_action(self, parsed_args):
|
||||||
|
service = utils.get_client(self).service.list()
|
||||||
|
return utils.list2cols_with_rename(
|
||||||
|
(
|
||||||
|
('Name', 'name'),
|
||||||
|
('Process Id', 'process'),
|
||||||
|
('Hostname', 'hostname'),
|
||||||
|
('Created At', 'created'),
|
||||||
|
), service)
|
@ -18,6 +18,7 @@ from vitrageclient.v1 import event
|
|||||||
from vitrageclient.v1 import healthcheck
|
from vitrageclient.v1 import healthcheck
|
||||||
from vitrageclient.v1 import rca
|
from vitrageclient.v1 import rca
|
||||||
from vitrageclient.v1 import resource
|
from vitrageclient.v1 import resource
|
||||||
|
from vitrageclient.v1 import service
|
||||||
from vitrageclient.v1 import template
|
from vitrageclient.v1 import template
|
||||||
from vitrageclient.v1 import topology
|
from vitrageclient.v1 import topology
|
||||||
from vitrageclient.v1 import webhook
|
from vitrageclient.v1 import webhook
|
||||||
@ -37,3 +38,4 @@ class Client(object):
|
|||||||
self.event = event.Event(self._api)
|
self.event = event.Event(self._api)
|
||||||
self.healthcheck = healthcheck.HealthCheck(self._api)
|
self.healthcheck = healthcheck.HealthCheck(self._api)
|
||||||
self.webhook = webhook.Webhook(self._api)
|
self.webhook = webhook.Webhook(self._api)
|
||||||
|
self.service = service.Service(self._api)
|
||||||
|
24
vitrageclient/v1/service.py
Normal file
24
vitrageclient/v1/service.py
Normal file
@ -0,0 +1,24 @@
|
|||||||
|
# Copyright 2019 - Nokia Corporation
|
||||||
|
#
|
||||||
|
# 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.
|
||||||
|
|
||||||
|
|
||||||
|
class Service(object):
|
||||||
|
url = 'v1/service/'
|
||||||
|
|
||||||
|
def __init__(self, api):
|
||||||
|
self.api = api
|
||||||
|
|
||||||
|
def list(self):
|
||||||
|
"""Get service list"""
|
||||||
|
return self.api.get(self.url).json()
|
Loading…
x
Reference in New Issue
Block a user