Commit Graph

1477 Commits

Author SHA1 Message Date
John Mulligan d564eff523 workflows: enable squid job
Enable the squid ci job now that the squid RC is available. This won't
be required for merge until after the full release.

Signed-off-by: John Mulligan <jmulligan@redhat.com>
2024-07-25 13:52:06 +00:00
Niels de Vos a9ce294dbb rbd: let CloneImageByID check for rbd_clone4 at runtime
Some versions of librbd provide the rbd_clone4 function, and others do
not. Squid will have the function backported in the 1st update, the
initial release of Squid does not have it. This makes checking for the
function based on the named Ceph version impractical.

With the new dlsym.LookupSymbol() function, it is now possible to check
the availability of rbd_clone4 during runtime. If the symbol is not
found ErrNotImplemented is returned, which can be used to detect the
unavailability of the function.

Signed-off-by: Niels de Vos <ndevos@ibm.com>
2024-07-25 12:03:15 +00:00
Niels de Vos 8bced26404 rbd: fix cleanup of CloneFromGroupSnap test case
When there is a failure during the CloneFromGroupSnap test case, the
rbd-group snapshot was not removed, preventing images from being deleted
as well.

Signed-off-by: Niels de Vos <ndevos@ibm.com>
2024-07-25 12:03:15 +00:00
Niels de Vos 0460442cba internal: add dlsym package for working with dynamically loaded symbols
The dlsym package provides LookupSymbol() which resolves a named symbol
(like "rbd_clone4") and returns a unsafe.Pointer to it. The caller is
expected to cast the symbol to function that can be called.

Signed-off-by: Niels de Vos <ndevos@ibm.com>
2024-07-25 12:03:15 +00:00
Peter Willis 9531dd692a rgw/admin: add test for bucket creation date 2024-07-22 09:13:10 +00:00
Peter Willis f9dc7c1dcf rgw/admin: add creation time to bucket 2024-07-22 09:13:10 +00:00
dependabot[bot] 1046b034a1 go-ceph: bump golang.org/x/sys from 0.20.0 to 0.21.0
Bumps [golang.org/x/sys](https://github.com/golang/sys) from 0.20.0 to 0.21.0.
- [Commits](https://github.com/golang/sys/compare/v0.20.0...v0.21.0)

---
updated-dependencies:
- dependency-name: golang.org/x/sys
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-07-03 08:16:11 +00:00
Anoop C S 83cd6ac097 Makefile: Use ?= for initial variable definitions(part 2)
:= is not capable of accepting values(for variables) from execution
environment. Therefore replace := with ?= for completeness.

Signed-off-by: Anoop C S <anoopcs@cryptolab.net>
2024-07-02 18:50:35 +00:00
dependabot[bot] 3e480cd9ae go-ceph: bump github.com/aws/aws-sdk-go from 1.53.14 to 1.54.12
Bumps [github.com/aws/aws-sdk-go](https://github.com/aws/aws-sdk-go) from 1.53.14 to 1.54.12.
- [Release notes](https://github.com/aws/aws-sdk-go/releases)
- [Commits](https://github.com/aws/aws-sdk-go/compare/v1.53.14...v1.54.12)

---
updated-dependencies:
- dependency-name: github.com/aws/aws-sdk-go
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-07-02 18:16:42 +00:00
John Mulligan edcd508bfd makefile: remove nautilus CEPH_VERSION
Remove nautilus from the make file's "known ceph codenames". This
change goes along with the removal of nautilus from the CI as
the makefile is really only used by developers/contributors and
not by codebases that use go-ceph.

Signed-off-by: John Mulligan <jmulligan@redhat.com>
2024-07-02 23:22:37 +05:30
John Mulligan d9c4b8127a github: do not require nautilus CI jobs for mergify
Signed-off-by: John Mulligan <jmulligan@redhat.com>
2024-07-02 23:22:37 +05:30
John Mulligan 1cff47afe3 workflows: remove nautilus from CI test matrix
This change removes nautilus from our github CI tests.

The original plan was to remove nautilus from our test matrix when Ceph
Squid was released. However, while Squid is not released yet, it is very
very soon. In the meantime, CentOS 7 is now EOL and the container images
for nautilus can not be updated. From the Ceph POV nautilus has been
long unsupported and they will not be making any changes to the base OS
for nautilus images. We have no desire to do workarounds for the EOLing
of CentOS7 either. As such we're ending direct support for nautilus a
little early but not by much.

Note that this is only disabling our testing of nautilus - we're not
going to be stripping the build tag from the sources. But we will no
longer require new code to to add it either.

Signed-off-by: John Mulligan <jmulligan@redhat.com>
2024-07-02 23:22:37 +05:30
Niels de Vos ee25db94c6 rbd: add support for CloneImageByID()
RBD image groups can be used to create consistent snapshots of all
images that are part of the group. The new rbd_clone4() API makes it
possible to create a new RBD image from a single snapshot that was
created as part of the group snapshot.

Signed-off-by: Niels de Vos <ndevos@ibm.com>
2024-06-25 20:40:23 +00:00
Vladimir Kavlakan 0fc95cf6fe rados: read & write op exec added
Signed-off-by: Vladimir Kavlakan <vkavlakan@gmail.com>
2024-06-19 13:40:42 +00:00
Simon Jürgensmeyer 9604e19a0e rgw/admin: add ErrNoSuchSubUser
Signed-off-by: Simon Jürgensmeyer <simon.juergensmeyer@hetzner-cloud.de>
2024-06-13 14:37:59 +00:00
Anoop C S 9e30a52ae4 gitignore: Add default results directory
Signed-off-by: Anoop C S <anoopcs@cryptolab.net>
2024-06-07 18:55:15 +00:00
Anoop C S 99e49bff34 docs: update README for release v0.28.0
Signed-off-by: Anoop C S <anoopcs@cryptolab.net>
2024-06-07 18:55:15 +00:00
Anoop C S 7d15378d4c rgw/admin: Promote {Get,Set}BucketQuota APIs to stable
Signed-off-by: Anoop C S <anoopcs@cryptolab.net>
2024-06-07 18:55:15 +00:00
John Mulligan e0e4115a01 containers: work around centos 8 stream getting archived
The centos 8 stream distribution is now EOL and the yum repo mirrors are
now offline. However, our CI is designed to test older released versions
of ceph where the container images are still using centos 8 stream.
Borrow and adapt a line from the ceph-csi project in order to use the
centos 8 archives (vault) until either we stop testing these versions of
ceph or the ceph project changes the base distro for these release
versions.

Signed-off-by: John Mulligan <jmulligan@redhat.com>
2024-06-04 18:33:19 +00:00
Anoop C S 26ac6fa291 Dockerfile: Avoid conflict with curl-minimal package
With CentOS Stream 8 reaching end of builds phase most of our ceph
images are migrating their bases to CentOS Stream 9. Since they come
with curl by default in a minimal rpm package we switch to attempt the
install by directly linking the binary than the package name. This is
due to the conflict between curl and curl-minimal packages in CentOS
Stream 9 images.

Signed-off-by: Anoop C S <anoopcs@cryptolab.net>
2024-06-03 14:47:01 -04:00
dependabot[bot] 96aac32a34 go-ceph: bump github.com/aws/aws-sdk-go from 1.52.0 to 1.53.14
Bumps [github.com/aws/aws-sdk-go](https://github.com/aws/aws-sdk-go) from 1.52.0 to 1.53.14.
- [Release notes](https://github.com/aws/aws-sdk-go/releases)
- [Commits](https://github.com/aws/aws-sdk-go/compare/v1.52.0...v1.53.14)

---
updated-dependencies:
- dependency-name: github.com/aws/aws-sdk-go
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-06-03 06:30:49 +00:00
dependabot[bot] e61512c969 go-ceph: bump golang.org/x/sys from 0.19.0 to 0.20.0
Bumps [golang.org/x/sys](https://github.com/golang/sys) from 0.19.0 to 0.20.0.
- [Commits](https://github.com/golang/sys/compare/v0.19.0...v0.20.0)

---
updated-dependencies:
- dependency-name: golang.org/x/sys
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-06-02 03:17:28 +00:00
Anoop C S 2b9a021118 cephfs/admin: Rename fs quiesce test file
We do have a test file named fs_quiesce_reef_test.go to make sure
that the feature is supported only from upcoming squid release. The
'reef' keyword doesn't make sense as the test itself is applicable
for any version prior to squid(upcoming). Therefore use a generic
'unsupported' keyword in the test file name.

Signed-off-by: Anoop C S <anoopcs@cryptolab.net>
2024-05-30 12:08:51 +00:00
Jiffin Tony Thottan be5dff01c9 rgw/admin: remove unknown user test case from user_bucket_test.go
Fixes: #984

Signed-off-by: Jiffin Tony Thottan <thottanjiffin@gmail.com>
2024-05-07 15:30:17 +00:00
dependabot[bot] 56bd2f1961 go-ceph: bump golang.org/x/sys from 0.18.0 to 0.19.0
Bumps [golang.org/x/sys](https://github.com/golang/sys) from 0.18.0 to 0.19.0.
- [Commits](https://github.com/golang/sys/compare/v0.18.0...v0.19.0)

---
updated-dependencies:
- dependency-name: golang.org/x/sys
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-05-02 06:23:27 +00:00
dependabot[bot] 0c37e4ad9f go-ceph: bump github.com/aws/aws-sdk-go from 1.51.12 to 1.52.0
Bumps [github.com/aws/aws-sdk-go](https://github.com/aws/aws-sdk-go) from 1.51.12 to 1.52.0.
- [Release notes](https://github.com/aws/aws-sdk-go/releases)
- [Commits](https://github.com/aws/aws-sdk-go/compare/v1.51.12...v1.52.0)

---
updated-dependencies:
- dependency-name: github.com/aws/aws-sdk-go
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-05-02 05:11:02 +00:00
John Mulligan 26e7ee73eb docs: update README for release v0.27.0
Signed-off-by: John Mulligan <jmulligan@redhat.com>
2024-04-09 13:13:56 +00:00
John Mulligan 593a097473 docs: fix version numbers for apis added prior to v0.27
Signed-off-by: John Mulligan <jmulligan@redhat.com>
2024-04-09 13:13:56 +00:00
John Mulligan f9290c87cc rgw/admin: promote GetInfo API to stable
Signed-off-by: John Mulligan <jmulligan@redhat.com>
2024-04-09 13:13:56 +00:00
John Mulligan 0a787041f3 rbd: promote Image.Resize2 api to stable
Signed-off-by: John Mulligan <jmulligan@redhat.com>
2024-04-09 13:13:56 +00:00
zxysilent 2146f1af0c rbd: trigger an error on invalid max snaps value
In file include from rbd.go:931
var cMaxSnaps C.int
ret := C.rbd_snap_list(image.image, nil, &cMaxSnaps)
cSnaps := make([]C.rbd_snap_info_t, cMaxSnaps)
It is necessary to determine whether cMaxSnaps is a large 0. Otherwise, the following code will panic
ret = C.rbd_snap_list(image.image,&cSnaps[0], &cMaxSnaps)

Signed-off-by: zxysilent <zxysilent@outlook.com>
2024-04-05 17:33:05 +00:00
Jose A. Rivera cfae965d25 rbd: remove features_nautilus.go
Signed-off-by: Jose A. Rivera <jarrpa@redhat.com>
2024-04-05 14:05:43 +00:00
dependabot[bot] 3075e6340a go-ceph: bump github.com/aws/aws-sdk-go from 1.50.32 to 1.51.12
Bumps [github.com/aws/aws-sdk-go](https://github.com/aws/aws-sdk-go) from 1.50.32 to 1.51.12.
- [Release notes](https://github.com/aws/aws-sdk-go/releases)
- [Commits](https://github.com/aws/aws-sdk-go/compare/v1.50.32...v1.51.12)

---
updated-dependencies:
- dependency-name: github.com/aws/aws-sdk-go
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-04-02 09:19:07 +00:00
Anoop C S 5e9984afe8 cephfs/admin: Adjust build tags for subvolume quiescing API tests
With the feature itself getting a backport to upcoming squid release
build tags calls for adjustments so that pre-squid and main CI jobs
can run the real tests from fs_quiesce_test.go. Until the real squid
job is enabled(after ceph squid GA) we could refrain from mentioning
'squid' build tag in those related test files.

Signed-off-by: Anoop C S <anoopcs@cryptolab.net>
2024-03-25 15:19:41 +00:00
Niels de Vos 8d71b1f760 rbd: prevent warning about redefining _POSIX_C_SOURCE
While building an application with the latest version of go-ceph, the
following warning is spit out:

In file included from _cgo_export.c:4:
resize.go:7: warning: "_POSIX_C_SOURCE" redefined
In file included from /usr/include/bits/libc-header-start.h:33,
                 from /usr/include/stdlib.h:26,
                 from _cgo_export.c:3:
/usr/include/features.h:292: note: this is the location of the previous definition
  292 | # define _POSIX_C_SOURCE        200809L

When _POSIX_C_SOURCE is already defined, ther is no need to define it
again.

Signed-off-by: Niels de Vos <ndevos@ibm.com>
2024-03-21 16:13:54 +00:00
John Mulligan bb2a449faf rbd: add a test to verify that encrypted volumes can be resized
Add a test to verify that an encrypted volume can be resized to
the desired unencrypted size similar to how the rbd command line
tool is documented as able to do.

Fixes: #972

Original-Version-By: Will Gorman <will.gorman@gmail.com>
Signed-off-by: John Mulligan <jmulligan@redhat.com>
2024-03-21 15:52:09 +00:00
Manish 755481f8c2 cephfs/admin: API for quiesceing io on a cephfs
cephfs has new quiesce feature for cephfs volume. This change add the
feature to go-ceph.

Signed-off-by: Manish <myathnal@redhat.com>
2024-03-19 11:34:21 +00:00
Anoop C S 9a3796f853 Dockerfile: Bump golang version to 1.21
This bumps the Go version of the test container to 1.21.8, which is the
oldest supported Go version as of now.

Signed-off-by: Anoop C S <anoopcs@cryptolab.net>
2024-03-10 04:47:56 +00:00
Anoop C S 708a7409af workflows: Add squid jobs to the CI matrix
Signed-off-by: Anoop C S <anoopcs@cryptolab.net>
2024-03-07 12:34:58 +00:00
Anoop C S d3c41696f7 Makefile: Add ceph squid versions
Add CEPH_VERSION values for squid and pre-squid. This will allow
building and testing with ceph squid images.

Signed-off-by: Anoop C S <anoopcs@cryptolab.net>
2024-03-07 12:34:58 +00:00
Anoop C S f03f7bcac3 cephfs/admin: Add vesion check for squid
Signed-off-by: Anoop C S <anoopcs@cryptolab.net>
2024-03-07 12:34:58 +00:00
Niels de Vos 947b7d312f rbd: add GetSnapGroupNamespace() to get details about group snapshots
rbd_snap_get_group_namespace() can be used to get details about
snapshots of an image, that were created as part of a group.

Signed-off-by: Niels de Vos <ndevos@ibm.com>
2024-03-06 12:42:29 +00:00
dependabot[bot] 95c9d7ade5 go-ceph: bump github.com/aws/aws-sdk-go from 1.50.9 to 1.50.32
Bumps [github.com/aws/aws-sdk-go](https://github.com/aws/aws-sdk-go) from 1.50.9 to 1.50.32.
- [Release notes](https://github.com/aws/aws-sdk-go/releases)
- [Commits](https://github.com/aws/aws-sdk-go/compare/v1.50.9...v1.50.32)

---
updated-dependencies:
- dependency-name: github.com/aws/aws-sdk-go
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-03-05 21:50:45 +00:00
dependabot[bot] 3cc67ea2d3 go-ceph: bump golang.org/x/sys from 0.16.0 to 0.18.0
Bumps [golang.org/x/sys](https://github.com/golang/sys) from 0.16.0 to 0.18.0.
- [Commits](https://github.com/golang/sys/compare/v0.16.0...v0.18.0)

---
updated-dependencies:
- dependency-name: golang.org/x/sys
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-03-05 21:22:47 +00:00
dependabot[bot] 2cdecbb668 go-ceph: bump github.com/stretchr/testify from 1.8.4 to 1.9.0
Bumps [github.com/stretchr/testify](https://github.com/stretchr/testify) from 1.8.4 to 1.9.0.
- [Release notes](https://github.com/stretchr/testify/releases)
- [Commits](https://github.com/stretchr/testify/compare/v1.8.4...v1.9.0)

---
updated-dependencies:
- dependency-name: github.com/stretchr/testify
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-03-05 20:58:46 +00:00
Sven Anderson f811696e12 docs: update README for release v0.26.0
Signed-off-by: Sven Anderson <sven@redhat.com>
2024-02-13 12:57:22 +00:00
Sven Anderson d4a70d7d11 docs: update api-status for release v0.26.0
Signed-off-by: Sven Anderson <sven@redhat.com>
2024-02-13 12:57:22 +00:00
Sven Anderson d34f8b95c1 rgw/admin: Fixup for 6f90ce1
Signed-off-by: Sven Anderson <sven@redhat.com>
2024-02-13 08:28:55 +00:00
Manish 6f90ce139c Code Lint: Fix lint errors caused by revive check for unused parameters
revive v1.3.7 added https://github.com/mgechev/revive/pull/966 which
checks for unused parameters in function literals. This caused several
lint errors in go-ceph code.

Signed-off-by: Manish <myathnal@redhat.com>
2024-02-13 07:22:13 +00:00
Anoop C S 06793550b8 docs: Add user bucket quota APIs to api-status
Signed-off-by: Anoop C S <anoopcs@cryptolab.net>
2024-02-06 12:53:57 +00:00