Spec for openstack client support
This spec is intent on implementing karbor commands in the python-karborclient repository as python-openstackclient plugins. Change-Id: I06eea28a922997586e670fe33bf82a6da72cb4a2 Partially-Implements: karbor-support-python-openstackclient
This commit is contained in:
166
doc/source/specs/karbor-support-in-python-openstackclient.rst
Normal file
166
doc/source/specs/karbor-support-in-python-openstackclient.rst
Normal file
@@ -0,0 +1,166 @@
|
||||
..
|
||||
This work is licensed under a Creative Commons Attribution 3.0 Unported
|
||||
License.
|
||||
|
||||
http://creativecommons.org/licenses/by/3.0/legalcode
|
||||
|
||||
========================================
|
||||
Karbor support in python-openstackclient
|
||||
========================================
|
||||
|
||||
Implement a new set of karbor commands as python-openstackclient plugins.
|
||||
|
||||
Launchpad Blueprint:
|
||||
https://blueprints.launchpad.net/python-karborclient/+spec/karbor-support-python-openstackclient
|
||||
|
||||
|
||||
Problem Description
|
||||
===================
|
||||
|
||||
python-openstackclient is becoming the default command line client for many
|
||||
OpenStack projects. Karbor would benefit from implementing all of its client
|
||||
commands as a single python-openstackclient plugin implemented in the
|
||||
python-karborclient repository.
|
||||
|
||||
Proposed Change
|
||||
===============
|
||||
|
||||
The intent of this spec is to identify the commands to be implemented and
|
||||
establish conventions for command and argument names. This spec is not
|
||||
intended to be a full and correct specification of command and argument names.
|
||||
The details can be left to the code reviews for the commands themselves.
|
||||
|
||||
The following conventions will be adopted for command names:
|
||||
|
||||
* As the ``OpenStackClient`` convention, the command name shall always take
|
||||
the following form:
|
||||
|
||||
.. code-block:: bash
|
||||
|
||||
openstack [<global-options>] <object-1> <action> [<object-2>] \
|
||||
[command-arguments]
|
||||
|
||||
|
||||
As a example:
|
||||
The following ``karbor`` commands about plan will be implemented for ``openstack``
|
||||
initially suggesting these command names:
|
||||
|
||||
.. code-block:: bash
|
||||
|
||||
karbor plan-create <name> <provider_id> <resources>
|
||||
openstack dataprotection plan create <name> <provider_id> <resources>
|
||||
|
||||
karbor plan-delete <plan>
|
||||
openstack dataprotection plan delete <plan>
|
||||
|
||||
karbor plan-list
|
||||
openstack dataprotection plan list
|
||||
|
||||
karbor plan-show <plan>
|
||||
openstack dataprotection backup plan <backup>
|
||||
|
||||
karbor plan-update <name> <resources> <status>
|
||||
openstack dataprotection plan update <name> <resources> <status>
|
||||
|
||||
|
||||
Configuration
|
||||
-------------
|
||||
|
||||
None
|
||||
|
||||
Database
|
||||
--------
|
||||
|
||||
None
|
||||
|
||||
Public API
|
||||
----------
|
||||
|
||||
None
|
||||
|
||||
Public API Security
|
||||
-------------------
|
||||
|
||||
None
|
||||
|
||||
Python API
|
||||
----------
|
||||
|
||||
None
|
||||
|
||||
CLI (python-karborclient)
|
||||
------------------------
|
||||
|
||||
A new directory named osc will be created under /karborclient/osc
|
||||
for the ``OpenStackClient`` plugin and the commands mentioned above.
|
||||
|
||||
Internal API
|
||||
------------
|
||||
|
||||
None
|
||||
|
||||
Guest Agent
|
||||
-----------
|
||||
|
||||
None
|
||||
|
||||
Alternatives
|
||||
------------
|
||||
|
||||
None
|
||||
|
||||
Dashboard Impact (UX)
|
||||
=====================
|
||||
|
||||
None
|
||||
|
||||
Implementation
|
||||
==============
|
||||
|
||||
Assignee(s)
|
||||
-----------
|
||||
|
||||
Primary assignee:
|
||||
chenying
|
||||
|
||||
|
||||
Milestones
|
||||
----------
|
||||
|
||||
|
||||
Work Items
|
||||
----------
|
||||
|
||||
CLI commands as stated above.
|
||||
Unit tests
|
||||
|
||||
Upgrade Implications
|
||||
====================
|
||||
|
||||
None
|
||||
|
||||
Dependencies
|
||||
============
|
||||
|
||||
python-openstackclient
|
||||
osc-lib
|
||||
|
||||
Testing
|
||||
=======
|
||||
|
||||
Unit tests will be located in: /karborclient/tests/unit/osc/
|
||||
|
||||
Documentation Impact
|
||||
====================
|
||||
|
||||
OpenStack Client adoption list will be updated to include python-karborclient.
|
||||
|
||||
References
|
||||
==========
|
||||
|
||||
http://docs.openstack.org/developer/python-openstackclient/commands.html
|
||||
|
||||
Appendix
|
||||
========
|
||||
|
||||
None
|
||||
Reference in New Issue
Block a user