Command docs: add service

Co-Authored-By: Lin Hua Cheng <os.lcheng@gmail.com>

Change-Id: Icd39e6d769fd4c4797fcf4ef9eb97c71ed166b3b
Closes-Bug: #1404434
This commit is contained in:
Dean Troyer 2014-12-31 10:03:28 -06:00 committed by Lin Hua Cheng
parent d2943d2592
commit 6ebbd278cf
4 changed files with 170 additions and 14 deletions
doc/source
openstackclient/identity

@ -0,0 +1,144 @@
=======
service
=======
Identity v2, v3
service create
--------------
Create new service
.. program:: service create
.. code-block:: bash
os service create
[--name <name>]
[--description <description>]
[--enable | --disable]
<type>
.. option:: --name <name>
New service name
.. option:: --description <description>
New service description
.. option:: --enable
Enable service (default)
*Identity version 3 only*
.. option:: --disable
Disable service
*Identity version 3 only*
.. _service_create-type:
.. describe:: <type>
New service type (compute, image, identity, volume, etc)
service delete
--------------
Delete service
.. program:: service delete
.. code-block:: bash
os service delete
<service>
:option:`<service>`
Service to delete (type, name or ID)
service list
------------
List services
.. program:: service list
.. code-block:: bash
os service list
[--long]
.. option:: --long
List additional fields in output
*Identity version 2 only*
Returns service fields ID and Name, `--long` adds Type and Description
to the output. When Identity API version 3 is selected all columns are
always displayed, `--long` is silently accepted for backward-compatibility.
service set
-----------
Set service properties
* Identity version 3 only*
.. program:: service set
.. code-block:: bash
os service set
[--type <type>]
[--name <name>]
[--description <description>]
[--enable | --disable]
<service>
.. option:: --type <type>
New service type (compute, image, identity, volume, etc)
.. option:: --name <name>
New service name
.. option:: --description <description>
New service description
.. option:: --enable
Enable service
.. option:: --disable
Disable service
.. _service_set-service:
.. describe:: <service>
Service to update (type, name or ID)
service show
------------
Display service details
.. program:: service show
.. code-block:: bash
os service show
[--catalog]
<service>
.. option:: --catalog
Show service catalog information
*Identity version 2 only*
.. _service_show-service:
.. describe:: <service>
Service to display (type, name or ID)

@ -109,7 +109,7 @@ referring to both Compute and Volume quotas.
* ``security group rule``: Compute, Network - the individual rules that define protocol/IP/port access
* ``server``: (**Compute**) virtual machine instance
* ``server image``: (**Compute**) saved server disk image
* ``service``: Identity - a cloud service
* ``service``: (**Identity**) a cloud service
* ``snapshot``: (**Volume**) a point-in-time copy of a volume
* ``token``: (**Identity**) a bearer token managed by Identity service
* ``usage``: (**Compute**) display host resources being consumed

@ -44,7 +44,7 @@ class CreateService(show.ShowOne):
type_or_name_group = parser.add_mutually_exclusive_group()
type_or_name_group.add_argument(
'--type',
metavar='<service-type>',
metavar='<type>',
help=argparse.SUPPRESS,
)
type_or_name_group.add_argument(
@ -54,7 +54,7 @@ class CreateService(show.ShowOne):
)
parser.add_argument(
'--description',
metavar='<service-description>',
metavar='<description>',
help=_('New service description'),
)
return parser
@ -144,7 +144,7 @@ class ListService(lister.Lister):
class ShowService(show.ShowOne):
"""Show service details"""
"""Display service details"""
log = logging.getLogger(__name__ + '.ShowService')

@ -15,6 +15,7 @@
"""Identity v3 Service action implementations"""
import argparse
import logging
import six
@ -35,12 +36,12 @@ class CreateService(show.ShowOne):
parser = super(CreateService, self).get_parser(prog_name)
parser.add_argument(
'type',
metavar='<service-type>',
metavar='<type>',
help='New service type (compute, image, identity, volume, etc)',
)
parser.add_argument(
'--name',
metavar='<service-name>',
metavar='<name>',
help='New service name',
)
parser.add_argument(
@ -52,12 +53,12 @@ class CreateService(show.ShowOne):
enable_group.add_argument(
'--enable',
action='store_true',
help='Enable project',
help='Enable service (default)',
)
enable_group.add_argument(
'--disable',
action='store_true',
help='Disable project',
help='Disable service',
)
return parser
@ -90,7 +91,7 @@ class DeleteService(command.Command):
parser.add_argument(
'service',
metavar='<service>',
help='Service to delete (name or ID)',
help='Service to delete (type or ID)',
)
return parser
@ -109,6 +110,17 @@ class ListService(lister.Lister):
log = logging.getLogger(__name__ + '.ListService')
def get_parser(self, prog_name):
"""The --long option is here for compatibility only."""
parser = super(ListService, self).get_parser(prog_name)
parser.add_argument(
'--long',
action='store_true',
default=False,
help=argparse.SUPPRESS,
)
return parser
def take_action(self, parsed_args):
self.log.debug('take_action(%s)', parsed_args)
@ -131,11 +143,11 @@ class SetService(command.Command):
parser.add_argument(
'service',
metavar='<service>',
help='Service to update (name or ID)',
help='Service to update (type, name or ID)',
)
parser.add_argument(
'--type',
metavar='<service-type>',
metavar='<type>',
help='New service type (compute, image, identity, volume, etc)',
)
parser.add_argument(
@ -152,12 +164,12 @@ class SetService(command.Command):
enable_group.add_argument(
'--enable',
action='store_true',
help='Enable project',
help='Enable service',
)
enable_group.add_argument(
'--disable',
action='store_true',
help='Disable project',
help='Disable service',
)
return parser
@ -194,7 +206,7 @@ class SetService(command.Command):
class ShowService(show.ShowOne):
"""Show service details"""
"""Display service details"""
log = logging.getLogger(__name__ + '.ShowService')