All of lore.kernel.org
 help / color / mirror / Atom feed
* [rgw] hammer bucket object versions
       [not found] <dbde742b69564ec797c8d52355759901@MBX1.croc.ru>
@ 2016-06-20 16:58 ` Odintsov Vladislav
  2016-06-21  9:56   ` Orit Wasserman
  0 siblings, 1 reply; 2+ messages in thread
From: Odintsov Vladislav @ 2016-06-20 16:58 UTC (permalink / raw)
  To: ceph-devel@vger.kernel.org

Hi all,

I see in the documentation, that in hammer bucket object versioning is unsupported.
http://docs.ceph.com/docs/hammer/radosgw/s3/#features-support

But, if I use boto with hammer-based ceph s3 cluster, it seems, that it works:
>>> import boto.s3.connection
>>> conn = boto.s3.connection.S3Connection(aws_access_key_id=access_key,
...             aws_secret_access_key=secret_key,
...             host=host, port=port,
...             validate_certs=validate_certs,
...             is_secure=is_secure, debug=debug,
...             suppress_consec_slashes=suppress_consec_slashes,
...             calling_format=boto.s3.connection.OrdinaryCallingFormat()
...         )
>>> bucket = conn.create_bucket("test_bucket2")
>>> bucket.configure_versioning(True)
>>> key = bucket.new_key("versioned_object")
>>> key.set_contents_from_string("Version 1")
9
>>> key.set_contents_from_string("Version 2")
9
>>> for k in bucket.list_versions('versioned_object'):
...     k.version_id
...
u'2cCJJQBE7XHz7OSxk3ZvH6DNh5Q6vOi'
u'I51r-J5NpQ44TZI.iRwyukBZ5NOyriO'
>>> for k in bucket.list_versions('versioned_object'):
...     k.get_contents_as_string()
...
'Version 2'
'Version 1'
>>> bucket.get_key('versioned_object').get_contents_as_string()
'Version 2'
>>> bucket.copy_key(new_key_name='versioned_object', src_bucket_name='test_bucket2', src_key_name='versioned_object', src_version_id='I51r-J5NpQ44TZI.iRwyukBZ5NOyriO')
<Key: test_bucket2,versioned_object>
>>> bucket.get_key('versioned_object').get_contents_as_string()
'Version 1'​
>>> list(bucket.list_versions('versioned_object'))
[<Key: test_bucket2,versioned_object>, <Key: test_bucket2,versioned_object>, <Key: test_bucket2,versioned_object>]


I'd like to clarify, is it non-production ready in hammer, or it's a documentation error?​


Regards,

Vladislav Odintsov

^ permalink raw reply	[flat|nested] 2+ messages in thread

* Re: [rgw] hammer bucket object versions
  2016-06-20 16:58 ` [rgw] hammer bucket object versions Odintsov Vladislav
@ 2016-06-21  9:56   ` Orit Wasserman
  0 siblings, 0 replies; 2+ messages in thread
From: Orit Wasserman @ 2016-06-21  9:56 UTC (permalink / raw)
  To: Odintsov Vladislav; +Cc: ceph-devel@vger.kernel.org

This looks like a documentation error

Orit

On Mon, Jun 20, 2016 at 6:58 PM, Odintsov Vladislav <VlOdintsov@croc.ru> wrote:
> Hi all,
>
> I see in the documentation, that in hammer bucket object versioning is unsupported.
> http://docs.ceph.com/docs/hammer/radosgw/s3/#features-support
>
> But, if I use boto with hammer-based ceph s3 cluster, it seems, that it works:
>>>> import boto.s3.connection
>>>> conn = boto.s3.connection.S3Connection(aws_access_key_id=access_key,
> ...             aws_secret_access_key=secret_key,
> ...             host=host, port=port,
> ...             validate_certs=validate_certs,
> ...             is_secure=is_secure, debug=debug,
> ...             suppress_consec_slashes=suppress_consec_slashes,
> ...             calling_format=boto.s3.connection.OrdinaryCallingFormat()
> ...         )
>>>> bucket = conn.create_bucket("test_bucket2")
>>>> bucket.configure_versioning(True)
>>>> key = bucket.new_key("versioned_object")
>>>> key.set_contents_from_string("Version 1")
> 9
>>>> key.set_contents_from_string("Version 2")
> 9
>>>> for k in bucket.list_versions('versioned_object'):
> ...     k.version_id
> ...
> u'2cCJJQBE7XHz7OSxk3ZvH6DNh5Q6vOi'
> u'I51r-J5NpQ44TZI.iRwyukBZ5NOyriO'
>>>> for k in bucket.list_versions('versioned_object'):
> ...     k.get_contents_as_string()
> ...
> 'Version 2'
> 'Version 1'
>>>> bucket.get_key('versioned_object').get_contents_as_string()
> 'Version 2'
>>>> bucket.copy_key(new_key_name='versioned_object', src_bucket_name='test_bucket2', src_key_name='versioned_object', src_version_id='I51r-J5NpQ44TZI.iRwyukBZ5NOyriO')
> <Key: test_bucket2,versioned_object>
>>>> bucket.get_key('versioned_object').get_contents_as_string()
> 'Version 1'
>>>> list(bucket.list_versions('versioned_object'))
> [<Key: test_bucket2,versioned_object>, <Key: test_bucket2,versioned_object>, <Key: test_bucket2,versioned_object>]
>
>
> I'd like to clarify, is it non-production ready in hammer, or it's a documentation error?
>
>
> Regards,
>
> Vladislav Odintsov

^ permalink raw reply	[flat|nested] 2+ messages in thread

end of thread, other threads:[~2016-06-21 10:02 UTC | newest]

Thread overview: 2+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
     [not found] <dbde742b69564ec797c8d52355759901@MBX1.croc.ru>
2016-06-20 16:58 ` [rgw] hammer bucket object versions Odintsov Vladislav
2016-06-21  9:56   ` Orit Wasserman

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.