Commit Graph
13605 Commits
Author SHA1 Message Date
Travis Nielsen a4316348cc Merge pull request #17464 from jhoblitt/feature/cmd-reporter-default-resource-limits
core: add default ResourceRequirements for cmd-reporter
2026-04-30 11:34:14 -06:00
Travis Nielsen 747f521cab Merge pull request #17458 from obnoxxx/build-vet-lint-vet
Build: align the vet target with the new naming taxonomy
2026-04-30 11:32:27 -06:00
Joshua Hoblitt 64cf1df920 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>
2026-04-30 08:52:54 -07:00
Michael Adam 5ca0959a75 build: align the vet target with the new naming taxonomy
Recently, in PR #17445, a new naming taxonomy was introduced for the naming
of make targets, specifically linting targets.

This change aligns the `vet` target with that taxonomy by renaming it to
`lint.vet`.

Signed-off-by: Michael Adam <obnox@samba.org>
2026-04-30 13:51:01 +02:00
Santosh Pillai f9c9a9b1b6 Merge pull request #17453 from sp98/fix-osd-encrypted-label-values
osd: detect encryption label from dmcrypt path
2026-04-30 13:37:51 +05:30
Travis Nielsen b521fbdc23 Merge pull request #17176 from subhamkrai/move-csi-to-admin
csi: move csi management to admin
2026-04-29 15:00:47 -06:00
subhamkrai 4eefad42e8 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>
2026-04-29 14:24:26 -06:00
subhamkrai b50f1a3d60 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>
2026-04-29 14:01:42 -06:00
Travis Nielsen 07fce20daf Merge pull request #17451 from rohan47/exporterDnsPolicy
exporter: set correct DNSPolicy for rook-ceph-exporter
2026-04-29 12:11:23 -06:00
Travis Nielsen 33210d3d54 Merge pull request #17455 from travisn/upgrade-from-1.19
ci: Upgrade tests from v1.19 to master
2026-04-29 10:42:54 -06:00
Santosh Pillai 60fe0ff1df Merge pull request #17444 from OdedViner/aws_sdk_upgrade_provisioner
object: migrate bucket provisioner to aws sdk v2
2026-04-29 21:50:42 +05:30
Travis Nielsen 9e7a19ad24 Merge pull request #17445 from obnoxxx/build-linting-target-taxonomy
Build: introduce  a linting target naming taxonomy
2026-04-29 10:14:17 -06:00
Michael AdamandCopilot Autofix powered by AI 74c41f16cc build: introduce a linting target name taxonomy
The linting targets used to mostly have ad-hoc names usually reflecting
the linting tool used (like shellcheck, yamllint, and checkmake).

This change systematizes the names of the linting targets to follow a
pattern of lint.foo where foo usually reflects *what* is linted rather
than *how*.

so, more idiomatically, the pattern can be described as "action.thing"
to indicacte that "action" is to be performed on a "thing".

This systematization is achieved by renaming a couple of targets:

- shellcheck -> lint.shell
- yamllint -> lint.yaml
- checkmake -> lint.make
0 helm.lint -> lint.helm
- pylint -> lint.python
fmt  -> lint.fmt

Additionally, a new target go.lint is introduced that runs
several go linting tools.

Finally, two fixing targets are renamed for consistency:

* fmt-fix -> fix.fmt
* markdownlint.fix -> fix/markdown

Signed-off-by: Michael Adam <obnox@samba.org>
Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com>
2026-04-29 17:27:18 +02:00
Travis Nielsen 1f205c4be4 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>
2026-04-29 09:19:40 -06:00
Santosh fc9e3b54f3 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>
2026-04-29 19:18:05 +05:30
Oded Viner 5ba3e1a2c0 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>
2026-04-29 16:34:22 +03:00
Rohan Gupta 17873d3af2 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>
2026-04-29 15:07:21 +05:30
Travis Nielsen eaddeb514b Merge pull request #17442 from travisn/tentacle-default-docs
core: Update all docs and examples default to v20.2.1
2026-04-28 16:24:32 -06:00
Travis Nielsen 62a9debceb 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>
2026-04-28 14:09:17 -06:00
Santosh Pillai 05f1b00b81 Merge pull request #17395 from sp98/rgw-account-quota
doc: rgw account quotas
2026-04-28 22:02:44 +05:30
Joshua Hoblitt 03789475f9 Merge pull request #17414 from OdedViner/policy_aws_sdk_v2
object: migrate bucket policy methods to aws sdk v2
2026-04-28 07:45:36 -04:00
Travis Nielsen dfed786816 Merge pull request #17440 from obnoxxx/build-fix-helm-lint-self-contained
build: make make helm.lint truly self-contained
2026-04-27 11:45:51 -06:00
subham rai 17f326f3be Merge pull request #17434 from rook/dependabot/go_modules/github-dependencies-456e44f28d
build(deps): bump the github-dependencies group with 2 updates
2026-04-27 23:01:35 +05:30
Michael Adam 953fae17c9 build: make make helm.lint truly self-contained
PR #17306 intended to make the helm.lint target self-contained
so that it would not require tools to be installed in the system.
But it missed the fact that ct requires helm to be available
in the path. So make helm.lint would still fail when helm was not
installed.

This change fixes this by creating a symlink to the cached versioned
helm tool and rewriting PATH for the ct invocation.

This renders the helm.lint target truly self-contained.

Signed-off-by: Michael Adam <obnox@samba.org>
2026-04-27 18:42:40 +02:00
Travis Nielsen d256138023 Merge pull request #17432 from OdedViner/nvmeof_scc_upstream
security: grant scc to rook-ceph-nvmeof service account
2026-04-27 09:49:47 -06:00
Santosh Pillai 8cf245059c Merge pull request #17342 from OdedViner/aws_v2_upgrade_obj
object: migrate s3agent object methods to aws sdk v2
2026-04-27 21:18:32 +05:30
dependabot[bot] 7af79920dd build(deps): bump the github-dependencies group with 2 updates
Bumps the github-dependencies group with 2 updates: [github.com/aws/aws-sdk-go-v2/service/s3](https://github.com/aws/aws-sdk-go-v2) and [github.com/aws/smithy-go](https://github.com/aws/smithy-go).


Updates `github.com/aws/aws-sdk-go-v2/service/s3` from 1.99.1 to 1.100.0
- [Release notes](https://github.com/aws/aws-sdk-go-v2/releases)
- [Commits](https://github.com/aws/aws-sdk-go-v2/compare/service/s3/v1.99.1...service/s3/v1.100.0)

Updates `github.com/aws/smithy-go` from 1.25.0 to 1.25.1
- [Release notes](https://github.com/aws/smithy-go/releases)
- [Changelog](https://github.com/aws/smithy-go/blob/main/CHANGELOG.md)
- [Commits](https://github.com/aws/smithy-go/compare/v1.25.0...v1.25.1)

---
updated-dependencies:
- dependency-name: github.com/aws/aws-sdk-go-v2/service/s3
  dependency-version: 1.100.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: github-dependencies
- dependency-name: github.com/aws/smithy-go
  dependency-version: 1.25.1
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: github-dependencies
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-04-27 15:25:33 +00:00
Oded Viner 7f3e2ace27 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>
2026-04-27 16:28:15 +03:00
Travis Nielsen e6560ad18c Merge pull request #17282 from officialasishkumar/pool-crush-rule-cleanup
pool: clean up unused crush rules
2026-04-24 16:31:59 -06:00
Travis Nielsen afc7f5913d Merge pull request #17312 from obnoxxx/build-yamllint-self-contained
build: make the yamllint target  self-contained
2026-04-24 13:28:16 -06:00
Michael Adam 12cf909acd docs: clean linting part of contributing guide of yamllint
The development flow guide mentioned several tools that needed to be
installed in the PATH to run make lint.

This change removes yamllint from that list now that makeyamllint has
been made self-contained.

With pylint the only remaining requirement, this also rewords the
corresponding section for clarity.

Signed-off-by: Michael Adam <obnox@samba.org>
2026-04-24 21:04:49 +02:00
Michael AdamandBlaine Gardner f5d7004d22 build: make the yamllint target self-contained
The yamllint make target required yamllint to be installed
in the PATH.

This change renders it self-contained
by using a container image instead.

Signed-off-by: Michael Adam <obnox@samba.org>
Co-authored-by: Blaine Gardner <b.blaine.gardner@gmail.com>
2026-04-24 21:04:49 +02:00
Asish Kumar 24a35e4e74 pool: clean up unused crush rules
Clean up stale CRUSH rules after the Ceph mgr starts so rules left behind by pool failure-domain or device-class changes do not accumulate indefinitely.

The cleanup is guarded by a package-level RWMutex. Pool create and update paths hold the read lock while creating and assigning CRUSH rules, while cluster-wide cleanup holds the write lock before listing pools and deleting unused rules. This keeps pool reconciles parallel with each other while preventing cleanup from deleting a rule that another reconcile has just created but not yet attached to a pool.

Keep direct pool-delete cleanup for the pool's current CRUSH rule, make the cluster-wide cleanup best-effort across all unused rules, and add an operator-level ROOK_DELETE_UNUSED_CRUSH_RULES setting for clusters that need to leave unused custom rules in place.

Document the operator and Helm settings, regenerate the Helm chart docs, and add a pending release note for the default cleanup behavior.

Signed-off-by: Asish Kumar <officialasishkumar@gmail.com>
2026-04-24 23:57:40 +05:30
Travis Nielsen b23981a035 Merge pull request #17365 from BlaineEXE/ai-contrib-guidelines
doc: add AI guidelines
2026-04-24 11:52:54 -06:00
Blaine Gardner ebf4656481 doc: add AI guidelines
Add AI guidelines based on discussions from the most recent community
meeting.

Signed-off-by: Blaine Gardner <blaine.gardner@ibm.com>
2026-04-24 11:49:22 -06:00
Travis Nielsen d06edb76d0 Merge pull request #17426 from obnoxxx/build-fix-checkmake-generate-docs-crds-phony
build: declare generate-docs-crds PHONY to fix local checkmake
2026-04-24 11:49:21 -06:00
Michael Adam c6ab030cd4 build: declare generate-docs-crds PHONY to fix local checkmake
Locally, checkmake complained that the target generate-docs-crds
should be declared PHONY.

And it should in fact be PHONY as it is a target without recipe
depending on another PHONY target.

This change fixes the local xheckmake run by declaring
generate-docs-crds PHONY as desired.

Signed-off-by: Michael Adam <obnox@samba.org>
2026-04-24 18:30:20 +02:00
Travis Nielsen 4ffe8ac9ec Merge pull request #17422 from obnoxxx/docs-clean-linting-contrib-guide
docs: clean linting part of the contributing guide
2026-04-24 09:07:19 -06:00
Travis Nielsen 0e6e89dc27 Merge pull request #17381 from gaganhr94/fix/token-permissions
fix: adding required permissions to top level and jobs in the workflow
2026-04-24 08:02:09 -06:00
Santosh Pillai 8d34eea8a9 Merge pull request #17420 from sp98/remove-new-line
core:remove newlines from liveness probe scripts
2026-04-24 19:14:08 +05:30
Michael Adam b0a9a1f149 docs: clean linting part of the contributing guide
The section about nake lint in the contributing guide
mentions several tools that need to be installed locally to run
the linters.

with PR #17311 which has made the shellcheck target self-contained,
the requirement is now gone for shellcheck.

This change simlifies the guide by removing the mention of shellcheck
as required to be installed.

Signed-off-by: Michael Adam <obnox@samba.org>
2026-04-24 14:55:54 +02:00
Santosh 925acb3e92 core: remove newlines from liveness probe scripts
Strip unnecessary leading and trailing newlines from osdLivenessProbeScript and livenessProbeScript raw string literals in spec.go

Signed-off-by: Santosh <sapillai@redhat.com>
2026-04-24 14:24:51 +05:30
Santosh Pillai b87c434ff9 Merge pull request #17411 from taraasrita10/fix-osdkms-log-error
osd: fix KMS log error format specifier
2026-04-24 14:09:17 +05:30
Travis Nielsen 0fc8852cc1 Merge pull request #17417 from BlaineEXE/upgrade-guides-for-1.20
docs: update upgrade docs for v1.20
2026-04-23 15:53:22 -06:00
Blaine Gardner cb60ec5ae2 docs: update upgrade docs for v1.20
Update upgrade docs to reflect v1.20 changes.

Signed-off-by: Blaine Gardner <blaine.gardner@ibm.com>
2026-04-23 14:35:32 -06:00
Travis Nielsen 0160ba5bd0 Merge pull request #17288 from lumir-sliva/relax-stretch-crush-weight-check
mon: relax balanced CRUSH weight check for stretch mode
2026-04-23 12:05:12 -06:00
Oded Viner 88e0047d9b 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>
2026-04-23 18:54:48 +03:00
Travis Nielsen 40f24638bc Merge pull request #17311 from obnoxxx/build-shellcheck-self-contained
build:  make the shellcheck target  self-contained
2026-04-23 08:45:36 -06:00
Oded Viner 2cb714dabd 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>
2026-04-23 17:40:15 +03:00
Prabhala Tara Aasrita 85ee8631cf osd: fix KMS log error format specifier
During OSD provisioning, the KMS error log incorrectly uses logger.Error() instead of logger.Errorf(), causing the format specifier %q to appear in the logs. Changed logger.Error to logger.Errorf to fix the same.

Signed-off-by: Prabhala Tara Aasrita <taraasrita@ibm.com>
2026-04-23 16:19:33 +05:30