Globalize logger usage
Unsolved bug: redudant info in logfile
Wipe logger add_file_logger
Expand logger to support stream logging, simplify
Adjust expected values in fanctional client tests
Make containerlimit set/get aware of 0==unlimited
containerlimit set -h will tell users to use 0 for unlimitedcontainerlimit get will print "unlimited" if received a 0 value
Alow uploading to container with limit 0
Container limit 0 means "unlimited"
Move addproperty from image to image compute
Fix typo with --config and --property args (#3658)
Connect request-response threads in logs
The connection between kamaki request attempt and httplib response waslogged, but the connection between httplib response and kamaki responsemanagment was not logged.
Remove extra logging options
One default: ~/.kamaki.logUser can use a custom: kamaki config set log_file <custom log file>
Fix mispeled import cyclades_cli --> cyclades
Set ~/.kamaki.log with mode 0600 as default
Refs: #3610
Make recursive upload non-default, rearange checks
Alloow recursive upload with RRearange 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...
Take into account container used bytes in upload
Before uploading, check if there is enough remaining space on containerremaning space = container limit - container used bytes
Merge branch 'feature-store' into develop
Prevent upload if uploads exceed container limit
Feature #3536
Implement a recursive upload
kamaki file upload <directory> <container>[:remote-dir]
where remote-dir either is a dir or does not exist
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'
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)...
Add some client-side filters to image list
--owner=<uuid> : print only images with given owner
--name-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>...
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 aclient side filtering, as oposed to the other filters of the command.
Set a default network type when creating nets
Default type is MAX_FILTERED
Support #3514
Split file-quota semantics for account and contner
kamaki file quota --> only for accountkamaki file quota <container> --> kamaki file containerlimit get [container]
Support #3541
Rename file setquota to file containerlimit set
Also, do not allow user to set account quota
Apply uniform descriptions to all client commands
<GRNET name>/<OS name> API <actuall api> commands
e.g. Cyclades/Compute API server commandsor Pithos+/Storage API commands
Commands file names are named after the API they implement, not the command interface....
Fix astakos client functional test
Use 'user.token' instead of 'astakos.token'
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...
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
Rename store command group to file
Rename command group astakos to user
The client is still called 'astakos', but the command group is now 'user'
Add if-etag-match to pithos client upload
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
Update documentation for logger changes
Pametrize log file, make it globaly available
Kamaki logger module is now available to both cli and clients packagesUsers may set the log_file option in configuration file kamaki config set log_file ...
Support #3441
Return image details as headers, in image register
Feature #3512
Increase timeout in upload thread canceling
Make download canceling more responsive
This does not make download canceling faster, if anything, it makes it slowerbut probably more gracefull for end users. Instead of just waiting the threadsto finish, users now see messages that descibe the attempts made by kamaki to...
Make --public and --sharing to work in upload
Bug #3509
Fix typo in commands.errors (self-->this)
This typo caused undesired behavior when deleting a deleted network
Bug #3547
Allow users to set maximum thread limit
This is implemented as a configuration option in cliDevelopers may set it as kamaki.clients.Client.MAX_THREADS = <limit>
Adjust documentation acoordingly
Feature #3546
Stop create_server from crushing by a faulty image
If the image is missing the (os, users) metadata, the create_server methodused to crush anexpectingly
Add a NL to logs to make them more readable
Fix typo in using download progress bar
Minimize requeests whn dnlding same block
If a file has multiple same blocks, download one of them and copy it to localfile locations
fixbug 3555: blcks missing if same to other blcks
Create a livetest that catches bug #3555
A boring file is a file with at least two same blocksKamaki fails to download more than 1 same blocks, therefore the downloadedfile is corruptedThis test fixes the bug
DISABLE config log options in interactive shell
to avoid kamaki failures due to logging problems
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
Fix typos in logging mechanism
Move http response logging to ResponseManager
Move http request logging to RequestManager
Wip kamaki.clients.test.py
Unittest ResponseManager
Unittest kamaki.clients.RequestManager
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...
Remove testing code
Remove invalid header values in image register
Cover image-compute command group in documentation
Create an image compute cmd group, make it work
- image compute group contains all Compute Image API commands, as oposed toPlankton API commands.
- definition of a kamaki cli command slightly changed: a command withsubcommands can have a class without being a command itself, as long as it has...
Add a ClientError logger to kamaki.clients
Move logger operations to a seperate file/pkg
Disable token logging (synnefo bug #3480)
Add logging to file functionality (#3441)
Create get_logger, add_logger methods in clients
Apply a simple naming convention for unit tests
Naming convention:
Actual functionality:
In package kamaki.clients.pkg there is class C containing a method MTest it in a package kamaki.clients.pkg.test, with a class C + a method test_MCommand line run:...
Ensure uniform runtime args in cli (feature #3456)
Add redudant -c argument to mean --config (global)
Re-allow empty paths to clients.Client.request
Fix typo in shell intro (bug #3444)
Unittest full kamaki.clients.Client
Remove unused method set_default_headers
Unittest kamaki.clients.Client.set_param
Unittest kamaki.clients.Client.set_header
Unittest kamaki.clients.Client._raise_for_status
Unittest kamaki.clients.Client._watch_thread_limit
Initialize a kamaki.clients.Client unittest
Onluy instatiation is tested so far
Finetest kamaki.clients.SilentEvent
Unittest kamaki.clients ClientError
Merge kamaki.clients.connection.test with clients
Report total # of tests and failures in bulk tests
Complete clients.utils unittests
Setup unittests for clients.utils methods
Methods tested so far: _matches, filter_in, filter_out
Unittest PithosRest.object_delete and its over
Unittest PithosRest.obejct_post
Unittest PithosRest.object_move
Unittest PithosRest.object_copy
Unittest PithosRest.object_put
Unittest PithosRest.object_get
Unittest PithosRest.object_head
Unittest PithosRest.container_delete
Unittest PithosRest.container_post
Unittest PithosRest.container_get
Unittest PithorRest.container_get
Unittest PithorRest.container_head
Merge branch 'develop' into feature-tests
Unittest PithosRest.account_post
Unittest PithosRest.account_get
Unittest PithosRest.account_head
Prepare PithorRest testcase for implementation