Repository URL to install this package:
|
Version:
4.2.34 ▾
|
python3-workloadmgrclient
/
usr
/
lib
/
python3
/
dist-packages
/
workloadmgrclient
/
v1
/
workloadtype.py
|
|---|
import six
from cliff import show, lister
from osc_lib import utils as osc_utils
from workloadmgrclient import utils
from workloadmgrclient.v1.workload import WorkloadCommand
class WorkloadTypesCommand(WorkloadCommand):
resource = "workload_types"
class ListWorkloadType(WorkloadTypesCommand, lister.Lister):
"""List all the workload types of current project."""
def take_action(self, parsed_args):
client = self.get_client()
workload_type_objs = client.list() or []
headers = ["ID", "Name"]
columns = ["id", "name"]
return (
headers,
(osc_utils.get_item_properties(s, columns) for s in workload_type_objs),
)
class ShowWorkloadType(WorkloadTypesCommand, show.ShowOne):
"""Show details about a workload_type."""
@staticmethod
def _add_arguments(parser):
parser.add_argument(
"workload_type_id",
metavar="<workload_type_id>",
help="ID of the workload_type.",
)
def take_action(self, parsed_args):
"""Show details about a workload_type."""
client = self.get_client()
workload_type_obj = utils.find_resource(client, parsed_args.workload_type_id)
info = {}
info.update(workload_type_obj._info)
info.pop("links", None)
return zip(*sorted(six.iteritems(info)))