Commit Graph
13713 Commits
Author SHA1 Message Date
Joshua Hoblitt bdeddda478 Merge pull request #17739 from rook/mergify/bp/release-1.20/pr-17726
k8sutil: remove unused helper functions (backport #17726)
2026-06-12 10:37:27 -07:00
Joshua Hoblitt 961616e691 Merge pull request #17740 from rook/mergify/bp/release-1.20/pr-17730
tests: remove unused test framework helpers (backport #17730)
2026-06-12 09:52:13 -07:00
Joshua Hoblitt 74ab204836 Merge pull request #17738 from rook/mergify/bp/release-1.20/pr-17727
core: remove dead code from pkg/daemon and pkg/util (backport #17727)
2026-06-12 09:44:04 -07:00
Joshua Hoblitt 3e1ab85028 tests: remove unused k8s helper functions
The package-level VersionAtLeast function had no callers anywhere in the
repo (the K8sHelper.VersionAtLeast method remains in use), and
IsKubectlErrorNotFound's only caller was provisioners.go, which is
deleted in this PR. Verified with deadcode and repo-wide grep.

Signed-off-by: Joshua Hoblitt <josh@hoblitt.com>
(cherry picked from commit c4f8831a4d)
2026-06-12 16:11:27 +00:00
Joshua Hoblitt 7087b52557 tests: remove unused test framework helpers
Delete three files from tests/framework that are entirely dead code; no
symbol in any of them is referenced anywhere in the repo, including the
build-tagged integration suites (verified with deadcode and repo-wide
grep):

- clients/read_write.go: abandoned NFS test client (ReadWriteOperation
  and its methods)
- installer/provisioners.go: hostpath PV helpers orphaned when the
  cassandra and nfs installers were removed
- installer/device.go: IsAdditionalDeviceAvailableOnCluster, unused
  since the upgrade test rework

Signed-off-by: Joshua Hoblitt <josh@hoblitt.com>
(cherry picked from commit dbfdd818db)
2026-06-12 16:11:26 +00:00
Joshua Hoblitt b2d0df03b1 k8sutil: remove unused helper functions
Remove dead code from the k8sutil package; none of these symbols had any
callers anywhere in the repo (verified with deadcode, staticcheck U1000,
and repo-wide grep, tests included):

- patcher.go: delete file (Patcher type, NewPatcher, Patch)
- replicaset.go: delete file (DeleteReplicaSet)
- customresource.go: WatchCR (the CustomResource type remains in use)
- deployment.go: WaitForDeploymentImage
- job.go: WaitForJobCompletion
- k8sutil.go: GetK8SVersion
- pod.go: ConfigOverrideMount, ConfigOverrideVolume, GetPodLog
- prometheus.go: DeleteServiceMonitor
- service.go: DeleteService
- volume.go: NodeConfigURI, BinariesMountInfo, YamlToVolumes,
  YamlToVolumeMounts, and the BinariesMountPath const (only used by the
  removed BinariesMountInfo)

Now-unused imports are dropped from each file. The shared
deleteResourceAndWait helper remains (still used by DeleteDeployment).

Signed-off-by: Joshua Hoblitt <josh@hoblitt.com>
(cherry picked from commit b29e89ef67)
2026-06-12 16:10:49 +00:00
Joshua Hoblitt c6329d6e7c core: remove unused OSDPerfStats type
The OSDPerfStats struct had no references anywhere in the repo (verified
with repo-wide grep and an exported-symbol audit); the code that consumed
this unmarshal target was removed long ago.

Signed-off-by: Joshua Hoblitt <josh@hoblitt.com>
(cherry picked from commit ef9761d4df)
2026-06-12 16:04:39 +00:00
Joshua Hoblitt 787c06701a multus: remove unused validation test config constructor
NewSharedStorageAndWorkerNodesValidationTestConfig was a wrapper that
simply returned NewDefaultValidationTestConfig() and had no callers
anywhere in the repo (verified with deadcode and repo-wide grep, tests
included). The sibling constructors are all referenced by the multus
validation CLI and remain.

Signed-off-by: Joshua Hoblitt <josh@hoblitt.com>
(cherry picked from commit 2433565238)
2026-06-12 16:04:39 +00:00
Joshua Hoblitt 83f5ad9503 core: remove unused file helpers from pkg/util
WriteFile and PathToProjectRoot had no callers anywhere in the repo
(verified with deadcode, staticcheck U1000, and repo-wide grep, tests
included). WriteFile has long been superseded by direct os.WriteFile
usage. Drop the now-unused bytes, fmt, and runtime imports; the file's
remaining helpers (WriteFileToLog, CreateTempFile) are still in use.

Signed-off-by: Joshua Hoblitt <josh@hoblitt.com>
(cherry picked from commit 8df364df98)
2026-06-12 16:04:39 +00:00
Joshua Hoblitt ecd4c4b742 core: remove unused ceph client helper functions
Remove four dead functions from pkg/daemon/ceph/client; none had any
callers anywhere in the repo (verified with deadcode, staticcheck U1000,
and repo-wide grep, tests included):

- auth.go: AuthGetOrCreate
- command.go: ExecuteRBDCommandWithTimeout
- filesystem.go: MarkFilesystemAsDown
- status.go: IsClusterCleanError (IsClusterClean itself remains in use)

No imports become unused by these removals.

Signed-off-by: Joshua Hoblitt <josh@hoblitt.com>
(cherry picked from commit 278453e10c)
2026-06-12 16:04:38 +00:00
subham rai b33126f8ed Merge pull request #17735 from rook/mergify/bp/release-1.20/pr-17718
build: bump golang.org/x/crypto to v0.52.0 (backport #17718)
2026-06-12 13:33:21 +05:30
subhamkrai 01f86a8217 build: bump golang.org/x/crypto to v0.52.0
Upgrade golang.org/x/crypto from v0.51.0 to v0.52.0 to pick up
security fixes in the indirect dependency.

Signed-off-by: subhamkrai <srai@redhat.com>
(cherry picked from commit 6e2aaac0bd)
2026-06-12 07:22:29 +00:00
subham rai 3afc8f2adb Merge pull request #17721 from rook/mergify/bp/release-1.20/pr-17701
nvmeof: fetch gateway image from ceph config when not in CR (backport #17701)
2026-06-12 12:29:57 +05:30
subham rai 81a58a5618 Merge pull request #17720 from rook/mergify/bp/release-1.20/pr-17690
external: update the external cluster to make use of csi op (backport #17690)
2026-06-12 12:27:54 +05:30
Joshua Hoblitt 1de6fc5f22 Merge pull request #17725 from rook/mergify/bp/release-1.20/pr-17683
core: remove unused kernel module helpers (backport #17683)
2026-06-11 15:36:25 -07:00
mergify[bot] ba79643009 Merge pull request #17723 from rook/mergify/bp/release-1.20/pr-17682
k8sutil: remove unused daemonset helpers (backport #17682)
2026-06-11 21:59:25 +00:00
Joshua Hoblitt 3ca12585c2 core: remove unused kernel module helpers
kmod.go was entirely dead: IsBuiltinKernelModule, LoadKernelModule,
CheckKernelModuleParam, and the getKernelVersion helper had no callers
anywhere in the repo (verified with grep, deadcode, and staticcheck).
Remove the file.

Signed-off-by: Joshua Hoblitt <josh@hoblitt.com>
(cherry picked from commit 0b6d81d83a)
2026-06-11 21:42:11 +00:00
Joshua Hoblitt 9f867c9b34 k8sutil: remove unused daemonset helpers
daemonset.go was entirely dead: CreateDaemonSet, DeleteDaemonset,
AddRookVersionLabelToDaemonSet, and GetDaemonsets had no callers anywhere
in the repo (verified with grep, deadcode, and staticcheck). Rook does not
manage any DaemonSets via these helpers. Remove the file.

Signed-off-by: Joshua Hoblitt <josh@hoblitt.com>
(cherry picked from commit c8ad81a3cf)
2026-06-11 21:21:46 +00:00
Oded Viner 2a2dc44cb7 nvmeof: fetch gateway image from ceph config when not in CR
Make the NVMe-oF gateway image optional in the CR spec.
When not specified, the operator fetches the image from
the Ceph mon config store using the key
mgr/cephadm/container_image_nvmeof. Falls back to the
hardcoded default if the config is unavailable.

Signed-off-by: Oded Viner <oviner@redhat.com>
(cherry picked from commit 8b4fd67e17)
2026-06-11 18:03:36 +00:00
parth-gr ba65c926c6 external: update the external cluster to make use of csi op
updated the external cluster doc, and helm and manifest
install to make use of csi operator as it is the default
offering now

Signed-off-by: parth-gr <partharora1010@gmail.com>
(cherry picked from commit dbc8d2a541)
2026-06-11 15:40:26 +00:00
Joshua Hoblitt 241ba19fa4 Merge pull request #17705 from rook/mergify/bp/release-1.20/pr-17684
osd: remove unused updateQueue.Clear method (backport #17684)
2026-06-10 15:18:09 -07:00
Joshua Hoblitt 15dbb2aec7 osd: remove unused updateQueue.Clear method
The Clear method on updateQueue had no callers anywhere in the repo
(verified with grep, deadcode, and staticcheck). The queue is emptied via
Remove/Pop in practice. Remove the dead method.

Signed-off-by: Joshua Hoblitt <josh@hoblitt.com>
(cherry picked from commit 50c95d343e)
2026-06-10 21:20:24 +00:00
Joshua Hoblitt 9cc9f52f56 Merge pull request #17703 from rook/mergify/bp/release-1.20/pr-17700
core: delete stale MDS and RGW pdbs (backport #17700)
2026-06-10 14:03:25 -07:00
Joshua Hoblitt 57d21ff406 Merge pull request #17697 from rook/mergify/bp/release-1.20/pr-17671
test: remove unused container test helper (backport #17671)
2026-06-10 10:33:37 -07:00
Santosh d028a7a836 core: delete stale MDS and RGW pdbs
When RGW and MDS intances are reduce to 1, the older RGW and MDS PDB
instance (with maxUnavailabe=1) are still available. This blocks node
drain when the node, on which the single RGW and MDS instances are
running, is drained.

This PR deletes any stale MDS and RGW PDB when the only 1 MDS and 1 RGW
instances are available.

Signed-off-by: Santosh <sapillai@redhat.com>
(cherry picked from commit 3396198e9c)
2026-06-10 16:55:27 +00:00
Joshua Hoblitt 76b504085d Merge pull request #17698 from rook/mergify/bp/release-1.20/pr-17672
test: remove unused label verification helpers (backport #17672)
2026-06-09 15:03:09 -07:00
Joshua Hoblitt ea244dc3c8 test: remove unused label verification helpers
VerifyPodLabels had no callers anywhere in the repo, and it was the only
caller of VerifyAppLabels, which in turn was the only caller of the
checkLabel and combineErrors helpers. Remove the whole dead cluster (and
the now-unused strings, github.com/pkg/errors, and ceph/controller
imports). AssertLabelsContainCephRequirements in the same file remains and
is unaffected. Verified with grep, deadcode, and staticcheck.

Signed-off-by: Joshua Hoblitt <josh@hoblitt.com>
(cherry picked from commit ac75488621)
2026-06-09 18:28:31 +00:00
Joshua Hoblitt 71be697ace test: remove unused container test helper
container.go in the ceph operator test-helper package was entirely dead:
ContainerTestDefinition, its TestContainer method, and the logCommandWithArgs
helper had no references anywhere in the repo (no test or non-test callers,
verified with grep, deadcode, and staticcheck). The package doc comment is
also present on info.go, so removing this file leaves the package documented.

Signed-off-by: Joshua Hoblitt <josh@hoblitt.com>
(cherry picked from commit 9efb7f351f)
2026-06-09 18:27:28 +00:00
Joshua Hoblitt 2ce517a0f3 Merge pull request #17694 from rook/mergify/bp/release-1.20/pr-17669
mgr: remove unused IsModuleInSpec function (backport #17669)
2026-06-09 10:56:01 -07:00
Joshua Hoblitt 1114be7d33 Merge pull request #17693 from rook/mergify/bp/release-1.20/pr-17648
object: remove dead functions and ObjectBuckets sort type (backport #17648)
2026-06-09 09:47:48 -07:00
Joshua Hoblitt e097a275d1 Merge pull request #17692 from rook/mergify/bp/release-1.20/pr-17647
object: remove dead EjectPrincipals methods and duplicate AllowedActi… (backport #17647)
2026-06-09 09:39:16 -07:00
Joshua Hoblitt f8a15d7401 mgr: remove unused IsModuleInSpec function
IsModuleInSpec has no callers anywhere in the repository (verified with
deadcode and grep). Remove the dead code.

Signed-off-by: Joshua Hoblitt <josh@hoblitt.com>
(cherry picked from commit f8c0d36a50)
2026-06-09 15:58:23 +00:00
Joshua Hoblitt ad4d9927e8 object: remove dead functions and ObjectBuckets sort type
Remove the following unreferenced symbols:
- (*S3Agent).CreateBucketNoInfoLogging
- (*S3Agent).DeleteBucket (wrapper; callers use the SDK client directly)
- GetBucketsStats
- ObjectBuckets type and its Len/Less/Swap sort.Interface methods

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Signed-off-by: Joshua Hoblitt <josh@hoblitt.com>
(cherry picked from commit ae481f0f43)
2026-06-09 15:58:16 +00:00
Joshua Hoblitt 70614ae5ff object: remove dead EjectPrincipals methods and duplicate AllowedActions entry
Remove (*BucketPolicy).EjectPrincipals and (*PolicyStatement).EjectPrincipals,
which had no callers outside policy.go. Also drop the duplicate PutBucketVersioning
entry in AllowedActions.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Signed-off-by: Joshua Hoblitt <josh@hoblitt.com>
(cherry picked from commit df30bf66e8)
2026-06-09 15:58:03 +00:00
Travis Nielsen 399772b62a Merge pull request #17687 from rook/mergify/bp/release-1.20/pr-17681
docs: Helm instructions to install drivers in another namespace (backport #17681)
2026-06-09 09:45:55 -06:00
subham rai 6cff2363b4 Merge pull request #17691 from rook/mergify/bp/release-1.20/pr-17674
docs: update csi-driver value.yaml reference link (backport #17674)
2026-06-09 21:04:56 +05:30
subhamkrai 1ec7ae19a8 docs: update csi-driver value.yaml reference link
this commit update the link which refere the csi-driver
chart value.yaml to update it dynamically when release
is done from master to release or release to release tag.

Signed-off-by: subhamkrai <srai@redhat.com>
(cherry picked from commit c3e06c4cef)
2026-06-09 13:25:41 +00:00
Travis Nielsen f2e67a2b3c docs: helm instructions to install drivers in another namespace
The helm values need to be updated if installing the drivers
chart in a namespace other than rook-ceph.

Signed-off-by: Travis Nielsen <tnielsen@redhat.com>
(cherry picked from commit c5c6ef385d)
2026-06-09 04:35:46 +00:00
mergify[bot] a6ea33e850 Merge pull request #17685 from rook/mergify/bp/release-1.20/pr-17649
osd: Support using node labels for OSD device class assignment (backport #17649)
2026-06-09 03:54:03 +00:00
Yuxiang He ea2d2b4c50 osd: support using node labels for OSD device class assignment
Add support for the osd.rook.io/device-class node label to assign
CRUSH device classes to all OSDs on a node.
The operator reads the label during OSD provisioning and
deployment reconciliation. If CR-level deviceClass conflicts
with the node label, the operator will skip reconciling the
node and logs an error.

Resolves: #17131
Signed-off-by: Yuxiang He <yuxiang@dropbox.com>
(cherry picked from commit d9357dbfdc)
2026-06-08 22:07:21 +00:00
Travis Nielsen 2639dcebc5 Merge pull request #17668 from rook/mergify/bp/release-1.20/pr-17665
docs: add rook compatible ceph csi driver values (backport #17665)
2026-06-05 15:37:48 -06:00
subhamkrai 07a1a68b1f docs: add rook compatible ceph csi driver values
adding rook compatible Ceph-Csi driver values.yaml
file making sure, upgrading to 1.20 doesn't break
when csi-driver is moved to admin.

Co-authored-by: Travis Nielsen <tnielsen@redhat.com>
Signed-off-by: subhamkrai <srai@redhat.com>
(cherry picked from commit 774054c45e)
2026-06-05 21:25:59 +00:00
mergify[bot] 31b90cf9c3 Merge pull request #17667 from rook/mergify/bp/release-1.20/pr-17664
csi: csi-addons should be disabled by default (backport #17664)
2026-06-05 21:23:03 +00:00
subhamkrai 426225a60a csi: csi-addons should be disabled by default
having csi-addons enabled by default is causing random
pod restart on non-openshift cluster. Let's disable
it by default.

Signed-off-by: subhamkrai <srai@redhat.com>
(cherry picked from commit 34b0a87c9e)
2026-06-05 20:54:38 +00:00
subham rai a6d5e0a64f Merge pull request #17660 from rook/mergify/bp/release-1.20/pr-17659
ci: Canary tests should only start one csi controller (backport #17659)
2026-06-05 11:50:15 +05:30
Travis Nielsen 330e17bb13 ci: canary tests only start one csi controller
Two csi controllers cannot start on minikube, so the CI
was failing in the canary and nvmeof tests when they validated
that the controllers were running. For the tests that validate
the csi controllers, ensure only a single controller is configured.

Signed-off-by: Travis Nielsen <tnielsen@redhat.com>
(cherry picked from commit 1a37f6088c)
2026-06-04 17:39:11 +00:00
Travis Nielsen 30a4f7be8e Merge pull request #17657 from rook/mergify/bp/release-1.20/pr-17546
osd: fix race condition in require-osd-release after rolling upgrade (backport #17546)
2026-06-04 10:04:52 -06:00
Sunnatillo 580663e917 osd: set require-osd-release from the health monitor
applyUpgradeOSDFunctionality() may run before all OSDs have registered
their new version, leaving require-osd-release unset and the cluster in
HEALTH_WARN.

Check for a single converged OSD version on each health-monitor tick and
set require-osd-release when it changes. The release name is cached to
avoid redundant ceph commands

Signed-off-by: Sunnatillo <sunnat.samadov@est.tech>
(cherry picked from commit f6fa25e844)
2026-06-04 15:31:21 +00:00
Joshua Hoblitt fd214caa3a Merge pull request #17645 from rook/mergify/bp/release-1.20/pr-17643
object: clobber bucket policy on modify instead of merging (backport #17643)
2026-06-03 09:34:16 -07:00
Artem Muterko 3ce302a218 object: clobber bucket policy on modify instead of merging
ModifyBucketPolicy merged the caller's statement into the policy fetched
from the bucket, matching by SID. Besides a missing match flag that
appended a duplicate when a SID matched, this preserved any pre-existing
statements on the bucket and reapplied them on every reconcile.

Overwrite the policy with the provided statements instead, so a managed
bucket always ends up with exactly the intended policy and cannot retain
unexpected statements.

Signed-off-by: Artem Muterko <artem@sopho.tech>
(cherry picked from commit 321911b96c)
2026-06-03 15:47:55 +00:00