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
	 chenying
					chenying