Authenticate a user Get user information (e.g., unique account name) from token Token should be set in settings: * check if a token is set /config whoami cloud.default.token * permanently set a token /config set cloud.default.token <token> Token can also be provided as a parameter (In case of another named cloud, use its name instead of default)
List all authenticated users
Set session user by id To enrich your options, authenticate more users: /user authenticate <other user token> To list authenticated users /user list To get the current session user /user whoami
Detailed information on a hardware flavor To get a list of available flavors and flavor ids, try /flavor list
List available hardware flavors
Attach a floating IP to a server
Detach a floating IP from a server
Details for an IP
List reserved floating IPs
List pools of floating IPs
Release a floating IP The release IP is “returned” to the IP pool it came from.
Reserve a floating IP An IP is reserved from an IP pool. The default IP pool is chosen automatically, but there is the option if specifying an explicit IP pool.
Connect a server to a network
Create an (unconnected) network
Delete a network
Disconnect a nic that connects a server to a network Nic ids are listed as “attachments” in detailed network information To get detailed network information: /network info <network id>
Detailed information on a network To get a list of available networks and network ids, try /network list
List networks
Set the name of a network
Wait for server to finish [PENDING, ACTIVE, DELETED]
List the addresses of all network interfaces on a virtual server
Get a VNC console to access an existing virtual server Console connection information provided (at least): - host: (url or address) a VNC host - port: (int) the gateway to enter virtual server on host - password: for VNC authorization
Create a server (aka Virtual Machine) Parameters: - name: (single quoted text) - flavor id: Hardware flavor. Pick one from: /flavor list - image id: OS images. Pick one from: /image list
Delete a virtual server
Manage virtual server firewall profiles for public networks
Get the firewall profile for a virtual servers’ public network
Set the firewall profile on virtual server public network Values for profile: - DISABLED: Shutdown firewall - ENABLED: Firewall in normal mode - PROTECTED: Firewall in secure mode
Detailed information on a Virtual Machine Contains: - name, id, status, create/update dates - network interfaces - metadata (e.g., os, superuser) and diagnostics - hardware flavor and os image ids
List virtual servers accessible by user Use filtering arguments (e.g., –name-like) to manage long server lists
Manage Server metadata (key:value pairs of server attributes)
Delete virtual server metadata
Get server metadata
Set / update virtual server metadata Metadata should be given in key/value pairs in key=value format For example: /server metadata set <server id> key1=value1 key2=value2 Old, unreferenced metadata will remain intact
Reboot a virtual server
Set/update a virtual server name virtual server names are not unique, therefore multiple servers may share the same name
Set a different flavor for an existing server To get server ids and flavor ids: /server list /flavor list
Shutdown an active virtual server
Start an existing virtual server
Get virtual server statistics
Wait for server to finish [BUILD, STOPPED, REBOOT, ACTIVE]
Value type: | string of the form <start>-<end> where <start> and <end> are integers |
---|---|
Value returns: | the input string, after type checking <start> and <end> |
Set sharing (read and/or write) groups . :value type: “read=term1,term2,... write=term1,term2,...” . :value returns: {‘read’:[‘term1’, ‘term2’, ...], . ‘write’:[‘term1’, ‘term2’, ...]}
Append local file to (existing) remote object The remote object should exist. If the remote object is a directory, it is transformed into a file. In the later case, objects under the directory remain intact.
Print remote file contents to console
Container size limit commands
Get container size limit
Set new storage limit for a container By default, the limit is set in bytes Users may specify a different unit, e.g: /file containerlimit set 2.3GB mycontainer Valid units: B, KiB (1024 B), KB (1000 B), MiB, MB, GiB, GB, TiB, TB To set container limit to “unlimited”, use 0
Copy objects from container to (another) container Semantics: copy cont:path dir . transfer path as dir/path copy cont:path cont2: . trasnfer all <obj> prefixed with path to container cont2 copy cont:path [cont2:]path2 . transfer path to path2 Use options: 1. <container1>:<path1> [container2:]<path2> : if container2 is not given, destination is container1:path2 2. <container>:<path1> <path2> : make a copy in the same container 3. Can use –container= instead of <container1>
Create a container
Delete a container [or an object] How to delete a non-empty container: - empty the container: /file delete -R <container> - delete it: /file delete <container> . Semantics of directory deletion: .a preserve the contents: /file delete <container>:<directory> . objects of the form dir/filename can exist with a dir object .b delete contents: /file delete -R <container>:<directory> . all dir/* objects are affected, even if dir does not exist . To restore a deleted object OBJ in a container CONT: - get object versions: /file versions CONT:OBJ . and choose the version to be restored - restore the object: /file copy –source-version=<version> CONT:OBJ OBJ
Download remote object as local file If local destination is a directory: * download <container>:<path> <local dir> -R will download all files on <container> prefixed as <path>, to <local dir>/<full path> (or <local dir><full path> in windows) * download <container>:<path> <local dir> will download only one file<path> ATTENTION: to download cont:dir1/dir2/file there must exist objects cont:dir1 and cont:dir1/dir2 of type application/directory To create directory objects, use /file mkdir
Manage access groups and group members
Delete a user group
list all groups and group members
Set a user group
Get the hash-map of an object
Get detailed information for user account, containers or objects to get account info: /file info to get container info: /file info <container> to get object info: /file info <container>:<path>
List containers, object trees or objects in a directory Use with: 1 no parameters : containers in current account 2. one parameter (container) or –container : contents of container 3. <container>:<prefix> or –container=<container> <prefix>: objects in . container starting with prefix
Create a remote file of uploaded parts by manifestation Remains functional for compatibility with OOS Storage. Users are advised to use the upload command instead. Manifestation is a compliant process for uploading large files. The files have to be chunked in smalled files and uploaded as <prefix><increment> where increment is 1, 2, ... Finally, the manifest command glues partial files together in one file named <prefix> The upload command is faster, easier and more intuitive than manifest
Metadata are attached on objects. They are formed as key:value pairs. They can have arbitary values.
Delete metadata with given key from account, container or object - to get metadata of current account: /file metadata get - to get metadata of a container: /file metadata get <container> - to get metadata of an object: /file metadata get <container>:<path>
Get metadata for account, containers or objects
Set a piece of metadata for account, container or object
Create a directory Kamaki hanldes directories the same way as OOS Storage and Pithos+: A directory is an object with type “application/directory” An object with path dir/name can exist even if dir does not exist or even if dir is a non directory object. Users can modify dir ‘ without affecting the dir/name object in any way.
Move/rename objects from container to (another) container Semantics: move cont:path dir . rename path as dir/path move cont:path cont2: . trasnfer all <obj> prefixed with path to container cont2 move cont:path [cont2:]path2 . transfer path to path2 Use options: 1. <container1>:<path1> [container2:]<path2> : if container2 is not given, destination is container1:path2 2. <container>:<path1> <path2> : move in the same container 3. Can use –container= instead of <container1>
Overwrite part (from start to end) of a remote file overwrite local-path container 10 20 . will overwrite bytes from 10 to 20 of a remote file with the same name . as local-path basename overwrite local-path container:path 10 20 . will overwrite as above, but the remote file is named path
Manage user and group accessibility for objects Permissions are lists of users and user groups. There are read and write permissions. Users and groups with write permission have also read permission.
Delete all permissions set on object To modify permissions, use /file permissions set
Get read and write permissions of an object
Set permissions for an object New permissions overwrite existing permissions. Permission format: - read=<username>[,usergroup[,...]] - write=<username>[,usegroup[,...]] E.g. to give read permissions for file F to users A and B and write for C: . /file permissions set F read=A,B write=C To share with everybody, use ‘*’ instead of a user id or group. E.g. to make file F available to all pithos users: . /file permissions set F read=* E.g. to make file F available for editing to all pithos users: . /file permissions set F write=*
Publish the object and print the public url
Delete a container and release related data blocks Non-empty containers can not purged. To purge a container with content: . /file delete -R <container> . objects are deleted, but data blocks remain on server . /file purge <container> . container and data blocks are released and deleted
Get account quota
List the accounts that share objects with current user
Create an empty object (file) If object exists, this command will reset it to 0 length
Truncate remote file up to a size (default is 0)
Unpublish an object
Upload a file
Manage the versioning scheme of current pithos user account
Get versioning for account or container
Set versioning mode (auto, none) for account or container
Get the list of object versions Deleted objects may still have versions that can be used to restore it and get information about its previous state. The version number can be used in a number of other commands, like info, copy, move, meta. See these commands for more information, e.g., /file info -h
Cyclades/Compute API image commands
Delete an image (WARNING: image file is also removed)
Get detailed information on an image
List images
Manage properties related to OS installation in an image
Delete a property from an image
Get an image property
List all image properties
Add / update a set of properties for an image properties must be given in the form key=value, e.v. /image compute properties set <image-id> key1=val1 key2=val2
Get image metadata Image metadata include: - image file information (location, size, etc.) - image information (id, name, etc.) - image os properties (os, fs, etc.)
List images accessible by user
Manage members. Members of an image are users who can modify it
Add a member to an image
Remove a member from an image
List members of an image
Set the members of an image
Manage image metadata and custom properties
Remove/empty image metadata and/or custom properties
Add / update metadata and properties for an image The original image preserves the values that are not affected
(Re)Register an image file to an Image service The image file must be stored at a pithos repository Some metadata can be set by user (e.g., disk-format) while others are set only automatically (e.g., image id). There are also some custom user metadata, called properties. A register command creates a remote meta file at . <container>:<image path>.meta Users may download and edit this file and use it to re-register one or more images. In case of a meta file, runtime arguments for metadata or properties override meta file settings.
List images shared by a member
Unregister an image (does not delete the image file)
Delete a configuration option Default values are not removed by default. To alter this behavior in a session, use –default.
Show a configuration option About options: . syntax: [group.]option . example: global.log_file . special case: <option> is equivalent to global.<option> . configuration file syntax: . [group] . option=value . (more options can be set per group) . . special case: named clouds. . example: cloud.demo.url . E.g. for a cloud “demo”: . [cloud “demo”] . url = <http://single/authentication/url/for/demo/site> . token = <auth_token_from_demo_site>
List all configuration options FAQ: Q: I haven’t set any options! A: Defaults are used (override with /config set ) Q: There are more options than I have set A: Default options remain if not explicitly replaced or deleted
Set a configuration option About options: . syntax: [group.]option . example: global.log_file . special case: <option> is equivalent to global.<option> . configuration file syntax: . [group] . option=value . (more options can be set per group) . . special case: named clouds. . example: cloud.demo.url . E.g. for a cloud “demo”: . [cloud “demo”] . url = <http://single/authentication/url/for/demo/site> . token = <auth_token_from_demo_site>
Clean up history (permanent)
Run previously executed command(s) Use with: . 1. <order-id> : pick the <order-id>th command . 2. <order-id-1>-<order-id-2> : pick all commands ordered in the range . [<order-id-1> - <order-id-2>] . - Use negative integers to count from the end of the list, e.g.,: . -2 means : the command before the last one . -2-5 means : last 2 commands + the first 5 . -5–2 mean . - to find order ids for commands try /history show.
Show intersession command history — - With no parameters : pick all commands in history records - With: . 1. <order-id> : pick the <order-id>th command . 2. <order-id-1>-<order-id-2> : pick all commands ordered in the range . [<order-id-1> - <order-id-2>] . - the above can be mixed and repeated freely, separated by spaces . e.g., pick 2 4-7 -3 . - Use negative integers to count from the end of the list, e.g.,: . -2 means : the command before the last one . -2-5 means : last 2 commands + the first 5 . -5–2 means : the last 5 commands except the last 2
Bases: object
An argument that can be parsed from command line or otherwise. This is the top-level Argument class. It is suggested to extent this class into more specific argument types.
Bases: object
Manage (initialize and update) an ArgumentParser object
Bases: kamaki.cli.argument.ValueArgument
Value type: | string |
---|---|
Value returns: | list of the comma separated values |
Bases: kamaki.cli.argument.Argument
Manage a kamaki configuration (file)
Bases: kamaki.cli.argument.ValueArgument
Bases: kamaki.cli.argument.Argument
Value : | true if set, false otherwise |
---|
Bases: kamaki.cli.argument.Argument
A Key=Value Argument that can be repeated
Syntax : | –<arg> key1=value1 –<arg> key2=value2 ... |
---|
Bases: kamaki.cli.argument.FlagArgument
Manage a progress bar
Bases: kamaki.cli.argument.Argument
A value argument that can be repeated
Bases: kamaki.cli.argument.Argument
Set a run-time setting option (not persistent)
Bases: kamaki.cli.argument.Argument
Value type: | string |
---|---|
Value returns: | given value or default |
Bases: kamaki.cli.argument.FlagArgument
A flag argument with that prints current version
Bases: object
Store a command and the next-level (2 levels)
Find the deepest subcommand matching a series of terms but stop the first time a term doesn’t match
Parameters: | args – (list) terms to match commands against |
---|---|
Returns: | (parsed out command, the rest of the arguments) |
Raises TypeError: | |
if args is not inalterable |
Bases: object
Bases: ConfigParser.RawConfigParser
Parameters: |
|
---|---|
Returns: | (str) the value stored at section: {option: value} |
Parameters: |
|
---|---|
Returns: | (str) the value assigned on this option |
Raises KeyError: | |
if cloud or cloud’s option does not exist |
Bases: kamaki.cli.errors.CLIError
Bases: kamaki.cli.errors.CLIError
Bases: exceptions.Exception
Bases: kamaki.cli.errors.CLIError
Bases: kamaki.cli.errors.CLIError
Bases: kamaki.cli.errors.CLIError
Parameters: |
|
---|---|
Raises CLIError: | |
it is the purpose of this method |
Print msg and read user response
Parameters: | true_resp – (tuple of chars) |
---|---|
Returns: | (bool) True if reponse in true responses, False otherwise |
Parameters: |
|
---|---|
Returns: | (list) only the dicts that match all filters |
<term>delim<term> to <term> <term> transformation
Pretty-print a dictionary object <indent>key: <non iterable item> <indent>key: <indent + INDENT_TAB><pretty-print iterable>
Parameters: |
|
---|---|
Raises CLIError: | |
if preconditions fail |
print dict or list items in a list, using some values as title Objects of next level don’t inherit enumeration (default: off) or titles
Parameters: |
|
---|
Print a list or dict as json in console
Parameters: |
|
---|
Pretty-print a list of items <indent>key: <non iterable item> <indent>key: <indent + INDENT_TAB><pretty-print iterable>
Parameters: |
|
---|---|
Raises CLIError: | |
if preconditions fail |
Parameters: |
|
---|---|
Returns: | (int) the size in bytes |
Raises: |
|
Bases: kamaki.clients.Client
GET base_url[/flavor_id][/command]
Parameters: |
|
---|
— Parameters —
Parameters: |
|
---|---|
Returns: | request response |
DEL ETE base_url/images/<image_id>
Returns: | request response |
---|
GET base_url[/image_id][/command]
Parameters: |
|
---|
— Parameters — :param changes_since: when the image last changed status
Parameters: |
|
---|---|
Returns: | request response |
DEL ETE base_url/images/<image_id>/metadata/key
Returns: | request response |
---|
GET base_url/<image_id>/metadata[/key]
Returns: | request response |
---|
POST base_url/images/<image_id>/metadata
Returns: | request response |
---|
PUT base_url/images/<image_id>/metadata
Returns: | request response |
---|
GET base_url/limits
Parameters: | success – success code or list or tupple of accepted success codes. if server response code is not in this list, a ClientError raises |
---|---|
Returns: | request response |
POST base_url/servers/<server_id>/action
Returns: | request response |
---|
DEL ETE base_url/servers/<server_id>
Parameters: |
|
---|---|
Raises ClientError: | |
if returned code not in success list |
|
Returns: | request response |
GET base_url/servers/[‘detail’ | <server_id>]
Parameters: |
|
---|---|
Returns: | request response |
GET base_url/servers/<server_id>/ips[/network_id]
Parameters: | changes_since – time/date stamp in UNIX/epoch time. Checks for changes since a previous request. |
---|---|
Returns: | request response |
DEL ETE base_url/servers/<server_id>/metadata[/key]
Returns: | request response |
---|
GET base_url/servers/<server_id>/metadata[/key]
Returns: | request response |
---|
POST base_url/servers/<server_id>/metadata
Returns: | request response |
---|
PUT base_url/servers/<server_id>/metadata[/key]
Returns: | request response |
---|
POST base_url/servers
Parameters: |
|
---|---|
Returns: | request response |
PUT base_url/servers/<server_id>
Parameters: |
|
---|---|
Raises ClientError: | |
if returned code not in success list |
|
Returns: | request response |
Bases: kamaki.clients.compute.rest_api.ComputeRestClient
OpenStack Compute API 1.1 client
Parameters: |
|
---|---|
Returns: | (dict) {fixed_ip: . id: . instance_id: . ip: . pool: .} |
Parameters: |
|
---|
Submit request to create a new server
Parameters: |
|
---|---|
Returns: | a dict with the new virtual server details |
Raises ClientError: | |
wraps request errors |
OpenStack method for taking snapshots
Parameters: |
|
---|---|
Returns: | dict of updated key:val metadata |
Parameters: |
|
---|---|
Returns: | (dict) request headers |
Parameters: |
|
---|---|
Returns: | (dict) response headers |
Submit a deletion request for a server specified by id
Parameters: | server_id – integer (str or int) |
---|---|
Returns: | (dict) response headers |
Parameters: |
|
---|---|
Returns: | (dict) response headers |
Parameters: |
|
---|---|
Returns: | (list) [ {fixed_ip: ..., id: ..., instance_id: ..., ip: ..., pool: ...}, ... ] |
Parameters: | tenant_id – (str) |
---|---|
Returns: | (dict) {floating_ip_pools:[{name: ...}, ...]} |
Parameters: | tenant_id – (str) |
---|---|
Returns: | (dict) {floating_ips:[ {fixed_ip: ..., id: ..., instance_id: ..., ip: ..., pool: ...}, ... ]} |
Parameters: | image_id – integer (str or int) |
---|---|
Returns: | dict |
Raises ClientError: | |
404 if image not available |
Parameters: |
|
---|
:returns (dict) metadata if key not set, specific metadatum otherwise
Return detailed info for a server
Parameters: | server_id – integer (int or str) |
---|---|
Returns: | dict with server details |
Parameters: |
|
---|---|
Returns: | a key:val dict of requests metadata |
Parameters: | detail – (bool) detailed flavor info if set, short if not |
---|---|
Returns: | (list) flavor info |
Parameters: | detail – (bool) detailed info if set, short if not |
---|---|
Returns: | dict id,name + full info if detail |
Parameters: |
|
---|---|
Returns: | list of server ids and names |
Parameters: |
|
---|
Parameters: |
|
---|---|
Returns: | (dict) request headers |
Parameters: |
|
---|---|
Returns: | updated metadata |
Bases: kamaki.clients.compute.ComputeClient
Synnefo Cyclades REST API Client
DEL ETE base_url/networks[/network_id][/command] request
Parameters: |
|
---|---|
Returns: | request response |
GET base_url/networks[/network_id][/command] request
Parameters: |
|
---|---|
Returns: | request response |
POST base_url/servers[/server_id]/[command] request
Parameters: |
|
---|---|
Returns: | request response |
PUT base_url/servers[/server_id]/[command] request
Parameters: |
|
---|---|
Returns: | request response |
Bases: kamaki.clients.cyclades.rest_api.CycladesRestClient
Synnefo Cyclades Compute API client
Parameters: |
|
---|---|
Returns: | (dict) { fixed_ip: ..., id: ..., instance_id: ..., ip: ..., pool: ...} |
Associate the address ip to server with server_id
Parameters: |
|
---|---|
Returns: | (dict) request headers |
Raises: |
|
Connect a server to a network
Parameters: |
|
---|---|
Returns: | (dict) response headers |
Parameters: |
|
---|---|
Returns: | (dict) network detailed info |
Submit request to create a new server
Parameters: |
|
---|---|
Returns: | a dict with the new virtual server details |
Raises ClientError: | |
wraps request errors |
Parameters: | fip_id – (str) floating ip id (if None, all ips are deleted) |
---|---|
Returns: | (dict) request headers |
Raises AssertionError: | |
if fip_id is emtpy |
Parameters: | network_id – integer (str or int) |
---|---|
Returns: | (dict) response headers |
Raises ClientError: | |
421 Network in use |
Disassociate an address ip from the server with server_id
Parameters: |
|
---|---|
Returns: | (dict) request headers |
Raises: |
|
Parameters: |
|
---|---|
Returns: | (int) the number of nics disconnected |
Parameters: | server_id – integer (str or int) |
---|---|
Returns: | (str) ENABLED | DISABLED | PROTECTED |
Raises ClientError: | |
520 No Firewall Profile |
Parameters: | fip_id – (str) floating ip id |
---|---|
Returns: | (dict) {fixed_ip: ..., id: ..., instance_id: ..., ip: ..., pool: ...}, |
Raises AssertionError: | |
if fip_id is emtpy |
Parameters: | network_id – integer (str or int) |
---|---|
Returns: | (dict) |
Parameters: | server_id – integer (str or int) |
---|---|
Returns: | (dict) info to set a VNC connection to virtual server |
Parameters: | server_id – integer (str or int) |
---|---|
Returns: | (dict) auto-generated graphs of statistics (urls) |
Parameters: | detail – (bool) |
---|---|
Returns: | (list) id,name if not detail else full info per network |
Parameters: | server_id – integer (str or int) |
---|---|
Returns: | (dict) network interface connections |
Set the firewall profile for the public interface of a server
Parameters: |
|
---|---|
Returns: | (dict) response headers |
Submit a shutdown request
Parameters: | server_id – integer (str or int) |
---|---|
Returns: | (dict) response headers |
Submit a startup request
Parameters: | server_id – integer (str or int) |
---|---|
Returns: | (dict) response headers |
Parameters: |
|
---|---|
Returns: | (dict) response headers |
Wait while the public network firewall status is current_status
Parameters: |
|
---|---|
Max_wait : | (int) timeout in secconds |
Returns: | (str) the new mode if succesfull, (bool) False if timed out |
Wait for network while its status is current_status
Parameters: |
|
---|---|
Max_wait : | (int) timeout in secconds |
Returns: | (str) the new mode if succesfull, (bool) False if timed out |
Wait for server while its status is current_status
Parameters: |
|
---|---|
Max_wait : | (int) timeout in secconds |
Returns: | (str) the new mode if succesfull, (bool) False if timed out |
Bases: kamaki.clients.Client
OpenStack Object Storage API 1.0 client
Copy an objects from src_contaier:src_object to dst_container[:dst_object]
Parameters: |
|
---|
Parameters: | container – (str) |
---|---|
Raises ClientError: | |
202 Container already exists |
Parameters: | obj – (str) directory-object name |
---|---|
Returns: | (dict) request headers |
Parameters: |
|
---|---|
Returns: | (dict) object creation headers |
Parameters: | container – (str) |
---|---|
Raises: |
|
Parameters: | container – (str) |
---|---|
Returns: | (dict) |
Raises ClientError: | |
404 Container does not exist |
Parameters: |
|
---|---|
Returns: | (dict) |
Raises ClientError: | |
404 Invalid account |
Parameters: | path_prefix – (str) |
---|---|
Raises ClientError: | |
404 Invalid account | |
Returns: | (dict) |
Bases: kamaki.clients.storage.StorageClient
Full Pithos+ GET at account level
— request parameters —
Parameters: |
|
---|
— request headers —
Parameters: |
|
---|---|
Returns: | ConnectionResponse |
Full Pithos+ HEAD at account level
— request parameters —
Parameters: | until – (string) optional timestamp |
---|
— request headers —
Parameters: |
|
---|---|
Returns: | ConnectionResponse |
Full Pithos+ POST at account level
— request parameters —
Parameters: | update – (bool) if True, Do not replace metadata/groups |
---|
— request headers —
Parameters: |
|
---|---|
Returns: | ConnectionResponse |
Full Pithos+ DELETE at container level
— request parameters —
Parameters: | until – (timestamp string) if defined, container is purged up to that time |
---|---|
Returns: | ConnectionResponse |
Full Pithos+ GET at container level
— request parameters —
Parameters: |
|
---|
— request headers —
Parameters: |
|
---|---|
Returns: | ConnectionResponse |
Full Pithos+ HEAD at container level
— request params —
Parameters: | until – (string) optional timestamp |
---|
— request headers —
Parameters: |
|
---|---|
Returns: | ConnectionResponse |
Full Pithos+ POST at container level
— request params —
Parameters: |
|
---|
— request headers —
Parameters: |
|
---|---|
Returns: | ConnectionResponse |
Full Pithos+ PUT at container level
— request headers —
Parameters: |
|
---|---|
Returns: | ConnectionResponse |
Full Pithos+ COPY at object level
— request parameters —
Parameters: |
|
---|
— request headers —
Parameters: |
|
---|---|
Returns: | ConnectionResponse |
Full Pithos+ DELETE at object level
— request parameters —
Parameters: | until – (string) Optional timestamp |
---|---|
Returns: | ConnectionResponse |
Full Pithos+ GET at object level
— request parameters —
Parameters: |
|
---|
— request headers —
Parameters: |
|
---|---|
Returns: | ConnectionResponse |
Full Pithos+ HEAD at object level
— request parameters —
Parameters: | version – (string) optional version identified |
---|
— request headers —
Parameters: |
|
---|---|
Returns: | ConnectionResponse |
Full Pithos+ COPY at object level
— request parameters —
Parameters: |
|
---|
— request headers —
Parameters: |
|
---|---|
Returns: | ConnectionResponse |
Full Pithos+ POST at object level
— request parameters —
Parameters: |
|
---|
— request headers —
Parameters: |
|
---|---|
Returns: | ConnectionResponse |
Full Pithos+ PUT at object level
— request parameters —
Parameters: |
|
---|
— request headers —
Parameters: |
|
---|---|
Returns: | ConnectionResponse |
Bases: kamaki.clients.pithos.rest_api.PithosRestClient
Synnefo Pithos+ API client
Parameters: |
|
---|
Parameters: |
|
---|---|
Returns: | (dict) response headers |
Parameters: |
|
---|---|
Returns: | (dict) response headers |
Parameters: |
|
---|---|
Returns: | (dict) created object metadata |
Parameters: |
|
---|---|
Raises: |
|
Parameters: | metakey – (str) metadatum key |
---|---|
Returns: | (dict) response headers |
Parameters: |
|
---|
Parameters: |
|
---|
Download an object (multiple connections, random blocks)
Parameters: |
|
---|
Download an object to a string (multiple connections). This method uses threads for http requests, but stores all content in memory.
Parameters: |
|
---|---|
Returns: | (str) the whole object contents |
Parameters: | until – (str) formated date |
---|---|
Returns: | (dict) |
Raises ClientError: | |
404 Container not found |
Parameters: | until – (str) formated date |
---|---|
Returns: | (dict) |
Parameters: |
|
---|---|
Returns: | (list) |
Parameters: |
|
---|---|
Returns: | (dict) |
Parameters: |
|
---|---|
Returns: | (dict) |
Get accounts that share with self.account
Parameters: |
|
---|---|
Returns: | (dict) |
Parameters: |
|
---|---|
Returns: | (dict) response headers |
Overwrite a part of an object from local source file
Parameters: |
|
---|
Parameters: |
|
---|
Give read/write permisions to an object.
Parameters: |
|
---|---|
Returns: | (dict) response headers |
Parameters: |
|
---|---|
Returns: | (dict) response headers |
Upload an object using multiple connections (threads)
Parameters: |
|
---|
Upload an object using multiple connections (threads)
Parameters: |
|
---|
Parameters: |
|
---|---|
Returns: | (dict) created object metadata |
Bases: kamaki.clients.Client
Synnefo Plankton API client
Parameters: |
|
---|
Parameters: | image_id – (str) |
---|---|
Returns: | (list) users who can use current user’s images |
Parameters: |
|
---|---|
Returns: | (list) id,name + full image info if detail |
Parameters: | member – (str) sharers account |
---|---|
Returns: | (list) images shared by member |
Register an image that is uploaded at location
Parameters: |
|
---|---|
Returns: | (dict) metadata of the created image |
Parameters: |
|
---|
Parameters: |
|
---|
Bases: kamaki.clients.Client
Synnefo Astakos API client
Get authentication information and store it in this client As long as the AstakosClient instance is alive, the latest authentication information for this token will be available
Parameters: | token – (str) custom token to authenticate |
---|---|
Returns: | (dict) authentication information |
Parameters: | service_type – (str) compute, object-store, image, account, etc. |
---|---|
Returns: | (dict) {name:..., type:..., endpoints:[...]} |
Raises ClientError: | |
|
Parameters: |
|
---|---|
Returns: | (dict) {SNF:uiURL, adminURL, internalURL, publicURL, ...} |
Raises: |
|
Keep only entries of d prefixed with prefix
Parameters: |
|
---|---|
Returns: | (dict) the updated d |
Remove entries that are prefixed with prefix (case insensitive)
Parameters: |
|
---|---|
Returns: | (dict) the updated d |