Commit Graph
13601 Commits
Author SHA1 Message Date
mergify[bot] 5aeb9c4e25 Merge pull request #17534 from rook/mergify/bp/release-1.20/pr-17448
mon: add watcher for DRBD ConfigMap in TNF deployments (backport #17448)
2026-05-14 16:28:00 +00:00
Prabhala Tara Aasrita 2821bd1bb4 mon: add watcher for DRBD ConfigMap in TNF deployments
Added a watcher in the cluster controller to detect changes to the DRBD ConfigMap used by floating monitors in TNF deployments. When the ConfigMap is updated, the watcher triggers a CephCluster reconciliation to ensure configuration changes are applied.

Fixes #17338

Signed-off-by: Prabhala Tara Aasrita <taraasrita@ibm.com>
(cherry picked from commit af03615e97)
2026-05-14 15:52:47 +00:00
mergify[bot] 1b41970bed Merge pull request #17528 from rook/mergify/bp/release-1.20/pr-17468
object: migrate notification package to aws sdk v2 (backport #17468)
2026-05-13 18:10:00 +00:00
Oded Viner 09812ac966 object: migrate notification package to aws sdk v2
migrate the notification provisioner and s3ext packages from
aws sdk v1 to v2. the custom DeleteBucketNotification call is
rewritten to manually build and sign the HTTP request using the
v2 v4 signer, since this ceph-specific API has no sdk equivalent.

also fix t.Skipped() -> t.Skip() in notification integration test.

Signed-off-by: Oded Viner <oviner@redhat.com>
(cherry picked from commit f5df592106)
2026-05-13 17:37:22 +00:00
mergify[bot] 3504b2b827 Merge pull request #17514 from rook/mergify/bp/release-1.20/pr-17502
core: skip crush rule cleanup if no pools exist yet (backport #17502)
2026-05-12 23:39:45 +00:00
Travis Nielsen 5a80ae4217 Merge pull request #17521 from rook/mergify/bp/release-1.20/pr-17286
doc: add CSI operator resource cleanup steps to teardown guide (backport #17286)
2026-05-12 13:36:59 -10:00
Travis Nielsen 83c060e590 Merge pull request #17522 from rook/mergify/bp/release-1.20/pr-17364
build(deps): bump github.com/moby/spdystream from 0.5.0 to 0.5.1 (backport #17364)
2026-05-12 13:36:45 -10:00
Travis Nielsen 31bbc393eb Merge pull request #17467 from rook/mergify/bp/release-1.20/pr-17453
osd: detect encryption label from dmcrypt path (backport #17453)
2026-05-12 13:36:16 -10:00
mergify[bot] 7d0785d635 Merge pull request #17463 from rook/mergify/bp/release-1.20/pr-17176
csi: move csi management to admin (backport #17176)
2026-05-12 23:17:38 +00:00
Travis Nielsen 2cd4215f8f Merge pull request #17517 from rook/mergify/bp/release-1.20/pr-17472
mgr: retry self-signed cert creation on wrapped context deadline errors (backport #17472)
2026-05-12 13:12:23 -10:00
Travis Nielsen 44c860824d Merge pull request #17519 from rook/mergify/bp/release-1.20/pr-17494
docs: fix duplicated words in docs and comments (backport #17494)
2026-05-12 13:12:00 -10:00
dependabot[bot] 7f2d883a55 build(deps): bump github.com/moby/spdystream from 0.5.0 to 0.5.1
Bumps [github.com/moby/spdystream](https://github.com/moby/spdystream) from 0.5.0 to 0.5.1.
- [Release notes](https://github.com/moby/spdystream/releases)
- [Commits](https://github.com/moby/spdystream/compare/v0.5.0...v0.5.1)

---
updated-dependencies:
- dependency-name: github.com/moby/spdystream
  dependency-version: 0.5.1
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
(cherry picked from commit 88a3e79cbb)
2026-05-12 22:54:03 +00:00
subhamkrai a9d29bdec6 csi: move csi management to admin
Going forward, admin will manage the csi operator
CR's and rook will only manage Ceph Connection cr
and client Profile cr.

The old csi driver is completely removed from Rook
and can no longer be used starting in Rook v1.20.

The upgrade guide will contain the needed transition steps
for managing the csi operator settings.

Signed-off-by: subhamkrai <srai@redhat.com>
(cherry picked from commit 4eefad42e8)
2026-05-12 12:49:21 -10:00
subhamkrai 9f978ec685 ci: fix some minor canary test issues
The canary test was waiting for replicapool
instead of replicapool2, and a more reliable
wait for the toolbox pod start is added.

Signed-off-by: subhamkrai <srai@redhat.com>
(cherry picked from commit b50f1a3d60)
2026-05-12 12:49:21 -10:00
Travis Nielsen 97926f1dc9 Merge pull request #17470 from rook/mergify/bp/release-1.20/pr-17464
core: add default ResourceRequirements for cmd-reporter (backport #17464)
2026-05-12 12:47:37 -10:00
Lumir Sliva 32615f0f3a doc: add CSI operator resource cleanup steps to teardown guide
Add a section to the teardown documentation with cleanup commands
for CSI operator resources: OperatorConfig, Driver, ClientProfile,
ClientProfileMapping, and CephConnection custom resources, plus the
csi-operator.yaml deployment manifest.

Signed-off-by: Lumir Sliva <61183145+lumir-sliva@users.noreply.github.com>
(cherry picked from commit 943ea89cd5)
2026-05-12 22:45:40 +00:00
immanuwell 551d62a2a2 docs: fix duplicated words in docs and comments
Clean up duplicated words and a typo in object storage docs, comments, and user-facing messages.

Signed-off-by: immanuwell <pchpr.00@list.ru>
(cherry picked from commit c3a9f5fdd9)
2026-05-12 22:41:48 +00:00
texasich 091ed17fd8 mgr: retry self-signed cert creation on wrapped deadline errors
Signed-off-by: texasich <texasich@users.noreply.github.com>
(cherry picked from commit beb6c0f373)
2026-05-12 22:38:05 +00:00
Santosh f09555f1a8 core: skip crush rule cleanup if no pools exist yet
During the initial cluster setup, CleanUnusedCrushRules() runs after MGR
startup but before any pools are created (if user does not create the
.mgr pool along with the cephCluster manifest). It deletes the default
replicated_pool since no pool references it.

This leaves the cluster in a state if Zero crush rules. When the MGR
tries to start the device_health_metris during this window, thne it
fails to find the crush rule and crashes.

Skip the cleanup when no pools exists yet, since there is nothing
meaninful to cleanup.

Signed-off-by: Santosh <sapillai@redhat.com>
(cherry picked from commit 1c1d6cf261)
2026-05-12 14:24:23 +00:00
mergify[bot] e51203798d Merge pull request #17513 from rook/mergify/bp/release-1.20/pr-17474
core: Declare concurrent cluster reconciles stable (backport #17474)
2026-05-12 10:38:37 +00:00
subham rai 9b5b80b172 Merge pull request #17511 from rook/mergify/bp/release-1.20/pr-17503
nvmeof: add sys_admin to scc allowedcapabilities for gateway pods (backport #17503)
2026-05-12 15:39:54 +05:30
mergify[bot] ad5a48b123 Merge pull request #17457 from rook/mergify/bp/release-1.20/pr-17455
ci: Upgrade tests from v1.19 to master (backport #17455)
2026-05-11 23:30:30 +00:00
Travis Nielsen aff4a6b9f8 ci: upgrade tests from v1.19 to master
The upgrade integration tests for the v1.20 release need to
validate the upgrade starting from v1.19 to the latest.

Signed-off-by: Travis Nielsen <tnielsen@redhat.com>
(cherry picked from commit 1f205c4be4)
2026-05-11 13:02:16 -10:00
Travis Nielsen 4182fe67a1 core: declare stable concurrent cluster reconciles
The ROOK_RECONCILE_CONCURRENT_CLUSTERS feature was implemented
in v1.19. This feature has been stable, with no related issues
reported. The feature is tested in the CI with no known
stability issues. Let's declare this feature as stable.

Signed-off-by: Travis Nielsen <tnielsen@redhat.com>
(cherry picked from commit 45ec32e513)
2026-05-11 22:50:18 +00:00
Travis Nielsen ce8ef223c9 Merge pull request #17501 from rook/mergify/bp/release-1.20/pr-17498
build: bump golang.org/x/net to fix govulncheck ci failure (backport #17498)
2026-05-11 12:04:19 -10:00
Oded Viner 67520301ac nvmeof: add sys_admin to scc allowedcapabilities for gateway pods
the nvmeof gateway requires privileged containers with
sys_admin capability. the rook-ceph scc only allowed mknod,
causing pod creation to fail on openshift with:
"unable to validate against any security context constraint"

add sys_admin to allowedcapabilities in the helm chart sccs
and the go scc helper. this does not affect other daemons
(osd, rgw, mgr, mon) since they do not request sys_admin.

the operator-openshift.yaml example already includes
sys_admin, so this aligns the helm charts to match.

Signed-off-by: Oded Viner <oviner@redhat.com>
(cherry picked from commit f8c1c99cb4)
2026-05-11 22:04:16 +00:00
Oded Viner 7b4313ffbb build: bump golang.org/x/net to fix govulncheck ci failure
bump golang.org/x/net from v0.52.0 to latest patched version
to resolve known http2 vulnerability flagged by govulncheck.

the vulnerable call path is:
  object.debugHTTPClient.Do
  -> httputil.DumpRequestOut
  -> http2.Transport.RoundTrip

this is a pre-existing issue blocking ci on all pull requests.

Signed-off-by: Oded Viner <oviner@redhat.com>
(cherry picked from commit 20fa0128f5)
2026-05-11 09:25:07 +00:00
mergify[bot] a62de9e649 Merge pull request #17493 from rook/mergify/bp/release-1.20/pr-17465
helm: add ROOK_CEPH_MON_RUN_AS_ROOT to chart values (backport #17465)
2026-05-08 16:24:46 +00:00
Prabhala Tara Aasrita 46d62209db helm: add ROOK_CEPH_MON_RUN_AS_ROOT to chart values
Added monRunAsRoot chart value to support the ROOK_CEPH_MON_RUN_AS_ROOT environment variable in the operator ConfigMap.

Fixes #17452

Signed-off-by: Prabhala Tara Aasrita <taraasrita@ibm.com>
(cherry picked from commit e6ad74087e)
2026-05-07 15:46:35 +00:00
subham rai 627f0fe32b Merge pull request #17490 from rook/mergify/bp/release-1.20/pr-17484
mon: check node existence on every health check iteration (backport #17484)
2026-05-07 13:53:30 +05:30
Prabhala Tara Aasrita 771e377cc7 mon: check node existence on every health check iteration
Previously, shouldFailoverMonImmediately() was called only when a mon first went out of quorum. If the node gets deleted after the timeout starts, it does not get detected until the timeout expires. Moved the call outside the timeout initialization block so it runs on every health check iteration and detects node deletion immediately.

Fixes #15953

Signed-off-by: Prabhala Tara Aasrita <taraasrita@ibm.com>
(cherry picked from commit aeae61e5be)
2026-05-07 06:03:40 +00:00
mergify[bot] 45185d172b Merge pull request #17488 from rook/mergify/bp/release-1.20/pr-17104
rgw: add option for tls and cipher in objectstore (backport #17104)
2026-05-06 17:44:43 +00:00
subhamkrai 3445e2be3a rgw: add option for tls and cipher in objectstore
this commit add option in the ceph objecstore CR
to configure TLS profile and TLS ciphersuite for
rgw beast.

Signed-off-by: subhamkrai <srai@redhat.com>
(cherry picked from commit 01ef98c1e3)
2026-05-06 17:13:59 +00:00
subham rai ef126a3918 Merge pull request #17486 from rook/mergify/bp/release-1.20/pr-17483
csi: wait for the PV deletion (backport #17483)
2026-05-06 14:37:52 +05:30
Madhu Rajanna eb38b091ed csi: wait for the PV deletion
Wait for the PV deletion before deleting
the ceph resources like pools.

Signed-off-by: Madhu Rajanna <madhupr007@gmail.com>
(cherry picked from commit 799bd66243)
2026-05-06 08:21:10 +00:00
Joshua Hoblitt ffbb449b82 core: add default ResourceRequirements for cmd-reporter
The cmd-reporter ResourceRequirements are used by the
`rook-ceph-detect-version` pod.  Setting a default ResourceRequirement
is useful in and of itself while always allowing the `values.yaml` serve
double duty as a configuration example.

Signed-off-by: Joshua Hoblitt <josh@hoblitt.com>
(cherry picked from commit 64cf1df920)
2026-04-30 17:34:49 +00:00
Santosh 10116d7b41 osd: detect encryption label from dmcrypt path
Detect OSD encryption from the dmcrypt block path in `getOSDInfo` as a
fallback when the `encrypted` label is missing on pre-label deployments.

Include `osd.Encrypted` in the label check in `makeDeployment` so the
label reflects the actual OSD state on upgrade.

Fixes a bug where upgrading to a Rook version with the `encrypted` label
would set the label to `false` on already-encrypted OSDs, because the
label didn't exist yet and `getOSDInfo` defaulted to `false`.

Signed-off-by: Santosh <sapillai@redhat.com>
(cherry picked from commit fc9e3b54f3)
2026-04-30 08:08:21 +00:00
Travis Nielsen b9726d4834 Merge pull request #17456 from rook/mergify/bp/release-1.20/pr-17444
object: migrate bucket provisioner to aws sdk v2 (backport #17444)
2026-04-29 14:42:29 -06:00
mergify[bot] 7c25791a13 Merge pull request #17461 from rook/mergify/bp/release-1.20/pr-17451
exporter: set correct DNSPolicy for rook-ceph-exporter (backport #17451)
2026-04-29 18:38:39 +00:00
Rohan Gupta 5ce77b0d94 exporter: set correct DNSPolicy for rook-ceph-exporter
rook-ceph-exporter should use DNSPolicy ClusterFirstWithHostNet when
hostNetwork is enabled

Signed-off-by: Rohan Gupta <rohgupta@redhat.com>
(cherry picked from commit 17873d3af2)
2026-04-29 18:11:46 +00:00
Oded Viner d11ef74a9b object: migrate bucket provisioner to aws sdk v2
migrate bucket provisioner from aws sdk v1 to v2.

replace awserr.Error type assertions with smithy.APIError
using errors.As for v2-style error handling.

switch setBucketPolicy and setBucketLifecycle to use
the v2 s3 client (ClientV2) directly with context.

replace v1 s3 types (BucketLifecycleConfiguration,
GetBucketLifecycleConfigurationOutput) with v2 equivalents
from s3types and s3v2 packages.

add cmpopts.IgnoreUnexported to cmp.Diff calls to handle
unexported noSmithyDocumentSerde fields in v2 sdk types.

add nil guard on lifecycle output before accessing rules
to prevent nil dereference when get returns an error.

depends on #17414

Signed-off-by: Oded Viner <oviner@redhat.com>
(cherry picked from commit 5ba3e1a2c0)
2026-04-29 16:24:17 +00:00
Joshua Hoblitt 02a403b663 Merge pull request #17446 from rook/mergify/bp/release-1.20/pr-17414
object: migrate bucket policy methods to aws sdk v2 (backport #17414)
2026-04-29 09:21:30 -07:00
mergify[bot] bc82c95440 Merge pull request #17450 from rook/mergify/bp/release-1.20/pr-17442
core: Update all docs and examples default to v20.2.1 (backport #17442)
2026-04-28 22:54:36 +00:00
Travis Nielsen 82e9c4de51 core: update all docs and examples to v20.2.1
With the default version now being v20.2.1, also update
all of the examples, documentation, and default CI to run
with that version

Signed-off-by: Travis Nielsen <tnielsen@redhat.com>
(cherry picked from commit 62a9debceb)
2026-04-28 22:24:53 +00:00
Oded Viner fe9d515ced object: migrate bucket policy methods to aws sdk v2
migrate PutBucketPolicy and GetBucketPolicy to use aws sdk v2
client.

Signed-off-by: Oded Viner <oviner@redhat.com>
(cherry picked from commit 88e0047d9b)
2026-04-28 11:45:57 +00:00
Travis Nielsen 03b9b8b1b0 Merge pull request #17427 from rook/mergify/bp/release-1.20/pr-17282
pool: clean up unused crush rules (backport #17282)
2026-04-27 13:32:01 -06:00
Travis Nielsen e23819428e Merge pull request #17435 from rook/mergify/bp/release-1.20/pr-17342
object: migrate s3agent object methods to aws sdk v2 (backport #17342)
2026-04-27 10:27:59 -06:00
mergify[bot] 00ecf80de1 Merge pull request #17437 from rook/mergify/bp/release-1.20/pr-17432
security: grant scc to rook-ceph-nvmeof service account (backport #17432)
2026-04-27 16:23:11 +00:00
Oded Viner 1332e79115 security: grant scc to rook-ceph-nvmeof service account
the rook-ceph-nvmeof service account is not listed in the
securitycontextconstraints users, causing cephnvmeofgateway
pods to fail on openshift. add the service account to the
scc in the helm charts, go scc builder, and test namespace
substitution.

Signed-off-by: Oded Viner <oviner@redhat.com>
(cherry picked from commit 7f3e2ace27)
2026-04-27 15:50:44 +00:00
Oded Viner 9341b3dcfa object: migrate s3agent object methods to aws sdk v2
migrate PutObjectInBucket, GetObjectInBucket, and
DeleteObjectInBucket to use aws sdk v2 client.
replace v1 awserr error handling in DeleteObjectInBucket
with v2 typed errors (errors.As).
remove unused v1 awserr import.

Signed-off-by: Oded Viner <oviner@redhat.com>
(cherry picked from commit 2cb714dabd)
2026-04-27 15:48:57 +00:00