Repository URL to install this package:
|
Version:
6.0.1.dev4 ▾
|
python3-workloadmgrclient
/
usr
/
lib
/
python3
/
dist-packages
/
workloadmgrclient
/
v1
/
backup_target.py
|
|---|
import six
from cliff import show, lister
from osc_lib import utils as osc_utils
from osc_lib.cli import format_columns
from workloadmgrclient import utils
from workloadmgrclient.v1 import WorkloadmgrCommand
class BackupTargetCommand(WorkloadmgrCommand):
resource = "backup_targets"
class ListBackupTarget(BackupTargetCommand, lister.Lister):
"""List all the backup targets."""
def take_action(self, parsed_args):
client = self.get_client()
backup_targets = client.list(detailed=False) or []
return (
["ID", "Type", "Backend Endpoint", "Backend Mountpath", "Is_Default", "Status", "Version", "Capacity", "Used", "Created At"],
(
osc_utils.get_item_properties(
obj, ["id", "type", "nfs_export", "nfs_export_mount_path", "is_default", "status", "version", "capacity", "used", "created_at"]
)
for obj in backup_targets
),
)
class ShowBackupTarget(BackupTargetCommand, show.ShowOne):
"""Show details about backup targets"""
@staticmethod
def _add_arguments(parser):
parser.add_argument(
"backup_target_id", metavar="<backup_target_id>", help="ID of the backup target."
)
def take_action(self, parsed_args):
client = self.get_client()
bt_obj = utils.find_resource(client, parsed_args.backup_target_id)
btt_id_list = []
if bt_obj.backup_target_types:
for btt in bt_obj.backup_target_types:
btt_id_list.append(btt['name'])
info = {}
info.update(bt_obj._info)
info['backup_target_types'] = btt_id_list
columns = list(info.keys())
data = osc_utils.get_dict_properties(info, columns)
return columns, data