mirror of
https://github.com/ceph/ceph-csi.git
synced 2025-06-13 10:33:35 +00:00
rebase: bump go-ceph version to v0.16.0
go-ceph v0.16.0 contains subvolume metadata APIs and subvolume snapshot metadata APIs. Please note, as the APIs can not be tested in the go-ceph CI, it requires build-tag `ceph_ci_untested`. Signed-off-by: Prasanna Kumar Kalever <prasanna.kalever@redhat.com>
This commit is contained in:
committed by
mergify[bot]
parent
025b90f74c
commit
23c324898a
24
vendor/github.com/ceph/go-ceph/rbd/rbd_nautilus.go
generated
vendored
24
vendor/github.com/ceph/go-ceph/rbd/rbd_nautilus.go
generated
vendored
@ -13,30 +13,28 @@ import "C"
|
||||
import (
|
||||
"unsafe"
|
||||
|
||||
"github.com/ceph/go-ceph/internal/retry"
|
||||
ts "github.com/ceph/go-ceph/internal/timespec"
|
||||
"github.com/ceph/go-ceph/rados"
|
||||
)
|
||||
|
||||
// GetImageNames returns the list of current RBD images.
|
||||
func GetImageNames(ioctx *rados.IOContext) ([]string, error) {
|
||||
var (
|
||||
err error
|
||||
images []C.rbd_image_spec_t
|
||||
size C.size_t
|
||||
)
|
||||
retry.WithSizes(32, 4096, func(s int) retry.Hint {
|
||||
size = C.size_t(s)
|
||||
var images []C.rbd_image_spec_t
|
||||
size := C.size_t(4096)
|
||||
for {
|
||||
images = make([]C.rbd_image_spec_t, size)
|
||||
ret := C.rbd_list2(
|
||||
cephIoctx(ioctx),
|
||||
(*C.rbd_image_spec_t)(unsafe.Pointer(&images[0])),
|
||||
&size)
|
||||
err = getErrorIfNegative(ret)
|
||||
return retry.Size(int(size)).If(err == errRange)
|
||||
})
|
||||
if err != nil {
|
||||
return nil, err
|
||||
err := getErrorIfNegative(ret)
|
||||
if err != nil {
|
||||
if err == errRange {
|
||||
continue
|
||||
}
|
||||
return nil, err
|
||||
}
|
||||
break
|
||||
}
|
||||
defer C.rbd_image_spec_list_cleanup((*C.rbd_image_spec_t)(unsafe.Pointer(&images[0])), size)
|
||||
|
||||
|
37
vendor/github.com/ceph/go-ceph/rbd/snapshot_rename.go
generated
vendored
Normal file
37
vendor/github.com/ceph/go-ceph/rbd/snapshot_rename.go
generated
vendored
Normal file
@ -0,0 +1,37 @@
|
||||
//go:build ceph_preview
|
||||
// +build ceph_preview
|
||||
|
||||
package rbd
|
||||
|
||||
// #cgo LDFLAGS: -lrbd
|
||||
// #include <stdlib.h>
|
||||
// #include <rbd/librbd.h>
|
||||
import "C"
|
||||
|
||||
import (
|
||||
"unsafe"
|
||||
)
|
||||
|
||||
// Rename a snapshot.
|
||||
//
|
||||
// Implements:
|
||||
// int rbd_snap_rename(rbd_image_t image, const char *snapname,
|
||||
// const char* dstsnapsname);
|
||||
func (snapshot *Snapshot) Rename(destName string) error {
|
||||
if err := snapshot.validate(imageNeedsIOContext | imageIsOpen | imageNeedsName | snapshotNeedsName); err != nil {
|
||||
return err
|
||||
}
|
||||
|
||||
cSrcName := C.CString(snapshot.name)
|
||||
cDestName := C.CString(destName)
|
||||
defer C.free(unsafe.Pointer(cSrcName))
|
||||
defer C.free(unsafe.Pointer(cDestName))
|
||||
|
||||
err := C.rbd_snap_rename(snapshot.image.image, cSrcName, cDestName)
|
||||
if err != 0 {
|
||||
return getError(err)
|
||||
}
|
||||
|
||||
snapshot.name = destName
|
||||
return nil
|
||||
}
|
Reference in New Issue
Block a user