Commit Graph
13292 Commits
Author SHA1 Message Date
Joshua Hoblitt 1a1478a342 core: fix ObjectZoneGroupSpec.Realm field description
Resolves this incorrect field description:

     ~ $ k explain cephobjectzonegroup.spec.realm
    GROUP:      ceph.rook.io
    KIND:       CephObjectZoneGroup
    VERSION:    v1

    FIELD: realm <string>

    DESCRIPTION:
        The display name for the ceph users

Signed-off-by: Joshua Hoblitt <josh@hoblitt.com>
2025-09-16 09:08:50 -07:00
Michael AdamandTravis Nielsen 40427d5c0d ci: update latest k8s version to 1.34
this change updates the k8s version to 1.34 and also updates
the  cri-ctl version for minikube.

Signed-off-by: Michael Adam <obnox@samba.org>
Co-authored-by: Travis Nielsen <tnielsen@redhat.com>
2025-09-16 17:57:28 +02:00
Travis Nielsen 3b1a6f3cf6 Merge pull request #16493 from sp98/fix-cluster-context
core: use latest operator context in the preClusterStartValidation function
2025-09-16 09:52:12 -06:00
Erik Sundell 8efac50952 helm: fix refactoring typo
Fixes a typo forgetting to replace `if` with `with`.

Signed-off-by: Erik Sundell <erik@sundellopensource.se>
2025-09-16 10:52:15 +02:00
Erik Sundell 039f158950 helm: refactoring to modernize templates
This touches a lot where a typo could cause issues for someone, so I have self-
reviewed it many times line-by-line already.

There are a few types of changes:
- All resources get tied to their own YAML document separator (`---`)
  before their definition, reducing the risk of not separating resources
  correctly when rendering multiple into a file. I think the changes
  will fix edge case bugs for people with mutiple items listed in
  `cephFileSystems` and similar configuration.
- `toYaml ...` is made into `... | toYaml` consistently.
- `default A B` is made into `B | default A` consistently.
- Consistent whitespace chomping, so instead of `{{ end }}` you would
  find `{{- end }}` typically. The system is that you should chomp left
  almost all the time, and almost all the time _not_ chomp right. You
  would chomp right in the beginning of a file or helper function in
  order to clear some initial whitespace, otherwise not.
- Multiline helm template comments `{{- /* ... */ }}` get their content
  indented 2 spaces.
- List items are consistently rendered with two spaces of indentation.
- `kind` is put before `apiVersion` consistently, to follow a practice
  observed partially in the repo.
- Calls to the helm `template` function have been replaced with
  `include` to be consistent and to stick with modern practices.
- Use of `indent` have been replaced with `nindent #` and a left
  whitespace chomp for a consistent easy to follow practice that gets
  good result.
- Several `if` statements like `if X -> render X` have been replaced
  with `with X -> render .` to avoid repetition. The `with` statement
  won't render if the provided context, making it function also like an
  `if` statement.
- Fixed a bug with `if .Values.revisionHistoryLimit`, which should
  really be `if not (typeIs "<nil>" .Values.revisionHistoryLimit)` to
  handle situations when its set to `0`.

Signed-off-by: Erik Sundell <erik@sundellopensource.se>
2025-09-16 09:55:10 +02:00
Santosh Pillai 1ff7604f82 core: use updated context in prevalidaiton checks
If the CephCluster spec is updated before the prevalidation check, then
Cluster.context still refers to the cancelled context of the operator.
This PR just updates the cluster context to use the latest operator
context.

Signed-off-by: Santosh Pillai <sapillai@redhat.com>
2025-09-16 12:57:12 +05:30
Travis Nielsen a05a49424a Merge pull request #16486 from rook/dependabot/go_modules/github-dependencies-6db496ef8f
build(deps): bump the github-dependencies group with 5 updates
2025-09-15 13:48:27 -06:00
Travis Nielsen 877ea01c6b Merge pull request #16478 from travisn/crush-update-pointer
pool: Allow enableCrushUpdates to be nil
2025-09-15 12:34:11 -06:00
Travis Nielsen 1ed0057756 Merge pull request #16468 from parth-gr/fix-external-ipv6
external: fix ipv6 monitoring endpoint reconcile
2025-09-15 10:46:19 -06:00
dependabot[bot] 4dd7075ef3 build(deps): bump the github-dependencies group with 5 updates
Bumps the github-dependencies group with 5 updates:

| Package | From | To |
| --- | --- | --- |
| [github.com/aws/aws-sdk-go-v2/config](https://github.com/aws/aws-sdk-go-v2) | `1.31.6` | `1.31.8` |
| [github.com/aws/aws-sdk-go-v2/credentials](https://github.com/aws/aws-sdk-go-v2) | `1.18.10` | `1.18.12` |
| [github.com/aws/aws-sdk-go-v2/service/sns](https://github.com/aws/aws-sdk-go-v2) | `1.38.1` | `1.38.3` |
| [github.com/hashicorp/vault/api](https://github.com/hashicorp/vault) | `1.20.0` | `1.21.0` |
| [github.com/spf13/pflag](https://github.com/spf13/pflag) | `1.0.9` | `1.0.10` |

Updates `github.com/aws/aws-sdk-go-v2/config` from 1.31.6 to 1.31.8
- [Release notes](https://github.com/aws/aws-sdk-go-v2/releases)
- [Changelog](https://github.com/aws/aws-sdk-go-v2/blob/main/changelog-template.json)
- [Commits](https://github.com/aws/aws-sdk-go-v2/compare/config/v1.31.6...config/v1.31.8)

Updates `github.com/aws/aws-sdk-go-v2/credentials` from 1.18.10 to 1.18.12
- [Release notes](https://github.com/aws/aws-sdk-go-v2/releases)
- [Changelog](https://github.com/aws/aws-sdk-go-v2/blob/main/changelog-template.json)
- [Commits](https://github.com/aws/aws-sdk-go-v2/compare/config/v1.18.10...config/v1.18.12)

Updates `github.com/aws/aws-sdk-go-v2/service/sns` from 1.38.1 to 1.38.3
- [Release notes](https://github.com/aws/aws-sdk-go-v2/releases)
- [Changelog](https://github.com/aws/aws-sdk-go-v2/blob/main/changelog-template.json)
- [Commits](https://github.com/aws/aws-sdk-go-v2/compare/v1.38.1...v1.38.3)

Updates `github.com/hashicorp/vault/api` from 1.20.0 to 1.21.0
- [Release notes](https://github.com/hashicorp/vault/releases)
- [Changelog](https://github.com/hashicorp/vault/blob/main/CHANGELOG.md)
- [Commits](https://github.com/hashicorp/vault/compare/v1.20.0...api/v1.21.0)

Updates `github.com/spf13/pflag` from 1.0.9 to 1.0.10
- [Release notes](https://github.com/spf13/pflag/releases)
- [Commits](https://github.com/spf13/pflag/compare/v1.0.9...v1.0.10)

---
updated-dependencies:
- dependency-name: github.com/aws/aws-sdk-go-v2/config
  dependency-version: 1.31.8
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: github-dependencies
- dependency-name: github.com/aws/aws-sdk-go-v2/credentials
  dependency-version: 1.18.12
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: github-dependencies
- dependency-name: github.com/aws/aws-sdk-go-v2/service/sns
  dependency-version: 1.38.3
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: github-dependencies
- dependency-name: github.com/hashicorp/vault/api
  dependency-version: 1.21.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: github-dependencies
- dependency-name: github.com/spf13/pflag
  dependency-version: 1.0.10
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: github-dependencies
...

Signed-off-by: dependabot[bot] <support@github.com>
Signed-off-by: subhamkrai <srai@redhat.com>
2025-09-15 21:19:36 +05:30
subham rai 2990137e2f Merge pull request #16485 from rook/dependabot/github_actions/github/codeql-action-3.30.3
build(deps): bump github/codeql-action from 3.30.1 to 3.30.3
2025-09-15 21:02:02 +05:30
Travis Nielsen 59add8b5de Merge pull request #16484 from sp98/fix-shouldFailoverMonImmediately
mon: fix mon health nil pointer exception with mons on PVC
2025-09-15 07:59:00 -06:00
Santosh Pillai d399615bdc mon: fix mon health nil pointer exception
shouldFailoverMonImmediately has a nil pointer exception with mons on
PVC. Rook-ceph-mon-endpoint does not store node information of the mons
on PVC. So `mapping.Hostname` throws nill pointer

Signed-off-by: Santosh Pillai <sapillai@redhat.com>
2025-09-15 18:13:46 +05:30
dependabot[bot] 25d72a6dc4 build(deps): bump github/codeql-action from 3.30.1 to 3.30.3
Bumps [github/codeql-action](https://github.com/github/codeql-action) from 3.30.1 to 3.30.3.
- [Release notes](https://github.com/github/codeql-action/releases)
- [Changelog](https://github.com/github/codeql-action/blob/main/CHANGELOG.md)
- [Commits](https://github.com/github/codeql-action/compare/f1f6e5f6af878fb37288ce1c627459e94dbf7d01...192325c86100d080feab897ff886c34abd4c83a3)

---
updated-dependencies:
- dependency-name: github/codeql-action
  dependency-version: 3.30.3
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-09-15 12:36:54 +00:00
parth-gr e1873cb2e7 external: fix ipv6 monitoring endpoint reconcile
currently the extraction ipv6 was not correct
used the net package to extract the host ip from
the ipadress

Signed-off-by: parth-gr <partharora1010@gmail.com>
2025-09-12 12:50:05 +05:30
Travis Nielsen df49ca1247 pool: allow enablecrushupdates to be nil
Enabling crush updates is false by default, and can be enabled
if set to true. The setting needs to be nullable in case
we need to differentiate between the value being set
to false or just not set, to know if the default should be
different. This is necessary for rook consumers who are
refererencing the pool struct and want to change the default,
rather than using rook's default value of false.

Signed-off-by: Travis Nielsen <tnielsen@redhat.com>
2025-09-11 16:40:37 -06:00
Blaine Gardner 1c3ebbd01a Merge pull request #16456 from subhamkrai/rotate-nfs-keys
nfs: rotate nfs cephx key
2025-09-11 10:43:22 -06:00
Travis Nielsen f3d605283e Merge pull request #16474 from rubentsirunyan/master
external: fixing rbd provisioner secret in import-external-cluster script
2025-09-11 09:15:49 -06:00
Ruben Tsirunyan 4ab4cdc0de external: fixing a typo in import-external-cluster script
The value of userKey in CSI RBD provisioner secret was set to $CSI_RBD_PROVISIONER_SECRET_NAME because of a typo.
Fixed it by setting it to $CSI_RBD_PROVISIONER_SECRET.

Signed-off-by: Ruben Tsirunyan <rubentsirunyan@gmail.com>
2025-09-11 15:17:31 +04:00
subhamkrai 5e21d43365 nfs: rotate nfs cephx key
Signed-off-by: subhamkrai <srai@redhat.com>
2025-09-11 16:10:46 +05:30
Santosh Pillai 5c91f87fd2 Merge pull request #16112 from elias-dbx/pdb_safer_down
osd: exclude down OSDs from main PDB when cluster is clean
2025-09-11 10:09:57 +05:30
Travis Nielsen 8d7ed85d1f Merge pull request #16457 from consideRatio/pr/wip-refactor
helm: refactoring of rook-ceph's configmap to be easier to read and maintain
2025-09-10 15:12:20 -06:00
Travis Nielsen df79791dc3 Merge pull request #16462 from travisn/csi-controller-host-network
csi: Set host networking on the csi controller pod if host networking is enforced
2025-09-10 13:41:34 -06:00
Elias Carter 60a15306e9 osd: exclude down OSDs from main PDB when cluster is clean
Currently, when there are down OSDs but all PGs are clean we add the
number of downed OSDs ot the main PDB maxUnavailable. For example if
OSDs 1,3,5 are down and all PGs are clean we create the following PDB:
```yaml
  maxUnavailable: 4
  selector:
    matchLabels:
      app: rook-ceph-osd
```

This is potentially dangerous as there can be race conditions which can
break the cluster, for example:
1. A new node is added to the cluster with 4 OSDs
2. Those OSDs are down as they have not started up and joined the cluster yet
3. All PGs are healthy as the new OSDs haven't started yet and they are new
4. The rook operator sets maxUnavailable to 5 on the OSD PDB
5. The new OSDs move from down to up as they start
6. Something in the cluster starts a disruption (eviction request)
7. Any 5 OSDs can be disrupted as maxUnavilable is still 5 and the downed OSDs are now up
8. If the 5 disrupted OSDs contain all the replicas of a PG it will cause the PG to go down

To better protect from this scenario, we can instead exclude the downed
OSDs from the main PDB instead of adding to maxUnavailable.
```yaml
  maxUnavailable: 1
  selector:
    matchExpressions:
    - key: app
      operator: In
      values: ["rook-ceph-osd"]
    - key: osd
      operator: NotIn
      values: ["1", "3", "5"]
```

This allows drains to still process when there are downed OSDs and PGs
are clean without allowing the non-downed OSDs to be disrupted.

Signed-off-by: Elias Carter <elias@dropbox.com>
2025-09-10 12:05:55 -07:00
Travis Nielsen e294c280ed csi: allow csi controller pod to set host networking
The ceph csi controller plugin did not have the capability to
set host networking, in case the host networking is being enforced
with ROOK_ENFORCE_HOST_NETWORK: true.

Signed-off-by: Travis Nielsen <tnielsen@redhat.com>
2025-09-10 11:47:54 -06:00
Travis Nielsen 3e3dd28cd5 Merge pull request #16454 from parth-gr/revert-helm
helm: revert helm lookup and hook fixes
2025-09-10 10:29:01 -06:00
Blaine Gardner 1e31e87529 Merge pull request #16452 from BlaineEXE/csi-fix-keeppriorkeycountmax-logic
csi: fix prior cephx key deletion logic
2025-09-10 10:02:27 -06:00
Blaine Gardner 3d8f3bd71b Merge pull request #16448 from subhamkrai/add-multus-annotation-csi-operator
csi: add multus network annotation to csi-operator
2025-09-10 09:56:36 -06:00
parth-gr 473b69eff3 doc: update the upgrade doc with the helm breaking change
Signed-off-by: parth-gr <partharora1010@gmail.com>
2025-09-10 21:15:32 +05:30
parth-gr 91b36cfc35 helm: do not upgrade sc with helm upgrade
This reverts commit d9aee27b00.

Signed-off-by: parth-gr <partharora1010@gmail.com>
2025-09-10 19:57:40 +05:30
parth-gr d7ac48fab6 helm: recreate sc with helm upgrades
This reverts commit c8003bfef7.

Signed-off-by: parth-gr <partharora1010@gmail.com>
2025-09-10 19:57:40 +05:30
Erik Sundell 3c964608bf helm: consistently quote configmap values (must be strings)
ConfigMap's data are key value pairs where the values must be strings,
so by using the quote function we guarantee that even though the
rendered content would be something like 1.1.

Signed-off-by: Erik Sundell <erik@sundellopensource.se>
2025-09-10 14:55:52 +02:00
Erik Sundell 6e09888951 helm: additional refactor to reduce repetition, use with instead of if
A `with` block won't render if the argument is falsy, so it behaves like
an `if` block that redefines the `.` context. Using `with` instead of
`if` can help reduce repetition, making things more readable in the
process.

Signed-off-by: Erik Sundell <erik@sundellopensource.se>
2025-09-10 14:55:44 +02:00
Erik Sundell 158ee71f7f helm: fix edge case detail
The content wasn't within the `if .Values.csi` block but should be,
however if `.Values.csi` would be falsy, other things in the chart would
break so this shouldn't have affected anyone.

Signed-off-by: Erik Sundell <erik@sundellopensource.se>
2025-09-10 14:55:25 +02:00
Erik Sundell 8f60b33f31 helm: refactor to reduce repetition, use with instead of if
A `with` block won't render if the argument is falsy, so it behaves like
an `if` block that redefines the `.` context. Using `with` instead of
`if` can help reduce repetition, making things more readable in the
process.

Signed-off-by: Erik Sundell <erik@sundellopensource.se>
2025-09-10 14:55:17 +02:00
Erik Sundell 71463151f3 helm: refactor indentation, conditional at content level
Instead of having an if block at zero indentation, put it at the level
where its content will be emitted. This is a more modern helm template
practice.

Signed-off-by: Erik Sundell <erik@sundellopensource.se>
2025-09-10 14:16:38 +02:00
subham rai 281aedcdb6 Merge pull request #16439 from rook/dependabot/go_modules/github-dependencies-6834373c47
build(deps): bump the github-dependencies group with 7 updates
2025-09-10 15:35:34 +05:30
subham rai 90804fd61a Merge pull request #16449 from parth-gr/fix-vault
ci: fix the ci canary vault tests
2025-09-10 14:32:17 +05:30
dependabot[bot] 5de36b4f9f build(deps): bump the github-dependencies group with 7 updates
Bumps the github-dependencies group with 7 updates:

| Package | From | To |
| --- | --- | --- |
| [github.com/aws/aws-sdk-go-v2/config](https://github.com/aws/aws-sdk-go-v2) | `1.31.2` | `1.31.6` |
| [github.com/aws/aws-sdk-go-v2/credentials](https://github.com/aws/aws-sdk-go-v2) | `1.18.6` | `1.18.10` |
| [github.com/aws/aws-sdk-go-v2/service/sns](https://github.com/aws/aws-sdk-go-v2) | `1.37.2` | `1.38.1` |
| [github.com/aws/smithy-go](https://github.com/aws/smithy-go) | `1.22.5` | `1.23.0` |
| [github.com/spf13/cobra](https://github.com/spf13/cobra) | `1.9.1` | `1.10.1` |
| [github.com/spf13/pflag](https://github.com/spf13/pflag) | `1.0.7` | `1.0.9` |
| [github.com/stretchr/testify](https://github.com/stretchr/testify) | `1.11.0` | `1.11.1` |

Updates `github.com/aws/aws-sdk-go-v2/config` from 1.31.2 to 1.31.6
- [Release notes](https://github.com/aws/aws-sdk-go-v2/releases)
- [Changelog](https://github.com/aws/aws-sdk-go-v2/blob/main/changelog-template.json)
- [Commits](https://github.com/aws/aws-sdk-go-v2/compare/config/v1.31.2...config/v1.31.6)

Updates `github.com/aws/aws-sdk-go-v2/credentials` from 1.18.6 to 1.18.10
- [Release notes](https://github.com/aws/aws-sdk-go-v2/releases)
- [Changelog](https://github.com/aws/aws-sdk-go-v2/blob/main/changelog-template.json)
- [Commits](https://github.com/aws/aws-sdk-go-v2/compare/config/v1.18.6...config/v1.18.10)

Updates `github.com/aws/aws-sdk-go-v2/service/sns` from 1.37.2 to 1.38.1
- [Release notes](https://github.com/aws/aws-sdk-go-v2/releases)
- [Changelog](https://github.com/aws/aws-sdk-go-v2/blob/main/changelog-template.json)
- [Commits](https://github.com/aws/aws-sdk-go-v2/compare/v1.37.2...v1.38.1)

Updates `github.com/aws/smithy-go` from 1.22.5 to 1.23.0
- [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.22.5...v1.23.0)

Updates `github.com/spf13/cobra` from 1.9.1 to 1.10.1
- [Release notes](https://github.com/spf13/cobra/releases)
- [Commits](https://github.com/spf13/cobra/compare/v1.9.1...v1.10.1)

Updates `github.com/spf13/pflag` from 1.0.7 to 1.0.9
- [Release notes](https://github.com/spf13/pflag/releases)
- [Commits](https://github.com/spf13/pflag/compare/v1.0.7...v1.0.9)

Updates `github.com/stretchr/testify` from 1.11.0 to 1.11.1
- [Release notes](https://github.com/stretchr/testify/releases)
- [Commits](https://github.com/stretchr/testify/compare/v1.11.0...v1.11.1)

---
updated-dependencies:
- dependency-name: github.com/aws/aws-sdk-go-v2/config
  dependency-version: 1.31.6
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: github-dependencies
- dependency-name: github.com/aws/aws-sdk-go-v2/credentials
  dependency-version: 1.18.10
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: github-dependencies
- dependency-name: github.com/aws/aws-sdk-go-v2/service/sns
  dependency-version: 1.38.1
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: github-dependencies
- dependency-name: github.com/aws/smithy-go
  dependency-version: 1.23.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: github-dependencies
- dependency-name: github.com/spf13/cobra
  dependency-version: 1.10.1
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: github-dependencies
- dependency-name: github.com/spf13/pflag
  dependency-version: 1.0.9
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: github-dependencies
- dependency-name: github.com/stretchr/testify
  dependency-version: 1.11.1
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: github-dependencies
...

Signed-off-by: dependabot[bot] <support@github.com>
Signed-off-by: subhamkrai <srai@redhat.com>
2025-09-10 14:24:50 +05:30
parth-gr b4fa906202 ci: fix the ci canary valut test
use the official way for helm installation
and not use the cdn installation

Signed-off-by: parth-gr <partharora1010@gmail.com>
2025-09-10 12:16:11 +05:30
Blaine Gardner 7911469016 csi: fix prior cephx key deletion logic
Fix an issue where keepPriorKeyCountMax would be counted differently
when rotation was currently in progress, versus when rotation was not in
progress.

Signed-off-by: Blaine Gardner <blaine.gardner@ibm.com>
2025-09-09 15:26:28 -06:00
Travis Nielsen c35d433961 Merge pull request #16388 from obnoxxx/support-go-v1.25
build: add support for golang v1.25
2025-09-09 11:13:16 -06:00
Travis Nielsen 3a4d998fc6 Merge pull request #16446 from elias-dbx/fix_create_dev_cluster
test: fix create-dev-cluster.sh hanging since v1.18
2025-09-09 10:22:39 -06:00
subhamkrai d2a1286606 csi: add multus network annotation to csi-operator
this commit adds multus network annotation to the
csi-operator node plugin and controller plugin pods
when multus is enabled in the ceph cluster.

Signed-off-by: subhamkrai <srai@redhat.com>
2025-09-09 21:22:15 +05:30
Travis Nielsen 107c7cf8b0 Merge pull request #16434 from rook/dependabot/github_actions/actions/setup-python-6.0.0
build(deps): bump actions/setup-python from 5.6.0 to 6.0.0
2025-09-09 09:01:05 -06:00
Travis Nielsen ab4473e26d Merge pull request #16435 from rook/dependabot/github_actions/github/codeql-action-3.30.1
build(deps): bump github/codeql-action from 3.29.11 to 3.30.1
2025-09-09 09:00:39 -06:00
Travis Nielsen 1d3dc9d79d Merge pull request #16436 from rook/dependabot/github_actions/actions/stale-10.0.0
build(deps): bump actions/stale from 9.1.0 to 10.0.0
2025-09-09 09:00:14 -06:00
Travis Nielsen 699edb44bf Merge pull request #16438 from rook/dependabot/github_actions/actions/setup-go-6.0.0
build(deps): bump actions/setup-go from 5.5.0 to 6.0.0
2025-09-09 08:59:41 -06:00
Travis Nielsen e7a9f2013d Merge pull request #16440 from rook/dependabot/go_modules/golang.org/x/sync-0.17.0
build(deps): bump golang.org/x/sync from 0.16.0 to 0.17.0
2025-09-09 08:59:00 -06:00
Travis Nielsen 327d45ec50 Merge pull request #16441 from rook/dependabot/github_actions/aws-actions/configure-aws-credentials-5.0.0
build(deps): bump aws-actions/configure-aws-credentials from 4.3.1 to 5.0.0
2025-09-09 08:58:37 -06:00