X-Git-Url: https://code.grnet.gr/git/kamaki/blobdiff_plain/e9e547ed0712620d0a4ecba58fd4faa16caa6ca3..58743792e657a568c02452a62d4cdf8bf49b690c:/docs/commands.rst diff --git a/docs/commands.rst b/docs/commands.rst index f7124fc..3a2057e 100644 --- a/docs/commands.rst +++ b/docs/commands.rst @@ -4,15 +4,12 @@ List of commands The commands described bellow are grouped by service. The examples showcase a sample set of group commands. The kamaki interactive shell (check `Usage section `_ for details) is chosen as the execution environment. -astakos (Identity Manager) --------------------------- +user (Identity Manager) +----------------------- .. code-block:: text authenticate: Authenticate a user - admin userinfo: Get user info, (req. admin privileges) - service userinfo: Get user info with service token - service list: List cloud services associated with astakos Showcase: get user information ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ @@ -22,44 +19,19 @@ In the following, the token has been set in a previous step (see `setup section .. code-block:: console :emphasize-lines: 1,4 - * Enter astakos context * - [kamaki]:astakos + * Enter user context * + [kamaki]: user * Authenticate user * - [astakos]:authenticate - auth_token : s0m3t0k3nth@t1sr3m0v3d== + [user]: authenticate auth_token_created: 2012-11-13T14:12:40.917034 auth_token_expires: 2012-12-13T14:12:40.917035 - groups : - default - has_credits : False - has_signed_terms : True - uniq : myaccount@grnet.gr - username : 4215th3b357num9323v32 - -Showcase: get available services -^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - -In the following, a user needs to know the urls he/she has access to. - -.. code-block:: console - :emphasize-lines: 1,4 - - * Enter appropriate context * - [kamaki]:astakos service - - * list services * - [astakos service]:list - 1 grnet cloud - icon: home-icon.png - url : https://okeanos.grnet.gr/ - 2 cyclades - icon: - url : https://cyclades.okeanos.grnet.gr/ui/ - 3 pithos+ - icon: - url : https://pithos.okeanos.grnet.gr/ui/ - + email : + myaccount@grnet.gr + myotheraccount@grnet.gr + name : My Real Name + username : usually@an.email.org + uuid : ab1cde23-45fg-6h7i-8j9k-10l1m11no2pq flavor (Compute/Cyclades) ------------------------- @@ -87,26 +59,27 @@ Showcase: show details for flavor with id 43 name : C4R2048D10 ram : 2048 -image (Compute/Cyclades + Plankton) ------------------------------------ +image (Plankton commands + Compute Image subcommands) +----------------------------------------------------- .. code-block:: text addmember : Add a member to an image addproperty: Add an image property - delete : Delete image delmember : Remove a member from an image - delproperty: Delete an image property - info : Get image details - list : List images + list : List images accessible by user members : Get image members meta : Get image metadata - properties : Get image properties - public : List public images register : (Re)Register an image setmembers : Set the members of an image - setproperty: Update an image property shared : List shared images + compute : Compute Image API commands + list : List images + delete : Delete image + info : Get image details + properties : Get image properties + delproperty: Delete an image property + setproperty: Update an image property Showcase: Pick an image and list the properties ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ @@ -115,24 +88,37 @@ Showcase: Pick an image and list the properties :emphasize-lines: 1,4,18 * Enter image context * - [kamaki]:image + [kamaki]: image * list all available images * - [image]:list - 1395fdfb-51b4-419f-bb02-f7d632860611 (Ubuntu Desktop LTS) - 1580deb4-edb3-4496-a27f-7a246c4c0528 (Ubuntu Desktop) - 18a82962-43eb-4b32-8e28-8f8880af89d7 (Kubuntu LTS) - 6aa6eafd-dccb-422d-a904-67fe2bdde87e (Debian Desktop) - 6b5681e4-7502-46ae-b1e9-9fd837932095 (maelstrom) - 78262ee7-949e-4d70-af3a-85360c3de57a (Windows Server 2012) - 86bc2414-0fb3-4898-a637-240292243302 (Fedora) - 926ab1c5-2d85-49d4-aebe-0fce712789b9 (Windows Server 2008) - b2dffe52-64a4-48c3-8a4c-8214cc3165cf (Debian Base) - baf2321c-57a0-4a69-825d-49f49cea163a (CentOS) - c1d27b46-d875-4f5c-b7f1-f39b5af62905 (Kubuntu) - - * Get properties of image with id b2dffe52-64a4-48c3-8a4c-8214cc3165cf * - [image]:properties b2dffe52-64a4-48c3-8a4c-8214cc3165cf + [image]: list + 1. Windows Server 2008 + container_format: bare + disk_format : diskdump + id : 926ab1c5-2d85-49d4-aebe-0fce712789b9 + size : 11917066240 + status : available + 2. Windows Server 2012 + container_format: bare + disk_format : diskdump + id : 78262ee7-949e-4d70-af3a-85360c3de57a + size : 11697913856 + status : available + 3. ubuntu + container_format: bare + disk_format : diskdump + id : 5ed5a29b-292c-4fe0-b32c-2e2b65628635 + size : 2578100224 + status : available + 4. Debian_Wheezy_Base + container_format: bare + disk_format : diskdump + id : 1f8454f0-8e3e-4b6c-ab8e-5236b728dffe + size : 795107328 + status : available + + * Get properties of image with id 1f8454f0-8e3e-4b6c-ab8e-5236b728dffe * + [image]: compute properties 1f8454f0-8e3e-4b6c-ab8e-5236b728dffe description : Debian 6.0.6 (Squeeze) Base System gui : No GUI kernel : 2.6.32 @@ -172,10 +158,10 @@ Showcase: Create a server :emphasize-lines: 1,4,21,35,44,62 * Enter server context * - [kamaki]:server + [kamaki]: server * See server-create help * - [server]:create -h + [server]: create -h usage: create [--personality PERSONALITY] [-h] [--config CONFIG] @@ -192,21 +178,21 @@ Showcase: Create a server -s, --silent Do not output anything * List all available images * - [server]:/image list - 1395fdfb-51b4-419f-bb02-f7d632860611 (Ubuntu Desktop LTS) - 1580deb4-edb3-4496-a27f-7a246c4c0528 (Ubuntu Desktop) - 18a82962-43eb-4b32-8e28-8f8880af89d7 (Kubuntu LTS) - 6aa6eafd-dccb-422d-a904-67fe2bdde87e (Debian Desktop) - 6b5681e4-7502-46ae-b1e9-9fd837932095 (maelstrom) - 78262ee7-949e-4d70-af3a-85360c3de57a (Windows Server 2012) - 86bc2414-0fb3-4898-a637-240292243302 (Fedora) - 926ab1c5-2d85-49d4-aebe-0fce712789b9 (Windows Server 2008) - b2dffe52-64a4-48c3-8a4c-8214cc3165cf (Debian Base) - baf2321c-57a0-4a69-825d-49f49cea163a (CentOS) - c1d27b46-d875-4f5c-b7f1-f39b5af62905 (Kubuntu) + [server]: /image compute list + 1395fdfb-51b4-419f-bb02-f7d632860611 Ubuntu Desktop LTS + 1580deb4-edb3-4496-a27f-7a246c4c0528 Ubuntu Desktop + 18a82962-43eb-4b32-8e28-8f8880af89d7 Kubuntu LTS + 6aa6eafd-dccb-422d-a904-67fe2bdde87e Debian Desktop + 6b5681e4-7502-46ae-b1e9-9fd837932095 maelstrom + 78262ee7-949e-4d70-af3a-85360c3de57a Windows Server 2012 + 86bc2414-0fb3-4898-a637-240292243302 Fedora + 926ab1c5-2d85-49d4-aebe-0fce712789b9 Windows Server 2008 + b2dffe52-64a4-48c3-8a4c-8214cc3165cf Debian Base + baf2321c-57a0-4a69-825d-49f49cea163a CentOS + c1d27b46-d875-4f5c-b7f1-f39b5af62905 Kubuntu * See details of flavor with id 1 * - [server]:/flavor info 1 + [server]: /flavor info 1 SNF:disk_template: drbd cpu : 1 disk : 20 @@ -215,7 +201,7 @@ Showcase: Create a server ram : 1024 * Create a debian server named 'My Small Debian Server' - [server]:create 'My Small Debian Server' 1 b2dffe52-64a4-48c3-8a4c-8214cc3165cf + [server]: create 'My Small Debian Server' 1 b2dffe52-64a4-48c3-8a4c-8214cc3165cf adminPass: L8gu2wbZ94 created : 2012-11-23T16:56:04.190813+00:00 flavorRef: 1 @@ -233,8 +219,8 @@ Showcase: Create a server updated : 2012-11-23T16:56:04.761962+00:00 * wait for server to build (optional) * - [server]:wait 11687 - Server 11687 still in BUILD mode ||||||||||||||||| | 80% - 3s + [server]: wait 11687 + Server 11687 still in BUILD mode ||||||||||||||||| | 80% Server 11687 is now in ACTIVE mode .. Note:: In kamaki shell, / is used to access top-level command groups while working in command group contexts @@ -259,15 +245,15 @@ Showcase: Connect a network to a VM :emphasize-lines: 1,4,9,24,27,44 * Enter network context * - [kamaki]:network + [kamaki]: network * List user-owned VMs * - [network]:/server list + [network]: /server list 11687 (My Small Debian Server) 11688 (An Ubuntu server) * Try network-connect (to get help) * - [network]:connect + [network]: connect Syntax error usage: connect [-s] [-h] [-i] [--config CONFIG] @@ -285,7 +271,7 @@ Showcase: Connect a network to a VM [network]: connect 11687 1409 * Get details on network with id 1409 - [network]:info 1409 + [network]: info 1409 attachments: nic-11687-1 cidr : 192.168.1.0/24 @@ -302,7 +288,7 @@ Showcase: Connect a network to a VM updated : 2012-11-23T17:18:25.095225+00:00 * Get connectivity details on VM with id 11687 * - [network]:/server addr 11687 + [network]: /server addr 11687 id: nic-11687-1 ipv4 : 192.168.1.1 ipv6 : None @@ -317,21 +303,21 @@ Showcase: Connect a network to a VM .. Note:: In kamaki shell, / is used to access top-level command groups while working in command group contexts -store (Storage/Pithos+) ------------------------ +file (Storage/Pithos+) +---------------------- .. code-block:: text append : Append local file to remote cat : Print a file to console copy : Copy an object - create : Create a container or a directory 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]] + delgroup : Delete a user group + delmeta : Delete an existing metadatum for an account [, container [or object]] delpermissions: Delete all sharing permissions - download : Download a file - group : Get user groups details for account + download : Download a file or directory + group : Get user groups details 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 @@ -343,16 +329,19 @@ store (Storage/Pithos+) 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 + quota : Get quota for account + setgroup : Create/update a new user group setmeta : Set a new metadatum for account [, container [or object]] setpermissions: Set sharing permissions - setquota : Set new quota (in KB) for account [or container] + containerlimit: Container size limit commands + set : Set container data limit + get : Get container data limit setversioning : Set new versioning (auto, none) for account [or container] sharers : List the accounts that share objects with default account + touch : Create an empty object (file) truncate : Truncate remote file up to a size unpublish : Unpublish an object - upload : Upload a file + upload : Upload a file or directory versioning : Get versioning for account [or container ] versions : Get the version list of an object @@ -363,27 +352,27 @@ Showcase: Upload and download a file :emphasize-lines: 1,7,11,16,21,29,33,37,41,44,51,55,60,64 * Create a random binarry file at current OS path * - [kamaki]:!dd bs=4M if=/dev/zero of=rndm_local.file count=5 + [kamaki]: !dd bs=4M if=/dev/zero of=rndm_local.file count=5 5+0 records in 5+0 records out 20971520 bytes (21 MB) copied, 0.016162 s, 1.3 GB/s - * Enter store context * - [kamaki]:store + * Enter file context * + [kamaki]: file * Check local file * - [store]:!ls -lh rndm_local.file + [file]: !ls -lh rndm_local.file -rw-rw-r-- 1 ******** ******** 20M Nov 26 15:36 rndm_local.file * Create two containers * - [store]:create mycont1 - [store]:create mycont2 + [file]: create mycont1 + [file]: create mycont2 * List accessible containers * - [store]:list + [file]: list 1. mycont1 (0B, 0 objects) 2. mycont2 (0B, 0 objects) 3. pithos (0B, 0 objects) @@ -391,44 +380,48 @@ Showcase: Upload and download a file * Upload local file to 1st container * - [store]:upload rndm_local.file mycont1 + [file]: upload rndm_local.file mycont1 * Check if file has been uploaded * - [store]:list mycont1 + [file]: list mycont1 1. 20M rndm_local.file * Create directory mydir on second container * - [store]:mkdir mycont2:mydir + [file]: mkdir mycont2:mydir * Move file from 1st to 2nd container (and in the directory) * - [store]:move mycont1:rndm_local.file mycont2:mydir/rndm_local.file + [file]: move mycont1:rndm_local.file mycont2:mydir/rndm_local.file * Check contents of both containers * - [store]:list mycont1 - [store]:list mycont2 + [file]: list mycont1 + [file]: list mycont2 1. D mydir/ 2. 20M mydir/rndm_local.file * Copy file from 2nd to 1st container, with a new name * - [store]:copy mycont2:mydir/rndm_local.file mycont1:rndm_remote.file + [file]: copy mycont2:mydir/rndm_local.file mycont1:rndm_remote.file * Check pasted file * - [store]:list mycont1 + [file]: list mycont1 1. 20M rndm_remote.file * Download pasted file to local file system * - [store]:download mycont1:rndm_remote.file rndm_remote.file + [file]: download mycont1:rndm_remote.file rndm_remote.file * Check if file is downloaded and if it is the same to original * - [store]:!ls -lh *.file + [file]: !ls -lh *.file -rw-rw-r-- 1 ******** ******** 20M Nov 26 15:36 rndm_local.file -rw-rw-r-- 1 ******** ******** 20M Nov 26 15:42 rndm_remote.file - [store]:!diff rndm_local.file rndm_remote.file + [file]: !diff rndm_local.file rndm_remote.file .. Note:: In kamaki shell, ! is used to execute OS shell commands (bash in the above) + +.. warning:: The container:object/path syntax does not function if the container and / or the object path contain one or more : characters. To use containers and objects with : use the --container and --dst-container arguments, e.g. to copy test.py object from grnet:dev container to grnet:deploy :: + + $ kamaki file copy --container=grnet:dev test.py --dst-container=grnet:deploy