Make sure registered properties are unique
Refs: #3769
Store image properties after image registration
Log of changes:- Properties are stored in a remote file on Pithos+- File name is <image-file>.meta- Feature can be switched off with --no-property-file-upload- If remote property file exists, registration is aborted...
Optionaly load images properties from file
Merge branch 'feature-json-output' into feature-image-meta-record
Update documentation to reflect changes in output
Refs: #3756
Apply option outputs to image commands + renames
- Add image.add_member missing content-length header- Rename image-[add|del]member commands to members-[add|delete]- Remove update option from image-register- In image-compute split properties to properties-list and properties-get...
Apply optional output to kamaki file commands
Apply the feature wherever is applicableGeneralize the feature by moving the corresponding code to _command_init
Update file operations and their output
Refs: #3756 #3732
- Add optional output for file methods: mkdir, touch, create, move, create, copy, move, append, delete, purge, info, meta, upload - Transliterate permissions and metadata methods to apear as get/set/delete...
Add output to file copy/move
Also, kamaki.clients.pithos.copy/move_object returns response headers
Add output support to create methods
In kamaki.clients-------------------- storage.create_directory returns response headers- implement pithos.create_container
In kamaki.cli.pithos-------------------- add flag --with_output for optional output...
Add json formated output for file list
- Implement a print_json auxiliary method in kamaki.cli.utils- Add a (j, --json) flag to file list When -j or --json flag is on, only json is printed
Refs: #3732
Merge branch 'feature-updownload-fromto-string' into develop
Update changelog, unittests for upload_from_string
Refs: #3608
Functional test and debug for upload_from_string
Implement upload_from_string
Implemented with threads
Optimize download_to_string by using threads
Implement download_to_string in pithos client
The download_to_string method downloads a remote object from pithos into astring, which is then returned.
Also, implemented unit and functional tests. Changelog is updated
Merge branch 'bug-move-copy' into develop
Allow copy of deleted objects by refering to older
Also disallow moving deleted objects by version The later was implemented byaccident, due to the symetry between move and copy
Refs: #3737
Fix typo dst_path instead of ds_path
Refs: 3737
Merge branch 'feature-enumeration' into develop
Add enumeration as optional for all list cmds
Refs: #3739
Merge branch 'bug-shell-cmd-syntax' into develop
Restore 2nd level command sysntax in shell
Refs: #3736
Merge branch 'feature-cache-container-info' into develop
Upload Changelog for container info upload caching
Refs: #3735
Cache container info request per upload session
Update changelog for upload's container_info_cache
Refs: #3707
Adjust pithos livetest to use container_info_cache
Update unitest to include container_info_cache
Refs: 3707
Add a container_infor_cache param to upload_object
Each upload involves a request that retrieves block size and hash information.In higher level applications, this request is redudant after the first upload.This feature allows higher level operations to cache retrieved container info...
Merge branch 'feature-upload-returns' into develop
Update documentation for -l at file upload
Refs: #3730
Add a -l option to upload: list uploaded details
If the upload is successfull, if the -l or --details argument is present,kamaki lists all uploaded objects with all details returned by the server(e.g. object version, date of creation, etc)
Update changelog (pithos upload modification)
Refs: #3656
Update livetest for upload return modification
Modify upload methods to return created obj info
Methods affected: upload_object upload_object_unchunked upload_object_by_manifestation
unittests modified accordingly
Merge branch 'feature-empty-container' into develop
Update Changelog for #3662
Implement purging a non-empty container
kamaki file purge <container> -F
will automatically empty a container before purging it
Refs: #3662
Merge branch 'feature-image-unregister' into develop
Implement livetest for image unregister
Refs: #3728
Update Changelog for image unregister feature
Expose image-unregister to cli and unittest it
Implement image unregister in kamaki.clients
Merge branch 'feature-shell-arguments' into develop
Update Changelog
Allow runtime args when invoking interactive shell
Refs: #3716
Behavior After This:kamaki -XXX -YY ... parses -XXX -YYIf not recognized: syntax errorIf recognized, group them into shell args (e.g. -h) and command args (e.g. -d)Whenever a command is run in this shell instance, apply the command args...
Merge branch 'feature-cli-command-errors' into develop
Raise a descriptive error for misconfigured cmds
Refs: #3663
A command group that is declared in the config file is not supportedby valid command specification code or the specification code is notpointed at by <command>.cli configure variable
Log initial call arguments in first log
Merge branch 'feature-logging' into develop
Move logger module to kamaki.cli
Make kamaki.clients unware of kamaki.logger
use logging for getting the loggers
Stop shell from destroying config instance
This caused warnings about preset variables
Update Changelog to reflect #3715 changes
Allow activation/deactivation of specific loggers
refs: #3715Logger settings are not aborted and will be restored at deactivation
Also, remove all logger creation functionality from kamaki.clientsA file or stream logger should be created an the kamaki.clients caller side...
Update changelog for feature #3668
Remove log redaduncy when logging in a file
Use < and > in stream logger for send/recv resp.
Globalize logger usage
Unsolved bug: redudant info in logfile
Wipe logger add_file_logger
Fix typo in _create_or_get_missing_hashes call
Honour if_(none_)match even if all blocks are up
Refs: bug #3708
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)
Update documentation to refer to www.synnefo.org
Stop doc building from crushing if no objpool
Add automatic version for docs
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.
Setup meta-files for development of 0.8next
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
Update upgrade notes
Set ~/.kamaki.log with mode 0600 as default
Refs: #3610
Upgrade package metadata
- Copyright date- Upgrade notes and suggestions- Refer to synnefo.org in README- classifiers in setup
Merge branch 'feature-store' into develop
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 'develop' into feature-store
Adjust documentation to include new upload feats.
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)...
Merge branch 'feature-image' into develop
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.