Stavros Sachtouris [Thu, 18 Apr 2013 15:05:40 +0000 (18:05 +0300)]
Fix mispeled import cyclades_cli --> cyclades
Stavros Sachtouris [Thu, 18 Apr 2013 13:09:49 +0000 (16:09 +0300)]
Update upgrade notes
Stavros Sachtouris [Thu, 18 Apr 2013 13:00:57 +0000 (16:00 +0300)]
Merge branch 'feature-logging' into develop
Stavros Sachtouris [Thu, 18 Apr 2013 12:59:47 +0000 (15:59 +0300)]
Set ~/.kamaki.log with mode 0600 as default
Refs: #3610
Stavros Sachtouris [Thu, 18 Apr 2013 11:37:08 +0000 (14:37 +0300)]
Update Changelog
Stavros Sachtouris [Thu, 18 Apr 2013 11:34:41 +0000 (14:34 +0300)]
Upgrade package metadata
- Copyright date
- Upgrade notes and suggestions
- Refer to synnefo.org in README
- classifiers in setup
Stavros Sachtouris [Wed, 17 Apr 2013 09:37:52 +0000 (12:37 +0300)]
Merge branch 'feature-store' into develop
Stavros Sachtouris [Wed, 17 Apr 2013 09:01:23 +0000 (12:01 +0300)]
Make recursive upload non-default, rearange checks
Alloow recursive upload with -R
Rearange pre-upload checks as shown bellow:
- check first if it is recursive & direcory
- check if object exists or forced to overwrite
- check container limit and used size
Feature #3536
Stavros Sachtouris [Wed, 17 Apr 2013 08:45:44 +0000 (11:45 +0300)]
Take into account container used bytes in upload
Before uploading, check if there is enough remaining space on container
remaning space = container limit - container used bytes
Stavros Sachtouris [Wed, 17 Apr 2013 08:34:14 +0000 (11:34 +0300)]
Merge branch 'develop' into feature-store
Stavros Sachtouris [Tue, 16 Apr 2013 15:29:21 +0000 (18:29 +0300)]
Merge branch 'feature-store' into develop
Stavros Sachtouris [Tue, 16 Apr 2013 14:31:51 +0000 (17:31 +0300)]
Adjust documentation to include new upload feats.
Stavros Sachtouris [Tue, 16 Apr 2013 14:26:53 +0000 (17:26 +0300)]
Prevent upload if uploads exceed container limit
Feature #3536
Stavros Sachtouris [Tue, 16 Apr 2013 12:45:23 +0000 (15:45 +0300)]
Implement a recursive upload
kamaki file upload <directory> <container>[:remote-dir]
where remote-dir either is a dir or does not exist
Feature #3536
Stavros Sachtouris [Mon, 15 Apr 2013 15:14:27 +0000 (18:14 +0300)]
Update docs to use the term Synnefo where needed
In some cases, the term 'GRNET development team' was replaced with 'Synnefo' or
'Synnefo development team'
Stavros Sachtouris [Mon, 15 Apr 2013 14:56:25 +0000 (17:56 +0300)]
Merge branch 'feature-store' into develop
Stavros Sachtouris [Mon, 15 Apr 2013 14:52:56 +0000 (17:52 +0300)]
Add some parameters to storage.list_object
:param limit: (int) The amount of results requested
:param marker: (str) Return containers with name lexicographically
after marker
:param prefix: (str) Return objects starting with prefix
:param format: (str) reply format can be json or xml (default:json)
:param delimiter: (str) Return objects up to the delimiter
:param path: (str) assume prefix = path and delimiter = /
Bug #3596
Stavros Sachtouris [Mon, 15 Apr 2013 13:32:02 +0000 (16:32 +0300)]
Merge branch 'feature-image' into develop
Stavros Sachtouris [Mon, 15 Apr 2013 13:31:17 +0000 (16:31 +0300)]
Add some client-side filters to image list
--owner=<uuid> : print only images with given owner
--name-prefix=<prefix> : print only images with name starting with <prefix>
--name-suffix=<suffix> : print only images with name starting with <suffix>
--name-like=<part> : print only images with name containing <part>
Feature #3513
Stavros Sachtouris [Mon, 15 Apr 2013 12:57:29 +0000 (15:57 +0300)]
Filter image listing results by owner
Introduce the --owner parameter to kamaki image list (was: image public)
If given, only images of given owner will be pronted on console. This is a
client side filtering, as oposed to the other filters of the command.
Stavros Sachtouris [Mon, 15 Apr 2013 11:51:33 +0000 (14:51 +0300)]
Merge branch 'feature-network' into develop
Stavros Sachtouris [Mon, 15 Apr 2013 11:37:53 +0000 (14:37 +0300)]
Set a default network type when creating nets
Default type is MAX_FILTERED
Support #3514
Stavros Sachtouris [Mon, 15 Apr 2013 11:18:00 +0000 (14:18 +0300)]
Merge branch 'feature-containerlimit' into develop
Stavros Sachtouris [Mon, 15 Apr 2013 11:11:46 +0000 (14:11 +0300)]
Split file-quota semantics for account and contner
kamaki file quota --> only for account
kamaki file quota <container> --> kamaki file containerlimit get [container]
Support #3541
Stavros Sachtouris [Mon, 15 Apr 2013 10:32:31 +0000 (13:32 +0300)]
Rename file setquota to file containerlimit set
Also, do not allow user to set account quota
Stavros Sachtouris [Mon, 15 Apr 2013 09:25:58 +0000 (12:25 +0300)]
Merge branch 'feature-rename' into develop
Stavros Sachtouris [Mon, 15 Apr 2013 09:12:33 +0000 (12:12 +0300)]
Apply uniform descriptions to all client commands
<GRNET name>/<OS name> API <actuall api> commands
e.g.
Cyclades/Compute API server commands
or
Pithos+/Storage API commands
Commands file names are named after the API they implement, not the command interface.
It cyclades, astakos, pithos, etc. instead of server, user, file, although the command
names they expose are "server *", "user *", "file *", etc.
Cyclades is a pretty good example: it exposes a set of commands with different prefixes
(server, network, flavor) and they all use the cyclades client.
Stavros Sachtouris [Mon, 15 Apr 2013 08:28:33 +0000 (11:28 +0300)]
Fix astakos client functional test
Use 'user.token' instead of 'astakos.token'
Stavros Sachtouris [Mon, 15 Apr 2013 08:22:44 +0000 (11:22 +0300)]
Remove quotaholder from kamaki
This affects the cli:
- remove the quotaholder commands set
- remove the commissioning system (automatic command retrieval)
This affevts the clients:
- remove the quotaholder client
- remove the clients commissioning system
Save the ordereddict backport to clients.utils (still useful)
Update documentation and setup
Stavros Sachtouris [Fri, 12 Apr 2013 15:34:41 +0000 (18:34 +0300)]
Merge branch 'feature-rename' into develop
Stavros Sachtouris [Fri, 12 Apr 2013 15:27:17 +0000 (18:27 +0300)]
Update docs, rename kamaki.cli.commands/*
Documentation updates: reflect the changes in command groups
astakos --> user, store --> file
File renaming: remove the _cli suffix from modules in kamaki.cli.commands
Feature #3566
Stavros Sachtouris [Fri, 12 Apr 2013 14:34:26 +0000 (17:34 +0300)]
Rename store command group to file
Feature #3566
Stavros Sachtouris [Fri, 12 Apr 2013 14:10:22 +0000 (17:10 +0300)]
Rename command group astakos to user
The client is still called 'astakos', but the command group is now 'user'
Feature #3566
Stavros Sachtouris [Fri, 12 Apr 2013 12:37:52 +0000 (15:37 +0300)]
Add if-etag-match to pithos client upload
Stavros Sachtouris [Fri, 12 Apr 2013 12:24:27 +0000 (15:24 +0300)]
Merge branch 'feature-store' into develop
Stavros Sachtouris [Fri, 12 Apr 2013 12:18:25 +0000 (15:18 +0300)]
Add option to fail upload if remote file exists
The if-none-match header option with '*' is used in that case.
This is exposed as 'if_not_exist' in PithosClient.upload_object
Feature #3574
Stavros Sachtouris [Fri, 12 Apr 2013 10:49:26 +0000 (13:49 +0300)]
Merge branch 'feature-logging' into develop
Stavros Sachtouris [Fri, 12 Apr 2013 10:46:33 +0000 (13:46 +0300)]
Update documentation for logger changes
Stavros Sachtouris [Fri, 12 Apr 2013 10:14:48 +0000 (13:14 +0300)]
Pametrize log file, make it globaly available
Kamaki logger module is now available to both cli and clients packages
Users may set the log_file option in configuration file
kamaki config set log_file ...
Support #3441
Stavros Sachtouris [Fri, 12 Apr 2013 08:43:11 +0000 (11:43 +0300)]
Merge branch 'develop' into feature-logging
Stavros Sachtouris [Thu, 11 Apr 2013 15:44:50 +0000 (18:44 +0300)]
Merge branch 'feature-image' into develop
Stavros Sachtouris [Thu, 11 Apr 2013 15:43:42 +0000 (18:43 +0300)]
Return image details as headers, in image register
Feature #3512
Stavros Sachtouris [Thu, 11 Apr 2013 15:00:36 +0000 (18:00 +0300)]
Merge branch 'develop' into feature-image
Stavros Sachtouris [Thu, 11 Apr 2013 14:50:19 +0000 (17:50 +0300)]
Increase timeout in upload thread canceling
Stavros Sachtouris [Thu, 11 Apr 2013 13:55:45 +0000 (16:55 +0300)]
Make download canceling more responsive
This does not make download canceling faster, if anything, it makes it slower
but probably more gracefull for end users. Instead of just waiting the threads
to finish, users now see messages that descibe the attempts made by kamaki to
cancel them. Each cancelation gets a timeout of 0.5 seconds, so that users
will not wait too long (although they might wait more overall)
Bug #3457
Stavros Sachtouris [Thu, 11 Apr 2013 13:11:59 +0000 (16:11 +0300)]
Make --public and --sharing to work in upload
Bug #3509
Stavros Sachtouris [Thu, 11 Apr 2013 12:22:07 +0000 (15:22 +0300)]
Fix typo in commands.errors (self-->this)
This typo caused undesired behavior when deleting a deleted network
Bug #3547
Stavros Sachtouris [Thu, 11 Apr 2013 12:07:48 +0000 (15:07 +0300)]
Merge branch 'feature-threads' into develop
Stavros Sachtouris [Thu, 11 Apr 2013 11:41:40 +0000 (14:41 +0300)]
Allow users to set maximum thread limit
This is implemented as a configuration option in cli
Developers may set it as kamaki.clients.Client.MAX_THREADS = <limit>
Adjust documentation acoordingly
Feature #3546
Stavros Sachtouris [Thu, 11 Apr 2013 09:24:35 +0000 (12:24 +0300)]
Fix typo in kamaki quick setup guide
WAS: kamaki set token ....
NOW: kamaki config set token ...
Stavros Sachtouris [Thu, 11 Apr 2013 08:44:59 +0000 (11:44 +0300)]
Stop create_server from crushing by a faulty image
If the image is missing the (os, users) metadata, the create_server method
used to crush anexpectingly
Stavros Sachtouris [Tue, 9 Apr 2013 09:40:29 +0000 (12:40 +0300)]
Add a NL to logs to make them more readable
Stavros Sachtouris [Mon, 8 Apr 2013 16:09:30 +0000 (19:09 +0300)]
Merge branch 'feature-store' into develop
Stavros Sachtouris [Mon, 8 Apr 2013 16:08:51 +0000 (19:08 +0300)]
Fix typo in using download progress bar
Stavros Sachtouris [Mon, 8 Apr 2013 15:50:01 +0000 (18:50 +0300)]
Minimize requeests whn dnlding same block
If a file has multiple same blocks, download one of them and copy it to local
file locations
Stavros Sachtouris [Mon, 8 Apr 2013 13:45:33 +0000 (16:45 +0300)]
fixbug 3555: blcks missing if same to other blcks
Stavros Sachtouris [Mon, 8 Apr 2013 12:53:58 +0000 (15:53 +0300)]
Create a livetest that catches bug #3555
A boring file is a file with at least two same blocks
Kamaki fails to download more than 1 same blocks, therefore the downloaded
file is corrupted
This test fixes the bug
Stavros Sachtouris [Mon, 8 Apr 2013 11:42:11 +0000 (14:42 +0300)]
Merge branch 'develop' into feature-store
Stavros Sachtouris [Fri, 5 Apr 2013 13:49:44 +0000 (16:49 +0300)]
Merge branch 'feature-logging' into develop
Stavros Sachtouris [Fri, 5 Apr 2013 13:47:43 +0000 (16:47 +0300)]
DISABLE config log options in interactive shell
to avoid kamaki failures due to logging problems
Stavros Sachtouris [Fri, 5 Apr 2013 13:44:05 +0000 (16:44 +0300)]
Merge branch 'feature-logging' into develop
Stavros Sachtouris [Fri, 5 Apr 2013 13:24:57 +0000 (16:24 +0300)]
Allow config to switch some options on or off
- LOG_TOKEN: whether to log user token in http requests (default: off)
- LOG_DATA: whether to log http body (send or secv - default: off)
config options: log_token=off, log_data=off
Stavros Sachtouris [Fri, 5 Apr 2013 11:54:06 +0000 (14:54 +0300)]
Fix typos in logging mechanism
Stavros Sachtouris [Fri, 5 Apr 2013 09:26:30 +0000 (12:26 +0300)]
Move http response logging to ResponseManager
Stavros Sachtouris [Fri, 5 Apr 2013 09:15:44 +0000 (12:15 +0300)]
Move http request logging to RequestManager
Stavros Sachtouris [Fri, 5 Apr 2013 08:22:21 +0000 (11:22 +0300)]
Merge branch 'develop' into feature-logging
Stavros Sachtouris [Thu, 4 Apr 2013 16:29:01 +0000 (19:29 +0300)]
Merge branch 'feature-connection' into develop
Stavros Sachtouris [Thu, 4 Apr 2013 16:27:05 +0000 (19:27 +0300)]
Adjust docs to recent changes, fix missing config
Missing config: at setup, in the first example (Quick Setup) it was
kamaki set ...
while it should have been
kamaki config set
Stavros Sachtouris [Thu, 4 Apr 2013 16:20:26 +0000 (19:20 +0300)]
Wip kamaki.clients.test.py
Stavros Sachtouris [Thu, 4 Apr 2013 16:12:41 +0000 (19:12 +0300)]
Unittest ResponseManager
Stavros Sachtouris [Thu, 4 Apr 2013 14:57:53 +0000 (17:57 +0300)]
Unittest kamaki.clients.RequestManager
Stavros Sachtouris [Thu, 4 Apr 2013 13:37:46 +0000 (16:37 +0300)]
Redesign http connection module
Merge everything to kamaki.clients
Remove multiple hierarchies of connection classes (== abandon support for
alternative connection methods, e.g. for requests from pypi)
New connection classes are
- RequestManager
- ResponseManager
Semantics:
RequestManager constructor commits a request without performing it
but it performs all sanity checks for url, path, method and params
RequestManager.perform will perform the commited request, if called
ResponseManager constructor needs a RequestManager instance
ResponseManager.(various properties)
request is pooled from a ContextManagerPool (objpool) when needed.
Results are cached and used as long as the ResponseManager instance
is alive
Remove KamakiConnection/ResponseErrors, use ClientError wrapers for everything
Remove the connection livetest
TODO: Adjust unittests
Stavros Sachtouris [Wed, 3 Apr 2013 15:21:35 +0000 (18:21 +0300)]
Enforce objpool>=0.2, break kamaki, fix it soon
Stavros Sachtouris [Wed, 3 Apr 2013 14:43:02 +0000 (17:43 +0300)]
Merge branch 'develop' into feature-connection
Stavros Sachtouris [Tue, 2 Apr 2013 11:24:24 +0000 (14:24 +0300)]
Remove testing code
Stavros Sachtouris [Tue, 2 Apr 2013 11:23:21 +0000 (14:23 +0300)]
Remove invalid header values in image register
Stavros Sachtouris [Tue, 2 Apr 2013 10:44:15 +0000 (13:44 +0300)]
Merge branch 'develop' of https://code.grnet.gr/git/kamaki into develop
Stavros Sachtouris [Tue, 2 Apr 2013 10:43:54 +0000 (13:43 +0300)]
Merge branch 'feature-separate-image-commands' into develop
Stavros Sachtouris [Tue, 2 Apr 2013 10:27:28 +0000 (13:27 +0300)]
Cover image-compute command group in documentation
Stavros Sachtouris [Tue, 2 Apr 2013 09:46:55 +0000 (12:46 +0300)]
Create an image compute cmd group, make it work
- image compute group contains all Compute Image API commands, as oposed to
Plankton API commands.
- definition of a kamaki cli command slightly changed: a command with
subcommands can have a class without being a command itself, as long as it has
subcommands! Thus a subcommand group can be defined with docs and everything.
- image public is not image list (docs not updated yet)
Stavros Sachtouris [Fri, 29 Mar 2013 10:32:10 +0000 (12:32 +0200)]
Fix store_upload typo in progress argument
Stavros Sachtouris [Tue, 26 Mar 2013 10:51:13 +0000 (12:51 +0200)]
Merge branch 'feature-logging' into develop
Stavros Sachtouris [Tue, 26 Mar 2013 10:40:48 +0000 (12:40 +0200)]
Add a ClientError logger to kamaki.clients
Stavros Sachtouris [Tue, 26 Mar 2013 10:23:57 +0000 (12:23 +0200)]
Move logger operations to a seperate file/pkg
Stavros Sachtouris [Fri, 22 Mar 2013 17:06:40 +0000 (19:06 +0200)]
Disable token logging (synnefo bug #3480)
Stavros Sachtouris [Fri, 22 Mar 2013 16:55:35 +0000 (18:55 +0200)]
Add logging to file functionality (#3441)
Stavros Sachtouris [Fri, 22 Mar 2013 14:44:11 +0000 (16:44 +0200)]
Create get_logger, add_logger methods in clients
Stavros Sachtouris [Fri, 22 Mar 2013 13:48:24 +0000 (15:48 +0200)]
Merge branch 'feature-tests' into develop
Stavros Sachtouris [Fri, 22 Mar 2013 13:42:20 +0000 (15:42 +0200)]
Apply a simple naming convention for unit tests
Naming convention:
Actual functionality:
In package kamaki.clients.pkg there is class C containing a method M
Test it in a package kamaki.clients.pkg.test, with a class C + a method test_M
Command line run:
python ${kamaki}/kamaki/clients/pkg/test.py C M
or
python ${kamaki}/kamaki/clients/test.py C M
In package kamaki.clients there is a module mod containing a method M
Test it in a package kamaki.clients.mod, with a class Mod + a method test_M
Command line run:
python ${kamaki}/kamaki/clients/mod/test.py Mod M
or
python ${kamaki}/kamaki/clients/test.py Mod M
Stavros Sachtouris [Fri, 22 Mar 2013 12:02:46 +0000 (14:02 +0200)]
Merge branch 'develop' into feature-tests
Stavros Sachtouris [Fri, 22 Mar 2013 11:49:26 +0000 (13:49 +0200)]
Document unittest mechanism, dependency changes
New dependency changes: progress is required, mock is optional
Changes are also documented
Stavros Sachtouris [Fri, 22 Mar 2013 09:41:47 +0000 (11:41 +0200)]
Ensure uniform runtime args in cli (feature #3456)
Stavros Sachtouris [Thu, 21 Mar 2013 16:57:45 +0000 (18:57 +0200)]
Add redudant -c argument to mean --config (global)
Stavros Sachtouris [Thu, 21 Mar 2013 16:37:20 +0000 (18:37 +0200)]
Re-allow empty paths to clients.Client.request
Stavros Sachtouris [Thu, 21 Mar 2013 16:07:09 +0000 (18:07 +0200)]
Fix typo in shell intro (bug #3444)
Stavros Sachtouris [Thu, 21 Mar 2013 16:03:40 +0000 (18:03 +0200)]
Merge branch 'feature-tests' into develop
Stavros Sachtouris [Thu, 21 Mar 2013 15:48:21 +0000 (17:48 +0200)]
Unittest full kamaki.clients.Client
Stavros Sachtouris [Thu, 21 Mar 2013 13:24:35 +0000 (15:24 +0200)]
Remove unused method set_default_headers
Stavros Sachtouris [Thu, 21 Mar 2013 12:28:29 +0000 (14:28 +0200)]
Unittest kamaki.clients.Client.set_param
Stavros Sachtouris [Thu, 21 Mar 2013 12:23:46 +0000 (14:23 +0200)]
Unittest kamaki.clients.Client.set_header