Cleanup manilaclient.utils module (part 2)
Remove functions 'arg', 'env' and 'add_arg' from manilaclient.utils and use same functions from cliutils instead. Partially implements: blueprint use-common-code Change-Id: Ib41250d527c5949cdfb7c6956703ff4b371a062b
This commit is contained in:

committed by
Valeriy Ponomaryov

parent
b11f5d78a2
commit
4a7e7cf089
@@ -24,6 +24,7 @@ import hashlib
|
||||
import os
|
||||
|
||||
from manilaclient import exceptions
|
||||
from manilaclient.openstack.common import cliutils
|
||||
from manilaclient import utils
|
||||
|
||||
|
||||
@@ -84,13 +85,13 @@ class Manager(utils.HookableMixin):
|
||||
Delete is not handled because listings are assumed to be performed
|
||||
often enough to keep the cache reasonably up-to-date.
|
||||
"""
|
||||
base_dir = utils.env('manilaclient_UUID_CACHE_DIR',
|
||||
base_dir = cliutils.env('manilaclient_UUID_CACHE_DIR',
|
||||
default="~/.manilaclient")
|
||||
|
||||
# NOTE(sirp): Keep separate UUID caches for each username + endpoint
|
||||
# pair
|
||||
username = utils.env('OS_USERNAME', 'MANILA_USERNAME')
|
||||
url = utils.env('OS_URL', 'MANILA_URL')
|
||||
username = cliutils.env('OS_USERNAME', 'MANILA_USERNAME')
|
||||
url = cliutils.env('OS_URL', 'MANILA_URL')
|
||||
uniqifier = hashlib.md5(username.encode('utf-8') +
|
||||
url.encode('utf-8')).hexdigest()
|
||||
|
||||
|
@@ -38,7 +38,6 @@ from manilaclient import exceptions as exc
|
||||
import manilaclient.extension
|
||||
from manilaclient.openstack.common import cliutils
|
||||
from manilaclient.openstack.common import strutils
|
||||
from manilaclient import utils
|
||||
from manilaclient.v1 import shell as shell_v1
|
||||
# from manilaclient.v2 import shell as shell_v2
|
||||
|
||||
@@ -195,7 +194,7 @@ class SecretsHelper(object):
|
||||
password = self.args.os_password
|
||||
else:
|
||||
verify_pass = strutils.bool_from_string(
|
||||
utils.env("OS_VERIFY_PASSWORD", default=False))
|
||||
cliutils.env("OS_VERIFY_PASSWORD", default=False))
|
||||
password = self._prompt_password(verify_pass)
|
||||
if not password:
|
||||
raise exc.CommandError(
|
||||
@@ -276,12 +275,12 @@ class OpenStackManilaShell(object):
|
||||
|
||||
parser.add_argument('--debug',
|
||||
action='store_true',
|
||||
default=utils.env('manilaclient_DEBUG',
|
||||
default=cliutils.env('manilaclient_DEBUG',
|
||||
default=False),
|
||||
help="Print debugging output")
|
||||
|
||||
parser.add_argument('--os-cache',
|
||||
default=utils.env('OS_CACHE', default=False),
|
||||
default=cliutils.env('OS_CACHE', default=False),
|
||||
action='store_true',
|
||||
help='Use the auth token cache. '
|
||||
'Defaults to env[OS_CACHE].')
|
||||
@@ -293,7 +292,7 @@ class OpenStackManilaShell(object):
|
||||
|
||||
parser.add_argument('--os-username',
|
||||
metavar='<auth-user-name>',
|
||||
default=utils.env('OS_USERNAME',
|
||||
default=cliutils.env('OS_USERNAME',
|
||||
'MANILA_USERNAME'),
|
||||
help='Defaults to env[OS_USERNAME].')
|
||||
parser.add_argument('--os_username',
|
||||
@@ -301,7 +300,7 @@ class OpenStackManilaShell(object):
|
||||
|
||||
parser.add_argument('--os-password',
|
||||
metavar='<auth-password>',
|
||||
default=utils.env('OS_PASSWORD',
|
||||
default=cliutils.env('OS_PASSWORD',
|
||||
'MANILA_PASSWORD'),
|
||||
help='Defaults to env[OS_PASSWORD].')
|
||||
parser.add_argument('--os_password',
|
||||
@@ -309,7 +308,7 @@ class OpenStackManilaShell(object):
|
||||
|
||||
parser.add_argument('--os-tenant-name',
|
||||
metavar='<auth-tenant-name>',
|
||||
default=utils.env('OS_TENANT_NAME',
|
||||
default=cliutils.env('OS_TENANT_NAME',
|
||||
'MANILA_PROJECT_ID'),
|
||||
help='Defaults to env[OS_TENANT_NAME].')
|
||||
parser.add_argument('--os_tenant_name',
|
||||
@@ -317,7 +316,7 @@ class OpenStackManilaShell(object):
|
||||
|
||||
parser.add_argument('--os-tenant-id',
|
||||
metavar='<auth-tenant-id>',
|
||||
default=utils.env('OS_TENANT_ID',
|
||||
default=cliutils.env('OS_TENANT_ID',
|
||||
'MANILA_TENANT_ID'),
|
||||
help='Defaults to env[OS_TENANT_ID].')
|
||||
parser.add_argument('--os_tenant_id',
|
||||
@@ -325,7 +324,7 @@ class OpenStackManilaShell(object):
|
||||
|
||||
parser.add_argument('--os-auth-url',
|
||||
metavar='<auth-url>',
|
||||
default=utils.env('OS_AUTH_URL',
|
||||
default=cliutils.env('OS_AUTH_URL',
|
||||
'MANILA_URL'),
|
||||
help='Defaults to env[OS_AUTH_URL].')
|
||||
parser.add_argument('--os_auth_url',
|
||||
@@ -333,7 +332,7 @@ class OpenStackManilaShell(object):
|
||||
|
||||
parser.add_argument('--os-region-name',
|
||||
metavar='<region-name>',
|
||||
default=utils.env('OS_REGION_NAME',
|
||||
default=cliutils.env('OS_REGION_NAME',
|
||||
'MANILA_REGION_NAME'),
|
||||
help='Defaults to env[OS_REGION_NAME].')
|
||||
parser.add_argument('--os_region_name',
|
||||
@@ -347,21 +346,21 @@ class OpenStackManilaShell(object):
|
||||
|
||||
parser.add_argument('--service-name',
|
||||
metavar='<service-name>',
|
||||
default=utils.env('MANILA_SERVICE_NAME'),
|
||||
default=cliutils.env('MANILA_SERVICE_NAME'),
|
||||
help='Defaults to env[MANILA_SERVICE_NAME]')
|
||||
parser.add_argument('--service_name',
|
||||
help=argparse.SUPPRESS)
|
||||
|
||||
parser.add_argument('--share-service-name',
|
||||
metavar='<share-service-name>',
|
||||
default=utils.env('MANILA_share_service_name'),
|
||||
default=cliutils.env('MANILA_share_service_name'),
|
||||
help='Defaults to env[MANILA_share_service_name]')
|
||||
parser.add_argument('--share_service_name',
|
||||
help=argparse.SUPPRESS)
|
||||
|
||||
parser.add_argument('--endpoint-type',
|
||||
metavar='<endpoint-type>',
|
||||
default=utils.env(
|
||||
default=cliutils.env(
|
||||
'MANILA_ENDPOINT_TYPE',
|
||||
default=DEFAULT_MANILA_ENDPOINT_TYPE),
|
||||
help='Defaults to env[MANILA_ENDPOINT_TYPE] or '
|
||||
@@ -371,7 +370,7 @@ class OpenStackManilaShell(object):
|
||||
|
||||
parser.add_argument('--os-share-api-version',
|
||||
metavar='<compute-api-ver>',
|
||||
default=utils.env(
|
||||
default=cliutils.env(
|
||||
'OS_SHARE_API_VERSION',
|
||||
default=DEFAULT_OS_SHARE_API_VERSION),
|
||||
help='Accepts 1 or 2,defaults '
|
||||
@@ -381,13 +380,13 @@ class OpenStackManilaShell(object):
|
||||
|
||||
parser.add_argument('--os-cacert',
|
||||
metavar='<ca-certificate>',
|
||||
default=utils.env('OS_CACERT', default=None),
|
||||
default=cliutils.env('OS_CACERT', default=None),
|
||||
help='Specify a CA bundle file to use in '
|
||||
'verifying a TLS (https) server certificate. '
|
||||
'Defaults to env[OS_CACERT]')
|
||||
|
||||
parser.add_argument('--insecure',
|
||||
default=utils.env('manilaclient_INSECURE',
|
||||
default=cliutils.env('manilaclient_INSECURE',
|
||||
default=False),
|
||||
action='store_true',
|
||||
help=argparse.SUPPRESS)
|
||||
@@ -637,7 +636,7 @@ class OpenStackManilaShell(object):
|
||||
commands.remove('bash_completion')
|
||||
print(' '.join(commands | options))
|
||||
|
||||
@utils.arg('command', metavar='<subcommand>', nargs='?',
|
||||
@cliutils.arg('command', metavar='<subcommand>', nargs='?',
|
||||
help='Display help for <subcommand>')
|
||||
def do_help(self, args):
|
||||
"""Display help about this program or one of its subcommands."""
|
||||
|
@@ -12,7 +12,6 @@
|
||||
|
||||
from __future__ import print_function
|
||||
|
||||
import os
|
||||
import sys
|
||||
|
||||
import prettytable
|
||||
@@ -21,41 +20,6 @@ import six
|
||||
from manilaclient.openstack.common import strutils
|
||||
|
||||
|
||||
def arg(*args, **kwargs):
|
||||
"""Decorator for CLI args."""
|
||||
def _decorator(func):
|
||||
add_arg(func, *args, **kwargs)
|
||||
return func
|
||||
return _decorator
|
||||
|
||||
|
||||
def env(*vars, **kwargs):
|
||||
"""Returns value of env var if exist.
|
||||
|
||||
Returns the first environment variable set if none are non-empty,
|
||||
defaults to '' or keyword arg default.
|
||||
"""
|
||||
for v in vars:
|
||||
value = os.environ.get(v, None)
|
||||
if value:
|
||||
return value
|
||||
return kwargs.get('default', '')
|
||||
|
||||
|
||||
def add_arg(f, *args, **kwargs):
|
||||
"""Bind CLI arguments to a shell.py `do_foo` function."""
|
||||
|
||||
if not hasattr(f, 'arguments'):
|
||||
f.arguments = []
|
||||
|
||||
# NOTE(sirp): avoid dups that can occur when the module is shared across
|
||||
# tests.
|
||||
if (args, kwargs) not in f.arguments:
|
||||
# Because of the sematics of decorator composition if we just append
|
||||
# to the options list positional options will appear to be backwards.
|
||||
f.arguments.insert(0, (args, kwargs))
|
||||
|
||||
|
||||
def _print(pt, order):
|
||||
if sys.version_info >= (3, 0):
|
||||
print(pt.get_string(sortby=order))
|
||||
|
@@ -145,11 +145,13 @@ def _quota_update(manager, identifier, args):
|
||||
manager.update(identifier, **updates)
|
||||
|
||||
|
||||
@utils.arg('--tenant',
|
||||
@cliutils.arg(
|
||||
'--tenant',
|
||||
metavar='<tenant-id>',
|
||||
default=None,
|
||||
help='ID of tenant to list the quotas for.')
|
||||
@utils.arg('--user',
|
||||
@cliutils.arg(
|
||||
'--user',
|
||||
metavar='<user-id>',
|
||||
default=None,
|
||||
help='ID of user to list the quotas for.')
|
||||
@@ -162,7 +164,8 @@ def do_quota_show(cs, args):
|
||||
_quota_show(cs.quotas.get(args.tenant, user_id=args.user))
|
||||
|
||||
|
||||
@utils.arg('--tenant',
|
||||
@cliutils.arg(
|
||||
'--tenant',
|
||||
metavar='<tenant-id>',
|
||||
default=None,
|
||||
help='ID of tenant to list the default quotas for.')
|
||||
@@ -175,30 +178,41 @@ def do_quota_defaults(cs, args):
|
||||
_quota_show(cs.quotas.defaults(args.tenant))
|
||||
|
||||
|
||||
@utils.arg('tenant',
|
||||
@cliutils.arg(
|
||||
'tenant',
|
||||
metavar='<tenant_id>',
|
||||
help='UUID of tenant to set the quotas for.')
|
||||
@utils.arg('--user',
|
||||
@cliutils.arg(
|
||||
'--user',
|
||||
metavar='<user-id>',
|
||||
default=None,
|
||||
help='ID of user to set the quotas for.')
|
||||
@utils.arg('--shares',
|
||||
@cliutils.arg(
|
||||
'--shares',
|
||||
metavar='<shares>',
|
||||
type=int, default=None,
|
||||
type=int,
|
||||
default=None,
|
||||
help='New value for the "shares" quota.')
|
||||
@utils.arg('--snapshots',
|
||||
@cliutils.arg(
|
||||
'--snapshots',
|
||||
metavar='<snapshots>',
|
||||
type=int, default=None,
|
||||
type=int,
|
||||
default=None,
|
||||
help='New value for the "snapshots" quota.')
|
||||
@utils.arg('--gigabytes',
|
||||
@cliutils.arg(
|
||||
'--gigabytes',
|
||||
metavar='<gigabytes>',
|
||||
type=int, default=None,
|
||||
type=int,
|
||||
default=None,
|
||||
help='New value for the "gigabytes" quota.')
|
||||
@utils.arg('--share-networks',
|
||||
@cliutils.arg(
|
||||
'--share-networks',
|
||||
metavar='<share-networks>',
|
||||
type=int, default=None,
|
||||
type=int,
|
||||
default=None,
|
||||
help='New value for the "share_networks" quota.')
|
||||
@utils.arg('--force',
|
||||
@cliutils.arg(
|
||||
'--force',
|
||||
dest='force',
|
||||
action="store_true",
|
||||
default=None,
|
||||
@@ -211,10 +225,12 @@ def do_quota_update(cs, args):
|
||||
_quota_update(cs.quotas, args.tenant, args)
|
||||
|
||||
|
||||
@utils.arg('--tenant',
|
||||
@cliutils.arg(
|
||||
'--tenant',
|
||||
metavar='<tenant-id>',
|
||||
help='ID of tenant to delete quota for.')
|
||||
@utils.arg('--user',
|
||||
@cliutils.arg(
|
||||
'--user',
|
||||
metavar='<user-id>',
|
||||
help='ID of user to delete quota for.')
|
||||
def do_quota_delete(cs, args):
|
||||
@@ -229,7 +245,8 @@ def do_quota_delete(cs, args):
|
||||
cs.quotas.delete(args.tenant, user_id=args.user)
|
||||
|
||||
|
||||
@utils.arg('class_name',
|
||||
@cliutils.arg(
|
||||
'class_name',
|
||||
metavar='<class>',
|
||||
help='Name of quota class to list the quotas for.')
|
||||
@cliutils.service_type('share')
|
||||
@@ -239,24 +256,33 @@ def do_quota_class_show(cs, args):
|
||||
_quota_show(cs.quota_classes.get(args.class_name))
|
||||
|
||||
|
||||
@utils.arg('class-name',
|
||||
@cliutils.arg(
|
||||
'class-name',
|
||||
metavar='<class-name>',
|
||||
help='Name of quota class to set the quotas for.')
|
||||
@utils.arg('--shares',
|
||||
@cliutils.arg(
|
||||
'--shares',
|
||||
metavar='<shares>',
|
||||
type=int, default=None,
|
||||
type=int,
|
||||
default=None,
|
||||
help='New value for the "shares" quota.')
|
||||
@utils.arg('--snapshots',
|
||||
@cliutils.arg(
|
||||
'--snapshots',
|
||||
metavar='<snapshots>',
|
||||
type=int, default=None,
|
||||
type=int,
|
||||
default=None,
|
||||
help='New value for the "snapshots" quota.')
|
||||
@utils.arg('--gigabytes',
|
||||
@cliutils.arg(
|
||||
'--gigabytes',
|
||||
metavar='<gigabytes>',
|
||||
type=int, default=None,
|
||||
type=int,
|
||||
default=None,
|
||||
help='New value for the "gigabytes" quota.')
|
||||
@utils.arg('--share-networks',
|
||||
@cliutils.arg(
|
||||
'--share-networks',
|
||||
metavar='<share-networks>',
|
||||
type=int, default=None,
|
||||
type=int,
|
||||
default=None,
|
||||
help='New value for the "share_networks" quota.')
|
||||
@cliutils.service_type('share')
|
||||
def do_quota_class_update(cs, args):
|
||||
@@ -281,43 +307,44 @@ def do_rate_limits(cs, args):
|
||||
utils.print_list(limits, columns)
|
||||
|
||||
|
||||
@utils.arg(
|
||||
@cliutils.arg(
|
||||
'share_protocol',
|
||||
metavar='<share_protocol>',
|
||||
type=str,
|
||||
help='Share type (NFS or CIFS)')
|
||||
@utils.arg(
|
||||
@cliutils.arg(
|
||||
'size',
|
||||
metavar='<size>',
|
||||
type=int,
|
||||
help='Share size in GB')
|
||||
@utils.arg(
|
||||
@cliutils.arg(
|
||||
'--snapshot-id',
|
||||
metavar='<snapshot-id>',
|
||||
help='Optional snapshot id to create the share from. (Default=None)',
|
||||
default=None)
|
||||
@utils.arg(
|
||||
@cliutils.arg(
|
||||
'--name',
|
||||
metavar='<name>',
|
||||
help='Optional share name. (Default=None)',
|
||||
default=None)
|
||||
@utils.arg('--metadata',
|
||||
@cliutils.arg(
|
||||
'--metadata',
|
||||
type=str,
|
||||
nargs='*',
|
||||
metavar='<key=value>',
|
||||
help='Metadata key=value pairs (Optional, Default=None)',
|
||||
default=None)
|
||||
@utils.arg(
|
||||
@cliutils.arg(
|
||||
'--share-network',
|
||||
metavar='<network-info>',
|
||||
help='Optional network info id or name',
|
||||
default=None)
|
||||
@utils.arg(
|
||||
@cliutils.arg(
|
||||
'--description',
|
||||
metavar='<description>',
|
||||
help='Optional share description. (Default=None)',
|
||||
default=None)
|
||||
@utils.arg(
|
||||
@cliutils.arg(
|
||||
'--volume-type',
|
||||
metavar='<volume-type>',
|
||||
help='Optional volume type. (Default=None)',
|
||||
@@ -341,14 +368,17 @@ def do_create(cs, args):
|
||||
_print_share(cs, share)
|
||||
|
||||
|
||||
@utils.arg('share',
|
||||
@cliutils.arg(
|
||||
'share',
|
||||
metavar='<share>',
|
||||
help='Name or ID of the share to update metadata on.')
|
||||
@utils.arg('action',
|
||||
@cliutils.arg(
|
||||
'action',
|
||||
metavar='<action>',
|
||||
choices=['set', 'unset'],
|
||||
help="Actions: 'set' or 'unset'")
|
||||
@utils.arg('metadata',
|
||||
@cliutils.arg(
|
||||
'metadata',
|
||||
metavar='<key=value>',
|
||||
nargs='+',
|
||||
default=[],
|
||||
@@ -365,7 +395,9 @@ def do_metadata(cs, args):
|
||||
cs.shares.delete_metadata(share, sorted(list(metadata), reverse=True))
|
||||
|
||||
|
||||
@utils.arg('share', metavar='<share>',
|
||||
@cliutils.arg(
|
||||
'share',
|
||||
metavar='<share>',
|
||||
help='Name or ID of share')
|
||||
@cliutils.service_type('share')
|
||||
def do_metadata_show(cs, args):
|
||||
@@ -375,10 +407,12 @@ def do_metadata_show(cs, args):
|
||||
utils.print_dict(metadata, 'Metadata-property')
|
||||
|
||||
|
||||
@utils.arg('share',
|
||||
@cliutils.arg(
|
||||
'share',
|
||||
metavar='<share>',
|
||||
help='Name or ID of the share to update metadata on.')
|
||||
@utils.arg('metadata',
|
||||
@cliutils.arg(
|
||||
'metadata',
|
||||
metavar='<key=value>',
|
||||
nargs='+',
|
||||
default=[],
|
||||
@@ -392,7 +426,10 @@ def do_metadata_update_all(cs, args):
|
||||
utils.print_dict(metadata, 'Metadata-property')
|
||||
|
||||
|
||||
@utils.arg('share', metavar='<share>', nargs='+',
|
||||
@cliutils.arg(
|
||||
'share',
|
||||
metavar='<share>',
|
||||
nargs='+',
|
||||
help='Name or ID of share(s).')
|
||||
def do_delete(cs, args):
|
||||
"""Removes one or more shares."""
|
||||
@@ -411,7 +448,8 @@ def do_delete(cs, args):
|
||||
"shares.")
|
||||
|
||||
|
||||
@utils.arg('share',
|
||||
@cliutils.arg(
|
||||
'share',
|
||||
metavar='<share>',
|
||||
nargs='+',
|
||||
help='Name or ID of share(s) to force delete.')
|
||||
@@ -429,7 +467,7 @@ def do_force_delete(cs, args):
|
||||
"specified shares.")
|
||||
|
||||
|
||||
@utils.arg(
|
||||
@cliutils.arg(
|
||||
'share',
|
||||
metavar='<share>',
|
||||
help='Name or ID of the NAS share.')
|
||||
@@ -440,16 +478,16 @@ def do_show(cs, args):
|
||||
_print_share(cs, share)
|
||||
|
||||
|
||||
@utils.arg(
|
||||
@cliutils.arg(
|
||||
'share',
|
||||
metavar='<share>',
|
||||
help='Name or ID of the NAS share to modify.')
|
||||
@utils.arg(
|
||||
@cliutils.arg(
|
||||
'access_type',
|
||||
metavar='<access_type>',
|
||||
help='access rule type (only "ip" and "sid"(user or group) '
|
||||
'are supported).')
|
||||
@utils.arg(
|
||||
@cliutils.arg(
|
||||
'access_to',
|
||||
metavar='<access_to>',
|
||||
help='Value that defines access')
|
||||
@@ -461,11 +499,11 @@ def do_access_allow(cs, args):
|
||||
utils.print_dict(access)
|
||||
|
||||
|
||||
@utils.arg(
|
||||
@cliutils.arg(
|
||||
'share',
|
||||
metavar='<share>',
|
||||
help='Name or ID of the NAS share to modify.')
|
||||
@utils.arg(
|
||||
@cliutils.arg(
|
||||
'id',
|
||||
metavar='<id>',
|
||||
help='id of the access rule to be deleted.')
|
||||
@@ -476,7 +514,7 @@ def do_access_deny(cs, args):
|
||||
share.deny(args.id)
|
||||
|
||||
|
||||
@utils.arg(
|
||||
@cliutils.arg(
|
||||
'share',
|
||||
metavar='<share>',
|
||||
help='Name or ID of the share.')
|
||||
@@ -488,7 +526,7 @@ def do_access_list(cs, args):
|
||||
utils.print_list(access_list, ['id', 'access type', 'access to', 'state'])
|
||||
|
||||
|
||||
@utils.arg(
|
||||
@cliutils.arg(
|
||||
'--all-tenants',
|
||||
dest='all_tenants',
|
||||
metavar='<0|1>',
|
||||
@@ -497,17 +535,17 @@ def do_access_list(cs, args):
|
||||
const=1,
|
||||
default=0,
|
||||
help='Display information from all tenants (Admin only).')
|
||||
@utils.arg(
|
||||
@cliutils.arg(
|
||||
'--name',
|
||||
metavar='<name>',
|
||||
default=None,
|
||||
help='Filter results by name')
|
||||
@utils.arg(
|
||||
@cliutils.arg(
|
||||
'--status',
|
||||
metavar='<status>',
|
||||
default=None,
|
||||
help='Filter results by status')
|
||||
@utils.arg(
|
||||
@cliutils.arg(
|
||||
'--share-server-id',
|
||||
metavar='<share_server_id>',
|
||||
default=None,
|
||||
@@ -528,7 +566,7 @@ def do_list(cs, args):
|
||||
'Export location'])
|
||||
|
||||
|
||||
@utils.arg(
|
||||
@cliutils.arg(
|
||||
'--all-tenants',
|
||||
dest='all_tenants',
|
||||
metavar='<0|1>',
|
||||
@@ -537,17 +575,17 @@ def do_list(cs, args):
|
||||
const=1,
|
||||
default=0,
|
||||
help='Display information from all tenants (Admin only).')
|
||||
@utils.arg(
|
||||
@cliutils.arg(
|
||||
'--name',
|
||||
metavar='<name>',
|
||||
default=None,
|
||||
help='Filter results by name')
|
||||
@utils.arg(
|
||||
@cliutils.arg(
|
||||
'--status',
|
||||
metavar='<status>',
|
||||
default=None,
|
||||
help='Filter results by status')
|
||||
@utils.arg(
|
||||
@cliutils.arg(
|
||||
'--share-id',
|
||||
metavar='<share-id>',
|
||||
default=None,
|
||||
@@ -567,7 +605,7 @@ def do_snapshot_list(cs, args):
|
||||
['ID', 'Share ID', 'Status', 'Name', 'Share Size'])
|
||||
|
||||
|
||||
@utils.arg(
|
||||
@cliutils.arg(
|
||||
'snapshot',
|
||||
metavar='<snapshot>',
|
||||
help='Name or ID of the snapshot.')
|
||||
@@ -578,23 +616,23 @@ def do_snapshot_show(cs, args):
|
||||
_print_share_snapshot(cs, snapshot)
|
||||
|
||||
|
||||
@utils.arg(
|
||||
@cliutils.arg(
|
||||
'share',
|
||||
metavar='<share>',
|
||||
help='Name or ID of the share to snapshot')
|
||||
@utils.arg(
|
||||
@cliutils.arg(
|
||||
'--force',
|
||||
metavar='<True|False>',
|
||||
help='Optional flag to indicate whether '
|
||||
'to snapshot a share even if it\'s busy.'
|
||||
' (Default=False)',
|
||||
default=False)
|
||||
@utils.arg(
|
||||
@cliutils.arg(
|
||||
'--name',
|
||||
metavar='<name>',
|
||||
default=None,
|
||||
help='Optional snapshot name. (Default=None)')
|
||||
@utils.arg(
|
||||
@cliutils.arg(
|
||||
'--description',
|
||||
metavar='<description>',
|
||||
default=None,
|
||||
@@ -610,14 +648,18 @@ def do_snapshot_create(cs, args):
|
||||
_print_share_snapshot(cs, snapshot)
|
||||
|
||||
|
||||
@utils.arg('share',
|
||||
@cliutils.arg(
|
||||
'share',
|
||||
metavar='<share>',
|
||||
help='Name or ID of the share to rename.')
|
||||
@utils.arg('name',
|
||||
@cliutils.arg(
|
||||
'name',
|
||||
nargs='?',
|
||||
metavar='<name>',
|
||||
help='New name for the share.')
|
||||
@utils.arg('--description', metavar='<description>',
|
||||
@cliutils.arg(
|
||||
'--description',
|
||||
metavar='<description>',
|
||||
help='Optional share description. (Default=None)',
|
||||
default=None)
|
||||
@cliutils.service_type('share')
|
||||
@@ -635,14 +677,18 @@ def do_rename(cs, args):
|
||||
_find_share(cs, args.share).update(**kwargs)
|
||||
|
||||
|
||||
@utils.arg('snapshot',
|
||||
@cliutils.arg(
|
||||
'snapshot',
|
||||
metavar='<snapshot>',
|
||||
help='Name or ID of the snapshot to rename.')
|
||||
@utils.arg('name',
|
||||
@cliutils.arg(
|
||||
'name',
|
||||
nargs='?',
|
||||
metavar='<name>',
|
||||
help='New name for the snapshot.')
|
||||
@utils.arg('--description', metavar='<description>',
|
||||
@cliutils.arg(
|
||||
'--description',
|
||||
metavar='<description>',
|
||||
help='Optional snapshot description. (Default=None)',
|
||||
default=None)
|
||||
@cliutils.service_type('share')
|
||||
@@ -660,7 +706,7 @@ def do_snapshot_rename(cs, args):
|
||||
_find_share_snapshot(cs, args.snapshot).update(**kwargs)
|
||||
|
||||
|
||||
@utils.arg(
|
||||
@cliutils.arg(
|
||||
'snapshot',
|
||||
metavar='<snapshot>',
|
||||
help='Name or ID of the snapshot to delete.')
|
||||
@@ -671,7 +717,7 @@ def do_snapshot_delete(cs, args):
|
||||
snapshot.delete()
|
||||
|
||||
|
||||
@utils.arg(
|
||||
@cliutils.arg(
|
||||
'snapshot',
|
||||
metavar='<snapshot>',
|
||||
help='Name or ID of the snapshot to force delete.')
|
||||
@@ -682,9 +728,13 @@ def do_snapshot_force_delete(cs, args):
|
||||
snapshot.force_delete()
|
||||
|
||||
|
||||
@utils.arg('snapshot', metavar='<snapshot>',
|
||||
@cliutils.arg(
|
||||
'snapshot',
|
||||
metavar='<snapshot>',
|
||||
help='Name or ID of the snapshot to modify.')
|
||||
@utils.arg('--state', metavar='<state>',
|
||||
@cliutils.arg(
|
||||
'--state',
|
||||
metavar='<state>',
|
||||
default='available',
|
||||
help=('Indicate which state to assign the snapshot. '
|
||||
'Options include available, error, creating, deleting, '
|
||||
@@ -697,11 +747,11 @@ def do_snapshot_reset_state(cs, args):
|
||||
snapshot.reset_state(args.state)
|
||||
|
||||
|
||||
@utils.arg(
|
||||
@cliutils.arg(
|
||||
'share',
|
||||
metavar='<share>',
|
||||
help='Name or ID of the share to modify.')
|
||||
@utils.arg(
|
||||
@cliutils.arg(
|
||||
'--state',
|
||||
metavar='<state>',
|
||||
default='available',
|
||||
@@ -715,23 +765,23 @@ def do_reset_state(cs, args):
|
||||
share.reset_state(args.state)
|
||||
|
||||
|
||||
@utils.arg(
|
||||
@cliutils.arg(
|
||||
'--neutron-net-id',
|
||||
metavar='neutron-net-id',
|
||||
default=None,
|
||||
help="Neutron network id. Used to set up network for share servers.")
|
||||
@utils.arg(
|
||||
@cliutils.arg(
|
||||
'--neutron-subnet-id',
|
||||
metavar='neutron-subnet-id',
|
||||
default=None,
|
||||
help="Neutron subnet id. Used to set up network for share servers. "
|
||||
"This subnet should belong to specified neutron network.")
|
||||
@utils.arg(
|
||||
@cliutils.arg(
|
||||
'--name',
|
||||
metavar='<name>',
|
||||
default=None,
|
||||
help="Share network name.")
|
||||
@utils.arg(
|
||||
@cliutils.arg(
|
||||
'--description',
|
||||
metavar='<description>',
|
||||
default=None,
|
||||
@@ -747,27 +797,27 @@ def do_share_network_create(cs, args):
|
||||
utils.print_dict(info)
|
||||
|
||||
|
||||
@utils.arg(
|
||||
@cliutils.arg(
|
||||
'share_network',
|
||||
metavar='<share-network>',
|
||||
help='Name or ID of share network to update.')
|
||||
@utils.arg(
|
||||
@cliutils.arg(
|
||||
'--neutron-net-id',
|
||||
metavar='neutron-net-id',
|
||||
default=None,
|
||||
help="Neutron network id. Used to set up network for share servers.")
|
||||
@utils.arg(
|
||||
@cliutils.arg(
|
||||
'--neutron-subnet-id',
|
||||
metavar='neutron-subnet-id',
|
||||
default=None,
|
||||
help="Neutron subnet id. Used to set up network for share servers. "
|
||||
"This subnet should belong to specified neutron network.")
|
||||
@utils.arg(
|
||||
@cliutils.arg(
|
||||
'--name',
|
||||
metavar='<name>',
|
||||
default=None,
|
||||
help="Share network name.")
|
||||
@utils.arg(
|
||||
@cliutils.arg(
|
||||
'--description',
|
||||
metavar='<description>',
|
||||
default=None,
|
||||
@@ -784,7 +834,7 @@ def do_share_network_update(cs, args):
|
||||
utils.print_dict(info)
|
||||
|
||||
|
||||
@utils.arg(
|
||||
@cliutils.arg(
|
||||
'share_network',
|
||||
metavar='<share-network>',
|
||||
help='Name or ID of the share network to show.')
|
||||
@@ -795,7 +845,7 @@ def do_share_network_show(cs, args):
|
||||
utils.print_dict(info)
|
||||
|
||||
|
||||
@utils.arg(
|
||||
@cliutils.arg(
|
||||
'--all-tenants',
|
||||
dest='all_tenants',
|
||||
metavar='<0|1>',
|
||||
@@ -804,7 +854,7 @@ def do_share_network_show(cs, args):
|
||||
const=1,
|
||||
default=0,
|
||||
help='Display information from all tenants (Admin only).')
|
||||
@utils.arg(
|
||||
@cliutils.arg(
|
||||
'--status',
|
||||
metavar='<status>',
|
||||
default=None,
|
||||
@@ -821,11 +871,11 @@ def do_share_network_list(cs, args):
|
||||
utils.print_list(share_networks, fields=fields)
|
||||
|
||||
|
||||
@utils.arg(
|
||||
@cliutils.arg(
|
||||
'share_network',
|
||||
metavar='<share-network>',
|
||||
help='Share network name or ID.')
|
||||
@utils.arg(
|
||||
@cliutils.arg(
|
||||
'security_service',
|
||||
metavar='<security-service>',
|
||||
help='Security service to associate with.')
|
||||
@@ -836,11 +886,11 @@ def do_share_network_security_service_add(cs, args):
|
||||
args.security_service)
|
||||
|
||||
|
||||
@utils.arg(
|
||||
@cliutils.arg(
|
||||
'share_network',
|
||||
metavar='<share-network>',
|
||||
help='Share network name or ID.')
|
||||
@utils.arg(
|
||||
@cliutils.arg(
|
||||
'security_service',
|
||||
metavar='<security-service>',
|
||||
help='Security service to dissociate.')
|
||||
@@ -851,7 +901,7 @@ def do_share_network_security_service_remove(cs, args):
|
||||
args.security_service)
|
||||
|
||||
|
||||
@utils.arg(
|
||||
@cliutils.arg(
|
||||
'share_network',
|
||||
metavar='<share-network>',
|
||||
help='Share network name or ID.')
|
||||
@@ -866,7 +916,7 @@ def do_share_network_security_service_list(cs, args):
|
||||
utils.print_list(security_services, fields=fields)
|
||||
|
||||
|
||||
@utils.arg(
|
||||
@cliutils.arg(
|
||||
'share_network',
|
||||
metavar='<share-network>',
|
||||
help='Name or ID of share network to be deleted.')
|
||||
@@ -875,41 +925,41 @@ def do_share_network_delete(cs, args):
|
||||
_find_share_network(cs, args.share_network).delete()
|
||||
|
||||
|
||||
@utils.arg(
|
||||
@cliutils.arg(
|
||||
'type',
|
||||
metavar='<type>',
|
||||
help="Security service type: 'ldap', 'kerberos' or 'active_directory'")
|
||||
@utils.arg(
|
||||
@cliutils.arg(
|
||||
'--dns-ip',
|
||||
metavar='<dns_ip>',
|
||||
default=None,
|
||||
help="dns ip address used inside tenant's network")
|
||||
@utils.arg(
|
||||
@cliutils.arg(
|
||||
'--server',
|
||||
metavar='<server>',
|
||||
default=None,
|
||||
help="security service ip address or hostname")
|
||||
@utils.arg(
|
||||
@cliutils.arg(
|
||||
'--domain',
|
||||
metavar='<domain>',
|
||||
default=None,
|
||||
help="security service domain")
|
||||
@utils.arg(
|
||||
@cliutils.arg(
|
||||
'--sid',
|
||||
metavar='<security identifier>',
|
||||
default=None,
|
||||
help="security service user or group used by tenant")
|
||||
@utils.arg(
|
||||
@cliutils.arg(
|
||||
'--password',
|
||||
metavar='<password>',
|
||||
default=None,
|
||||
help="password used by sid")
|
||||
@utils.arg(
|
||||
@cliutils.arg(
|
||||
'--name',
|
||||
metavar='<name>',
|
||||
default=None,
|
||||
help="security service name")
|
||||
@utils.arg(
|
||||
@cliutils.arg(
|
||||
'--description',
|
||||
metavar='<description>',
|
||||
default=None,
|
||||
@@ -928,41 +978,41 @@ def do_security_service_create(cs, args):
|
||||
utils.print_dict(info)
|
||||
|
||||
|
||||
@utils.arg(
|
||||
@cliutils.arg(
|
||||
'security_service',
|
||||
metavar='<security-service>',
|
||||
help='Security service to update.')
|
||||
@utils.arg(
|
||||
@cliutils.arg(
|
||||
'--dns-ip',
|
||||
metavar='<dns-ip>',
|
||||
default=None,
|
||||
help="dns ip address used inside tenant's network")
|
||||
@utils.arg(
|
||||
@cliutils.arg(
|
||||
'--server',
|
||||
metavar='<server>',
|
||||
default=None,
|
||||
help="security service ip address or hostname")
|
||||
@utils.arg(
|
||||
@cliutils.arg(
|
||||
'--domain',
|
||||
metavar='<domain>',
|
||||
default=None,
|
||||
help="security service domain")
|
||||
@utils.arg(
|
||||
@cliutils.arg(
|
||||
'--sid',
|
||||
metavar='<security identifier>',
|
||||
default=None,
|
||||
help="security service user or group used by tenant")
|
||||
@utils.arg(
|
||||
@cliutils.arg(
|
||||
'--password',
|
||||
metavar='<password>',
|
||||
default=None,
|
||||
help="password used by sid")
|
||||
@utils.arg(
|
||||
@cliutils.arg(
|
||||
'--name',
|
||||
metavar='<name>',
|
||||
default=None,
|
||||
help="security service name")
|
||||
@utils.arg(
|
||||
@cliutils.arg(
|
||||
'--description',
|
||||
metavar='<description>',
|
||||
default=None,
|
||||
@@ -982,7 +1032,7 @@ def do_security_service_update(cs, args):
|
||||
utils.print_dict(info)
|
||||
|
||||
|
||||
@utils.arg(
|
||||
@cliutils.arg(
|
||||
'security_service',
|
||||
metavar='<security-service>',
|
||||
help='Security service to show.')
|
||||
@@ -993,7 +1043,7 @@ def do_security_service_show(cs, args):
|
||||
utils.print_dict(info)
|
||||
|
||||
|
||||
@utils.arg(
|
||||
@cliutils.arg(
|
||||
'--all-tenants',
|
||||
dest='all_tenants',
|
||||
metavar='<0|1>',
|
||||
@@ -1002,7 +1052,7 @@ def do_security_service_show(cs, args):
|
||||
const=1,
|
||||
default=0,
|
||||
help='Display information from all tenants (Admin only).')
|
||||
@utils.arg(
|
||||
@cliutils.arg(
|
||||
'--status',
|
||||
metavar='<status>',
|
||||
default=None,
|
||||
@@ -1019,7 +1069,7 @@ def do_security_service_list(cs, args):
|
||||
utils.print_list(security_services, fields=fields)
|
||||
|
||||
|
||||
@utils.arg(
|
||||
@cliutils.arg(
|
||||
'security_service',
|
||||
metavar='<security-service>',
|
||||
help='Security service to delete.')
|
||||
@@ -1028,22 +1078,22 @@ def do_security_service_delete(cs, args):
|
||||
cs.security_services.delete(args.security_service)
|
||||
|
||||
|
||||
@utils.arg(
|
||||
@cliutils.arg(
|
||||
'--host',
|
||||
metavar='<hostname>',
|
||||
default=None,
|
||||
help='Filter results by name of host.')
|
||||
@utils.arg(
|
||||
@cliutils.arg(
|
||||
'--status',
|
||||
metavar='<status>',
|
||||
default=None,
|
||||
help='Filter results by status.')
|
||||
@utils.arg(
|
||||
@cliutils.arg(
|
||||
'--share-network',
|
||||
metavar='<share_network>',
|
||||
default=None,
|
||||
help='Filter results by share network.')
|
||||
@utils.arg(
|
||||
@cliutils.arg(
|
||||
'--project-id',
|
||||
metavar='<project_id>',
|
||||
default=None,
|
||||
@@ -1068,7 +1118,7 @@ def do_share_server_list(cs, args):
|
||||
utils.print_list(share_servers, fields=fields)
|
||||
|
||||
|
||||
@utils.arg(
|
||||
@cliutils.arg(
|
||||
'id',
|
||||
metavar='<id>',
|
||||
type=str,
|
||||
@@ -1083,7 +1133,7 @@ def do_share_server_show(cs, args):
|
||||
utils.print_dict(share_server._info)
|
||||
|
||||
|
||||
@utils.arg(
|
||||
@cliutils.arg(
|
||||
'id',
|
||||
metavar='<id>',
|
||||
type=str,
|
||||
@@ -1094,7 +1144,7 @@ def do_share_server_details(cs, args):
|
||||
utils.print_dict(details._info)
|
||||
|
||||
|
||||
@utils.arg(
|
||||
@cliutils.arg(
|
||||
'id',
|
||||
metavar='<id>',
|
||||
type=str,
|
||||
@@ -1104,27 +1154,27 @@ def do_share_server_delete(cs, args):
|
||||
cs.share_servers.delete(args.id)
|
||||
|
||||
|
||||
@utils.arg(
|
||||
@cliutils.arg(
|
||||
'--host',
|
||||
metavar='<hostname>',
|
||||
default=None,
|
||||
help='Name of host.')
|
||||
@utils.arg(
|
||||
@cliutils.arg(
|
||||
'--binary',
|
||||
metavar='<binary>',
|
||||
default=None,
|
||||
help='Service binary.')
|
||||
@utils.arg(
|
||||
@cliutils.arg(
|
||||
'--status',
|
||||
metavar='<status>',
|
||||
default=None,
|
||||
help='Filter results by status')
|
||||
@utils.arg(
|
||||
@cliutils.arg(
|
||||
'--state',
|
||||
metavar='<state>',
|
||||
default=None,
|
||||
help='Filter results by state')
|
||||
@utils.arg(
|
||||
@cliutils.arg(
|
||||
'--zone',
|
||||
metavar='<zone>',
|
||||
default=None,
|
||||
@@ -1178,7 +1228,8 @@ def do_extra_specs_list(cs, args):
|
||||
_print_type_and_extra_specs_list(vtypes)
|
||||
|
||||
|
||||
@utils.arg('name',
|
||||
@cliutils.arg(
|
||||
'name',
|
||||
metavar='<name>',
|
||||
help="Name of the new volume type")
|
||||
@cliutils.service_type('share')
|
||||
@@ -1188,7 +1239,8 @@ def do_type_create(cs, args):
|
||||
_print_volume_type_list([vtype])
|
||||
|
||||
|
||||
@utils.arg('id',
|
||||
@cliutils.arg(
|
||||
'id',
|
||||
metavar='<id>',
|
||||
help="Name or ID of the volume type to delete")
|
||||
@cliutils.service_type('share')
|
||||
@@ -1198,14 +1250,17 @@ def do_type_delete(cs, args):
|
||||
cs.volume_types.delete(volume_type)
|
||||
|
||||
|
||||
@utils.arg('vtype',
|
||||
@cliutils.arg(
|
||||
'vtype',
|
||||
metavar='<vtype>',
|
||||
help="Name or ID of the volume type")
|
||||
@utils.arg('action',
|
||||
@cliutils.arg(
|
||||
'action',
|
||||
metavar='<action>',
|
||||
choices=['set', 'unset'],
|
||||
help="Actions: 'set' or 'unset'")
|
||||
@utils.arg('metadata',
|
||||
@cliutils.arg(
|
||||
'metadata',
|
||||
metavar='<key=value>',
|
||||
nargs='*',
|
||||
default=None,
|
||||
|
Reference in New Issue
Block a user