mirror of
https://github.com/ceph/go-ceph
synced 2024-12-12 01:16:24 +00:00
936fc2deb1
Implement support for new /info AdminOps interface, which returns a json record similar to: { "info": { "storage_backends": [ { "name":"rados", "cluster_id":"204a1415-0b03-4926-bf76-6aebd192a52d" } ] } } Co-authored-by: Anoop C S <anoopcs@cryptolab.net> Co-authored-by: Sébastien Han <seb@redhat.com> Signed-off-by: Matt Benjamin <mbenjamin@redhat.com> Signed-off-by: Anoop C S <anoopcs@cryptolab.net> |
||
---|---|---|
.. | ||
bucket_quota_test.go | ||
bucket_quota.go | ||
bucket_test.go | ||
bucket.go | ||
caps_test.go | ||
caps.go | ||
doc.go | ||
errors_test.go | ||
errors.go | ||
info.go | ||
keys_test.go | ||
keys.go | ||
link_test.go | ||
link.go | ||
list_bucket_with_stats_test.go | ||
list_bucket_with_stats.go | ||
quota_test.go | ||
quota.go | ||
radosgw_test.go | ||
radosgw.go | ||
README.md | ||
subuser_test.go | ||
subuser.go | ||
usage_test.go | ||
usage.go | ||
user_bucket_test.go | ||
user_bucket.go | ||
user_test.go | ||
user.go | ||
utils_test.go | ||
utils.go |
Prerequisites
You must create an admin user like so:
radosgw-admin user create --uid admin --display-name "Admin User" --caps "buckets=*;users=*;usage=read;metadata=read;zone=read --access-key=2262XNX11FZRR44XWIRD --secret-key=rmtuS1Uj1bIC08QFYGW18GfSHAbkPqdsuYynNudw
Then use the access_key
and secret_key
for authentication.
Snippet usage example:
package main
import (
"github.com/ceph/go-ceph/rgw/admin"
)
func main() {
// Generate a connection object
co, err := admin.New("http://192.168.1.1", "2262XNX11FZRR44XWIRD", "rmtuS1Uj1bIC08QFYGW18GfSHAbkPqdsuYynNudw", nil)
if err != nil {
panic(err)
}
// Get the "admin" user
user, err := co.GetUser(context.Background(), admin.User{ID: "admin"})
if err != nil {
panic(err)
}
// Print the user display name
fmt.Println(user.DisplayName)
}