CEPH 12.2.2, RGW.
I'm using it as an object storage endpoint for Openstack.Recently while browsing an object storage from Horizon, I accidently marked container as public. The issue is - I can't make it private again!
Docs state that to do it I should simply delete X-Container-Read metadata, but I just can't!
Examples:
private container headers(only relevant output, some other empty container):
X-Container-Bytes-Used-Actual: 0
X-Storage-Policy: default-placement
public container headers(only relevant output):
X-Container-Bytes-Used-Actual: 114688
X-Container-Read: .r:*,.rlistings
X-Storage-Policy: default-placement
As you can see, there's now an X-Container-Read header.
I've tried to make it back private with swift client and curl, but to no success. Here're some curl examples.
Updating works!
If I do
curl -X POST -i -H "X-Auth-Token: <authoken>" -H "X-Container-Read: .r:test" https://endpoint.url/swift/v1/containername
metadata will become
X-Container-Read: .r:test
But if I do
curl -X POST -i -H "X-Auth-Token: <authtoken>" -H "X-Remove-Container-Read: x" https://endpoint.url/swift/v1/containername
nothing happens, metadata field will remain there.
So is this a broken API in RGW, or am I missing something? Maybe there's some explicit warning that after becoming public you can't make container private again?
_______________________________________________ ceph-users mailing list ceph-users@xxxxxxxxxxxxxx http://lists.ceph.com/listinfo.cgi/ceph-users-ceph.com