Files
tempest/tempest/cmd/list_plugins.py
Masayuki Igawa 3772790950 Remove python shebangs from python modules
This commit removes python shebangs from the python modules. They're
just python modules, so we don't need to have python shebangs for them.

Change-Id: I6f4428cf20be6f5ef2142030b4ede235444a4336
2019-08-08 13:11:26 +09:00

41 lines
1.2 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.
"""
Utility for listing all currently installed Tempest plugins.
**Usage:** ``tempest list-plugins``.
"""
from cliff import command
import prettytable
from tempest.test_discover import plugins as plg
class TempestListPlugins(command.Command):
def take_action(self, parsed_args):
self._list_plugins()
def get_description(self):
return 'List all tempest plugins'
def _list_plugins(self):
plugins = plg.TempestTestPluginManager()
output = prettytable.PrettyTable(["Name", "EntryPoint"])
for plugin in plugins.ext_plugins.extensions:
output.add_row([
plugin.name, plugin.entry_point_target])
print(output)