Commit Graph
1467 Commits
Author SHA1 Message Date
Niels de Vos 17d53ed16b csi: update Kubernetes CSI-Addons sidecar to version 0.13.0
Signed-off-by: Niels de Vos <ndevos@ibm.com>
2025-08-12 17:56:37 +02:00
Travis Nielsen 86d30082ab tests: upgrade from 1.17 to master
For the integration tests, now we start upgrading from v1.17.x
to the master branch, to test that the upgrades are stable
to what will become the 1.18 release.

Signed-off-by: Travis Nielsen <tnielsen@redhat.com>
2025-08-06 15:02:50 -06:00
Travis Nielsen dc09e78ece Merge pull request #16224 from jhoblitt/maint/integration-ceph-admin-client
test: factor out util/admin package for setup of ceph admin client
2025-08-06 10:51:34 -06:00
Travis Nielsen 3137244409 ci: update min k8s version to v1.29
For Rook v1.18 the min supported version of K8s is
v1.29. With the pending release of K8s 1.34, this
will be the typical six most recent releases that
Rook tests against.

Signed-off-by: Travis Nielsen <tnielsen@redhat.com>
2025-08-04 16:51:00 -06:00
Joshua Hoblitt 36f1a3308f test: factor out util/admin package for setup of ceph admin client
Signed-off-by: Joshua Hoblitt <josh@hoblitt.com>
2025-08-01 14:44:58 -07:00
Joshua Hoblitt 1163133aec object: simplify CephObjectStoreUser deletion logic
Signed-off-by: Joshua Hoblitt <josh@hoblitt.com>
2025-08-01 12:41:10 -07:00
Travis Nielsen db2e547779 tests: skip bucket lifecycle policy removal test
In ceph v19.2.3 bucket lifecycle policy removal appears to
be broken, so skip this test for now.

Signed-off-by: Travis Nielsen <tnielsen@redhat.com>
2025-07-29 12:40:48 -06:00
Travis Nielsen 66a006b99c core: update ceph version to v19.2.3
With the new squid patch release, update the base
image, the docs, and the examples to all use the latest
stable Ceph release v19.2.3.

Signed-off-by: Travis Nielsen <tnielsen@redhat.com>
2025-07-29 11:51:11 -06:00
Santosh Pillai c615967fa8 Merge pull request #16040 from subhamkrai/rotate-csi-keyrings
csi: automate CSI cephx key rotation
2025-07-29 11:09:50 +05:30
subhamkrai 6d5401c50d csi: automate CSI cephx key rotation
This PR implements the CSI cephx key rotation feature,
which follows overlapping rotation for non-daemon keys.
Refer to the cephx rotation API from design PR 15915 for details.

Signed-off-by: subhamkrai <srai@redhat.com>
2025-07-25 15:39:00 +05:30
parth-gr c592d36fc7 external: automate external users cephx key rotation
Ceph has a new ceph auth rotate command currently
present in ceph:main

Add a new flag `--cephx-key-rotate`  to rotate the
cephx keys genrated by external python script,
If we enable it, it will create a new user with suffix `.{x}`

Signed-off-by: parth-gr <partharora1010@gmail.com>
2025-07-24 14:41:51 +05:30
subhamkrai 8bd4b38399 test: add pathType with ingress dashboard host
Recentally, helm related ci started failing due to
```
testutil: failed to install chart. result=. walk.go:75: found symbolic link in path: /home/runner/work/rook/rook/deploy/charts/rook-ceph-cluster/charts/library resolves to /home/runner/work/rook/rook/deploy/charts/library. Contents of linked file included and used
I0714 09:44:18.963620   18291 warnings.go:110] "Warning: path /ceph-dashboard(/|$)(.*) cannot be used with pathType Prefix"
Error: INSTALLATION FAILED: 1 error occurred:
	* admission webhook "validate.nginx.ingress.kubernetes.io" denied the request: ingress contains invalid paths: path /ceph-dashboard(/|$)(.*) cannot be used with pathType Prefix, err=failed to run helm command on args [install --create-namespace rook-ceph-cluster /home/runner/work/rook/rook/deploy/charts/rook-ceph-cluster --namespace helm-ns -f values-test.yaml] : . walk.go:75: found symbolic link in path: /home/runner/work/rook/rook/deploy/charts/rook-ceph-cluster/charts/library resolves to /home/runner/work/rook/rook/deploy/charts/library. Contents of linked file included and used
I0714 09:44:18.963620   18291 warnings.go:110] "Warning: path /ceph-dashboard(/|$)(.*) cannot be used with pathType Prefix"
Error: INSTALLATION FAILED: 1 error occurred:
```
as default `pathType` is `Prefix`, we need to change it to
`pathType:ImplementationSpecific`.

Signed-off-by: subhamkrai <srai@redhat.com>
2025-07-15 12:50:20 +05:30
Travis Nielsen 009e8eb254 Merge pull request #15666 from puskunalis/cleanup-fix-disk-shredding
osd: fix cleanup job disk shredding
2025-07-10 10:28:46 -06:00
Michael Adam 849e9a48cb test: use the qemu2 minikube driver on Linyx for create-dev-cluster
The create-dev-cluster script used the kvm2 minikube driver on Linux.

On newer Linux flavors like Fedora 41+, the kvm2 driver can have problems
and the qemu2 driver is recommended.

This changes the script to use the qemu2 driver for  Linux

Signed-off-by: Michael Adam <obnox@samba.org>
2025-07-01 19:35:29 +02:00
Vilius Puškunalis 27010f96f3 osd: fix cleanup job disk shredding
Fixes quick disk shredding by using dd to shred data at additional offsets where ceph metadata is duplicated. For full shred, the shred utility remains in use.

Signed-off-by: Vilius Puškunalis <47086537+puskunalis@users.noreply.github.com>
2025-06-23 21:46:41 +03:00
Michael Adam a699bcec06 ci: remove unused script helm.sh
The script tests/scripts/helm.sh was previously used by some ci
workflows to install helm.

Now that this is not used anymore, this change removes the script.

Signed-off-by: Michael Adam <obnox@samba.org>
2025-06-12 19:47:24 +02:00
Michael AdamandTravis Nielsen fc10f61444 ci: stop using helm.sh up
use setup-helm instead.

Signed-off-by: Michael Adam <obnox@samba.org>
Co-authored-by: Travis Nielsen <tnielsen@redhat.com>
2025-06-12 19:47:24 +02:00
Michael Adam ef267ee8bf helm: remove mention of helm.sh clean
tests/scripts/helm.sh clean is not implemented.

So  remove frpom the script's help text
and from the development guilde

Signed-off-by: Michael Adam <obnox@samba.org>
2025-06-06 17:51:40 +02:00
Michael Adam 7c05f532ce helm: use the latest version
update the helm version used to the latest (v3.18.2)

Signed-off-by: Michael Adam <obnox@samba.org>
2025-06-04 19:01:47 +02:00
Artem Torubarov df3ce489d6 tests: change project name in keystone e2e test
Signed-off-by: Artem Torubarov <artem.torubarov@sap.com>
2025-06-03 10:30:04 +02:00
Travis Nielsen d252466f6f ci: test tentacle devel in daily builds
With the tentacle release approaching, let's start
running the Rook tests against the tentacle devel
images to catch if any issues.

Signed-off-by: Travis Nielsen <tnielsen@redhat.com>
2025-05-30 13:52:56 -06:00
Carlos Barria c63ebbe0e3 core: fix golangci-lint check ST1019
This change cleans up and standardizes import statements across the Ceph operator code. It removes redundant or duplicate imports and reorganizes alias names for improved clarity and consistency. Additionally, the ST1019 exception was removed from .golangci.yaml now that the code complies with the rule.

Signed-off-by: Carlos Barria <cbarria@yahoo.com>
2025-05-27 17:38:22 -04:00
Carlos Barria 030ada45b0 core: fix golangci-lint check QF1003 QF1002
Refactored multiple conditional if-else blocks into switch statements to improve readability and maintainability. Also removed outdated staticcheck rule comments (QF1002, QF1003) from .golangci.yaml.

Signed-off-by: Carlos Barria <cbarria@yahoo.com>
2025-05-27 13:49:49 -04:00
Carlos Barria c044ca9e77 core: fix golangci-lint check ST1008
Signed-off-by: Carlos Barria <cbarria@yahoo.com>
2025-05-22 15:39:30 -04:00
Carlos Barria 8afc4ee548 core: fix golangci-lint check QF1004
Signed-off-by: Carlos Barria <cbarria@yahoo.com>
2025-05-22 11:21:45 -04:00
Niels de Vos a168c40008 csi: update Kubernetes CSI sidecar images to current versions
The Kubernetes CSI sidecars have had several releases that were not
included in deployments by Rook yet, update them to the versions that
are available today:

- csi-attacher:v4.8.1
- csi-provisioner:v5.2.0
- csi-resizer:v1.13.2
- csi-snapshotter:v8.2.1

This change is important, because Ceph-CSI will implement the new
Controller.GetSnapshot CSI procedure. A bug in csi-lib-utils causes a
panic when a ControllerCapability is provided, but not (yet) known to
the CSI sidecars. The updated sidecars consume a version of
csi-lib-utils with a fix for that panic.

See-also: kubernetes-csi/csi-lib-utils#188
Signed-off-by: Niels de Vos <ndevos@ibm.com>
2025-05-20 14:24:02 +02:00
Carlos Barria 61494d1baf core: fix golangci-lint check ST1005
Signed-off-by: Carlos Barria <cbarria@yahoo.com>
2025-05-19 17:52:22 -04:00
Michael Adam d7f2a4b4d8 build: move se-release-ver script to better place
The script sel-release-ver.sh was added in a somewhat unnatural place
tests/scripts .
This moves it to a more natural location build/release .

Signed-off-by: Michael Adam <obnox@samba.org>
2025-05-05 17:02:39 +02:00
a1b941f969 build: add a script for setting the release version in examples,docs, and charts
This script updates examples and docs for a new release.

Invocation in principle: set-release-ver.sh  NEW_VER
For example: set-release-ver.sh v1.16.8

Fixes: #15749

Signed-off-by: Michael Adam <obnox@samba.org>
Co-authored-by: Travis Nielsen <tnielsen@redhat.com>
Co-authored-by: Blaine Gardner <b.blaine.gardner@gmail.com>
2025-05-01 10:36:26 -06:00
Blaine Gardner 9578c8f8c4 ci: add allowUnsupported to canary pvc clusters
Nightly CI is failing on PVC canary tests. The failure seems to simply
be that `allowUnsupported` isn't set for those tests. Add it.

Signed-off-by: Blaine Gardner <blaine.gardner@ibm.com>
2025-04-30 13:37:24 -06:00
Blaine Gardner e650d4e025 Merge pull request #15779 from rook/revert-15776-more-logging-for-obc-test
Revert "ci: increase logging and time for OBC lifecycle rm test"
2025-04-29 16:19:16 -06:00
Blaine Gardner 9c8c74e24b Revert "ci: increase logging and time for OBC lifecycle rm test"
Signed-off-by: Blaine Gardner <blaine.gardner@ibm.com>
2025-04-29 16:11:40 -06:00
Blaine Gardner c4363ab81a Merge pull request #15804 from BlaineEXE/ci-wait-longer-for-upgrade-image-pull
ci: extend timeout for mons in upgrade test
2025-04-29 14:18:32 -06:00
Blaine Gardner 98bd03a420 ci: extend timeout for mons in upgrade test
When upgrading from one Ceph version to another, the new image to
upgrade to can take a long time to pull in some cases before the upgrade
can even begin. For example, some ceph-ci images regularly take 6+
minutes to pull, which exceeds the timeout waiting for mons to be ready.

Extend the timeout for mons to account for these cases.

Signed-off-by: Blaine Gardner <blaine.gardner@ibm.com>
2025-04-29 13:53:43 -06:00
subhamkrai 8c2f724f6d ci: update latest k8s version to 1.33
this commit update k8s version to 1.33 and also update
other version like for minikube cri-ctl and so.

Signed-off-by: subhamkrai <srai@redhat.com>
2025-04-29 20:53:47 +05:30
Blaine Gardner bd12f214b4 ci: increase logging and time for OBC lifecycle rm test
Nightly CI has been failing recently having issues with removing a
bucket's lifecycle config after initially applying it. A Ceph RGW issue
is suspected, but more information is needed. Attempt a longer timeout,
to see if it is a slow async process. Also log the returned info to see
if it is helpful.

This commit is intended to be eventually reverted, but it must be
checked into master so that nightly CI runs provide the needed info.

Signed-off-by: Blaine Gardner <blaine.gardner@ibm.com>
2025-04-24 14:06:28 -06:00
Travis Nielsen ae895770e2 Merge pull request #15750 from OdedViner/update_prometheus_version
test: update Prometheus Operator to v0.82.0
2025-04-23 11:44:14 -06:00
Oded Viner 5d143d990c test: update Prometheus Operator to v0.82.0
this PR updates the Prometheus Operator URL references from
version v0.71.1 to the latest release v0.81.0 in documentation
and integration test scripts. This ensures we are aligned with
the latest features and improvements from
the Prometheus Operator project.

Signed-off-by: Oded Viner <oviner@redhat.com>
2025-04-22 15:37:56 +03:00
Travis Nielsen 7d908d0a5e build: stop publishing charts in master branch
The helm charts will now only be published when it is
an officially tagged release build.

The images will only be published to all repos for
dockerhub, quay, and ghcr when it is a tagged release.

The images will be published only to dockerhub for all
master and interim release branch builds.

Remove obsolete makefile option for images.
Ceph is the only image Rook ever expects to build.
Simplify the makefile by removing the legacy option
to select which image to build.

Also included are other small improvements to clean up
the release scripts.

Signed-off-by: Travis Nielsen <tnielsen@redhat.com>
2025-04-18 10:40:29 -06:00
Joshua Hoblitt 7887f03c5c object: add CephBucketTopic .spec.endpoint.kafka.{user,password}SecretRef
userSecretRef and passwordSecretRef fields are added to allow the Kafka
endpoint username and password to be supplied from a Kubernetes Secret,
rather than exposed as plaintext as part of the endpoint URI. If the
endpoint URI has HTTP basic auth user-id and user-pass components, they
are overridden by userSecretRef and passwordSecretRef.

Squid added bucket topic attributes for configuring the user-name and
password for pushing notifications to Kafka as an alternative to
encoding credentials into the URI. However, these attributes are not
supported under Reef. Thus, this initial implementation relies on URI
mangling for compatible with both Reef and Squid. Future work could
using Ceph version detection and switch to the new attributes to be used
with Squid and/or the implementation could be converted exclusively to
use the new attributes once Rook has dropped support for Reef.

Signed-off-by: Joshua Hoblitt <josh@hoblitt.com>
2025-04-16 10:53:11 -07:00
Travis Nielsen ca1d2ed3e3 tests: lower threshold for mon free space
The tests sometimes see that the mons run out of space
in the CI, therefore, we reduce the space required
from 30% down to 10%.

Signed-off-by: Travis Nielsen <tnielsen@redhat.com>
2025-04-14 16:06:03 -06:00
Travis Nielsen f62e6d9cc2 core: set default ceph version to v19.2.2
Update the examples and docs and operator base image to
the latest ceph release v19.2.2.

Signed-off-by: Travis Nielsen <tnielsen@redhat.com>
2025-04-14 12:59:39 -06:00
parth-gr 1a296dccd5 ci: fix rgw flaky ci test
s3cmd can take more time to put the data
of 1M to the bucket as it waits for
connection to get established

currently ci fails with, Retrying failed
request: /test1-1mib-test.dat ([Errno 111]
Connection refused)

also increase the timeout for creating objectstore

Signed-off-by: parth-gr <partharora1010@gmail.com>
2025-04-08 21:15:59 +05:30
Joshua Hoblitt 6b2c357871 object: add CephObjectStoreUser.spec.keys
Signed-off-by: Joshua Hoblitt <josh@hoblitt.com>
2025-04-03 09:09:01 -07:00
Travis Nielsen d3cb7271a7 tests: upgrade from rook 1.16 to master
The upgrade tests in master have been upgrading from 1.15 to
master. In anticipation of the v1.17 release, we change
the upgrade tests to start from v1.16 to test if there
are any regressions in the supported upgrades.

Signed-off-by: Travis Nielsen <tnielsen@redhat.com>
2025-03-27 13:06:55 -06:00
Joshua Hoblitt 3cb343f62a core: run gofumpt on all files
Signed-off-by: Joshua Hoblitt <josh@hoblitt.com>
2025-03-26 10:41:48 -07:00
Santosh Pillai a816b4a971 osd: allow one healthy OSD to be drained
One ore more OSDs can be down and PGs can still be active+clean (data
was rebalanced to other available OSDs). This PR sets
maxunavailable=1+downOSDs to allow one healthy to be drained.

Signed-off-by: Santosh Pillai <sapillai@redhat.com>
2025-03-26 10:40:46 +05:30
Travis Nielsen d05a4e88ca Merge pull request #15541 from subhamkrai/install-csi-op-in-ci
ci: Install csi-op in integration tests
2025-03-19 10:04:04 -06:00
Travis Nielsen c7e5a4c236 tests: enable csi operator for go test suites
Create the CSI operator in the go integration test suites
to test the new CSI operator scenarios. For the upgrade
test suite, enable the CSI operator after the upgrade
to verify the working cluster after it is enabled.

Signed-off-by: subhamkrai <srai@redhat.com>
2025-03-19 21:02:05 +05:30
Niels de Vos 25d3b6d5fc csi: update csi-addons to v0.12.0
The csi-addons v0.12.0 release is now available.

See-also: https://github.com/csi-addons/kubernetes-csi-addons/releases/tag/v0.12.0
Signed-off-by: Niels de Vos <ndevos@ibm.com>
2025-03-05 09:35:41 +01:00