Commit f5d9bc54 authored by Stavros Sachtouris's avatar Stavros Sachtouris
Browse files

Documentation updates

parent fa062062
......@@ -21,16 +21,13 @@ Add the following to apt sources list
As root, append one of the following to */etc/apt/sources.list*:
* Debian Sid (kamaki 0.6.2)::
deb http://apt.dev.grnet.gr/ sid main
* Debian Stable (kamaki 0.6.1)::
* Debian Stable (kamaki 0.6.2)::
deb http://apt.dev.grnet.gr/ squeeze main
deb http://apt2.dev.grnet.gr stable/
* Ubuntu (kamaki 0.6.1)::
* Ubuntu (kamaki 0.6.2)::
deb http://apt.dev.grnet.gr/ precise main
......@@ -54,7 +51,7 @@ Update
Install kamaki
""""""""""""""
.. note:: **versions 0.6.0 - 0.6.1:**
.. note:: **versions 0.6.0 - 0.6.1 only:**
The *snf-common* package (available at synnefo apt repository) will be automatically installed as a dependency.
......@@ -106,7 +103,7 @@ A more detailed example of using virtual env can be found at the `snf-image-crea
Install objpool (was: snf-common)
"""""""""""""""""""""""""""""""""
.. note:: **versions 0.6.0 - 0.6.1**
.. note:: **versions 0.6.0 - 0.6.1 only**
Package snf-common is part of the synnefo project and used to be a kamaki dependency in versions from 0.6.0 to 0.6.1 to provide a connection pooling mechanism. Users who still run 0.6.0 or 0.6.1 may need to manually install the snf-common package:
......@@ -119,7 +116,7 @@ Install objpool (was: snf-common)
**Version 0.6.2 and on:**
Since 0.6.2, kamaki is based on objpool (hence the snf-common dependency is now obsolete). The objpool package is easy to install from source, even on windows platforms:
Since 0.6.2, kamaki is based on python-objpool. The objpool package is easy to install from source (even on windows platforms):
.. code-block:: console
......@@ -131,9 +128,21 @@ Since 0.6.2, kamaki is based on objpool (hence the snf-common dependency is now
Install kamaki
""""""""""""""
Kamaki can be downloaded from `here <https://code.grnet.gr/projects/kamaki/files>`_, where users can pick the version they prefer and unzip it locally:
.. code-block:: console
$ tar xvfz kamaki-0.6.2.tar.gz
or it can be downloaded directly from the git repository:
.. code-block:: console
$ git clone http://code.grnet.gr/git/kamaki
and then installed by the setup script:
.. code-block:: console
$ cd kamaki
$ ./setup build install
......
......@@ -57,6 +57,21 @@ store
Manage store API.
Hidden command groups
---------------------
quotaholder
A client for quotaholder API. to enable:
kamaki config set quotaholder.cli hotaholder_cli
kamaki config set quotaholder.url <quotaholder server url>
test
Prepared unit-tests for developers (experimental). To enable:
kamaki config set test.cli test_cli
Options
-------
......@@ -85,31 +100,30 @@ history commands
Command user history, as stored in ~/.kamaki.history
* show show user history
* show show intersession history
* clean clean up history
* run run previously executed command(s)
* run run/show previously executed command(s)
server commands
***************
* list list servers
* info get server details
* create create server
* rename update server name
* delete delete server
* reboot reboot server
* start start server
* shutdown shutdown server
* console get a VNC console
* firewall set the firewall profile
* addr list server addresses
* meta get server metadata
* addmeta add server metadata
* setmeta update server metadata
* delmeta delete server metadata
* stats get server statistics
* wait wait for server to finish [BUILD, STOPPED, REBOOT, ACTIVE]
* addr List the addresses of all network interfaces on a server (VM)
* console Get a VNC console to access an existing server (VM)
* create Create a server (aka Virtual Machine)
* delete Delete a server (VM)
* delmeta Delete server (VM) metadata
* firewall Set the server (VM) firewall profile on VMs public network
* info Detailed information on a Virtual Machine
* list List Virtual Machines accessible by user
* meta Get a server's metadatum
* reboot Reboot a server (VM)
* rename Set/update a server (VM) name
* setmeta set server (VM) metadata
* shutdown Shutdown an active server (VM)
* start Start an existing server (VM)
* stats Get server (VM) statistics
* wait Wait for server to finish [BUILD, STOPPED, REBOOT, ACTIVE]
flavor commands
......@@ -122,73 +136,91 @@ flavor commands
image commands and options
**************************
* list list images
* info get image details
* public list public images
* shared list shared images
* delete delete image
* register register an image
* reregister re-register an image (preserve and update properties)
* meta get image metadata
* members get image members
* addmember add a member to an image
* delmember remove a member from an image
* setmembers set the members of an image
* properties get image properties
* setproperty update an image property
* addproperty add an image property
* delproperty delete an image property
* addmember Add a member to an image
* addproperty Add an OS-related property to an image
* delete Delete an image (image file remains intact)
* delmember Remove a member from an image
* delproperty Delete a property of an image
* info Get detailed information on an image
* list List images
* members Get image members
* meta Get image metadata
* properties Get properties related to OS installation in an image
* public List public images
* register (Re)Register an image
* setmembers Set the members of an image
* setproperty Update an existing property in an image
* shared List images shared by a member
network commands
****************
* list list networks
* create create a network
* info get network details
* rename update network name
* delete delete a network
* connect connect a server to a network
* disconnect disconnect a server from a network
* connect Connect a server to a network
* create Create an (unconnected) network
* delete Delete a network
* disconnect Disconnect a nic that connects a server to a network
* info Detailed information on a network
* list List networks
* rename Set the name of a network
store commands
**************
* append Append local file to (existing) remote object
* cat Print a file to console
* copy Copy an object
* create Create a container
* delete Delete a container [or an object]
* delgroup Delete a user group on an account
* delmeta Delete an existing metadatum of account [, container [or object]]
* delpermissions Delete all sharing permissions
* download Download a file
* group Get user groups details for account
* hashmap Get the hashmap of an object
* info Get information for account [, container [or object]]
* list List containers, object trees or objects in a directory
* manifest Create a remote file with uploaded parts by manifestation
* meta Get custom meta-content for account [, container [or object]]
* mkdir Create a directory
* move Copy an object
* overwrite Overwrite part (from start to end) of a remote file
* permissions Get object read/write permissions
* publish Publish an object
* purge Purge a container
* quota Get quota for account [or container]
* setgroup Create/update a new user group on account
* setmeta Set a new metadatum for account [, container [or object]]
* setpermissions Set sharing permissions
* setquota Set new quota (in KB) for account [or container]
* setversioning Set new versioning (auto, none) for account [or container]
* sharers List the accounts that share objects with default account
* touch Create an empty file
* truncate Truncate remote file up to a size
* unpublish Unpublish an object
* upload Upload a file
* versioning Get versioning for account [or container ]
* versions Get the version list of an object
* append Append local file to (existing) remote object
* cat Print remote file contents to console
* copy Copy an object from container to (another) container
* create Create a container
* delete Delete a container [or an object]
* delgroup Delete a user group
* delmeta Delete metadata from account, container or object
* delpermissions Delete all permissions set on object
* download Download remote object as local file
* group Get groups and group members
* hashmap Get the hash-map of an object
* info Get detailed info for account, containers or objects
* list List containers, object trees or objects in a directory
* manifest Create a remote file of uploaded parts by manifestation
* meta Get metadata for account, containers or objects
* mkdir Create a directory
* move Copy an object
* overwrite Overwrite part (from start to end) of a remote file
* permissions Get read and write permissions of an object
* publish Publish the object and print the public url
* purge Delete a container and release related data blocks
* quota Get quota (in KB) for account or container
* setgroup Set a user group
* setmeta Set a piece of metadata for account, container or object
* setpermissions Set permissions for an object
* setquota Set new quota (in KB) for account or container
* setversioning Set versioning mode (auto, none) for account or container
* sharers List the accounts that share objects with current user
* touch Create an empty object (file)
* truncate Truncate remote file up to a size
* unpublish Unpublish an object
* upload Upload a file
* versioning Get versioning for account or container
* versions Get the list of object versions
quotaholder commands (hidden)
*****************************
accept, ack, add, create, get, init, issue, list, query, reject, release, reset, resolve, set
test commands (hidden)
**********************
* all test all clients
* args Test how arguments are treated by kamaki
* astakos test Astakos client
* cyclades test Cyclades client
* error Create an error message with optional message
* image test Image client
* pithos test Pithos client
* prints user-test print methods for lists and dicts
Author
......
......@@ -13,9 +13,11 @@ Once it proved so useful to us, we decided to open the source, so the community
Who uses *kamaki*?
------------------
*kamaki* is currently used internally in GRNET by the development team to test the synnefo software, by the deployment team who operates the ~okeanos service and by the testers using the ~okeanos service and want to access the service from the command line.
Kamaki is targeted to new and advanced users who need an intuitive managerial console tool to manage a local or remote synnefo cloud installation.
What's more, *kamaki* clients API is used in synnefo as an API for accessing remote services as well as for building manager tools of various synnefo functions (e.g. admin image registration).
*kamaki* is currently used (i) internally in GRNET by the development team to test the synnefo software, (ii) by the deployment team which operates the ~okeanos service and (iii) by the testers using the ~okeanos service and want to access the service from the command line.
What's more, (iv) *kamaki* clients API is used in synnefo as an API for accessing remote services as well as (v) for building manager tools of various synnefo functions (e.g. image registration).
Contributing and helping out
......
......@@ -135,6 +135,9 @@ The [global] group is treated by kamaki as a generic group for arbitrary options
* store.account <account name>
if set, it overrides possible global.account option for store level commands.
* store.token <token>
it set, it overrides possible global.token option for store level commands
* compute.url <OOS compute or Cyclades service url>
the url of the OOS compute or Cyclades service. Set to Okeanos.grnet.gr Cyclades IaaS service by default. Users should set a different value if they need to use a different IaaS service.
......@@ -171,3 +174,9 @@ Since version 0.6.1 kamaki contains a test suite for the kamaki.clients API. The
cli=test_cli
After that, users can run "kamaki test" commands to unit-test the prepackaged client APIs. Unit-tests are still experimental and there is a high probability of false alarms due to some of the expected values being hard-coded in the testing code.
In version 0.6.3, a quotaholder client is introduced as an advanced feature. Quotaholder client is mostly used as a client library for accessing a synnefo quota service, but it can also be allowed as a kamaki command set, but setting the quotaholder.cli and quotaholder.url methods:
[quotaholder]
cli=quotaholder_cli
url=<URL of quotaholder service>
......@@ -415,8 +415,7 @@ class store_list(_store_container_command):
@command(pithos_cmds)
class store_mkdir(_store_container_command):
"""Create a directory
"""
"""Create a directory"""
__doc__ += '\n. '.join(about_directories)
......
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment