Skip to content

Merge https://github.com/openshift/oadp-operator:oadp-dev (7c8a3f1) into oadp-dev#2114

Open
oadp-rebasebot-app[bot] wants to merge 2 commits intoopenshift:oadp-devfrom
oadp-rebasebot:rebase-bot-oadp-dev
Open

Merge https://github.com/openshift/oadp-operator:oadp-dev (7c8a3f1) into oadp-dev#2114
oadp-rebasebot-app[bot] wants to merge 2 commits intoopenshift:oadp-devfrom
oadp-rebasebot:rebase-bot-oadp-dev

Conversation

@oadp-rebasebot-app
Copy link
Contributor

@oadp-rebasebot-app oadp-rebasebot-app bot commented Mar 10, 2026

Summary by CodeRabbit

New Features

  • DataProtectionApplication custom resource now supports ephemeral storage configuration. Users can specify ephemeral storage limits and requests for both node agent and repository maintenance pod resources. This enhancement enables more granular control over temporary storage allocation in backup and restore workflows, improving resource management and providing better flexibility for data protection operations.

@coderabbitai
Copy link
Contributor

coderabbitai bot commented Mar 10, 2026

Walkthrough

This pull request extends the DataProtectionApplication CRD schema by adding ephemeralStorageLimit and ephemeralStorageRequest fields to podResources in both nodeAgent and repositoryMaintenance configurations. It also updates Go dependencies for OpenTelemetry and the velero replace directive.

Changes

Cohort / File(s) Summary
CRD Schema Updates
bundle/manifests/oadp.openshift.io_dataprotectionapplications.yaml, config/crd/bases/oadp.openshift.io_dataprotectionapplications.yaml
Adds ephemeralStorageLimit and ephemeralStorageRequest string fields to podResources blocks in nodeAgent and repositoryMaintenance configurations.
Dependency Updates
go.mod
Updates go.opentelemetry.io/otel from v1.38.0 to v1.40.0, golang.org/x/sys from v0.38.0 to v0.40.0, and updates velero replace directive to point to openshift/velero v0.10.2-0.20260310095129-ca5442fb1a74.

Estimated code review effort

🎯 2 (Simple) | ⏱️ ~12 minutes

🚥 Pre-merge checks | ✅ 3 | ❌ 2

❌ Failed checks (1 warning, 1 inconclusive)

Check name Status Explanation Resolution
Description check ⚠️ Warning No pull request description was provided; the template requires sections for 'Why the changes were made' and 'How to test the changes made'. Add a description following the template, explaining why ephemeral storage fields were added and how to test the CRD schema changes.
Title check ❓ Inconclusive The title is a generic merge commit message that does not clearly describe the actual changes (ephemeral storage field additions and dependency updates). Replace with a descriptive title that summarizes the main changes, such as 'Add ephemeral storage fields to DataProtectionApplication CRD' or include key change details.
✅ Passed checks (3 passed)
Check name Status Explanation
Docstring Coverage ✅ Passed No functions found in the changed files to evaluate docstring coverage. Skipping docstring coverage check.
Stable And Deterministic Test Names ✅ Passed All Ginkgo test names use static, descriptive strings with no dynamic values embedded in test titles.
Test Structure And Quality ✅ Passed This pull request does not modify any existing Ginkgo test code. The PR is an initial repository setup/rebase commit that adds test files with 'A' (added) status rather than 'M' (modified) status.

✏️ Tip: You can configure your own custom pre-merge checks in the settings.

✨ Finishing Touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Post copyable unit tests in a comment

Comment @coderabbitai help to get the list of available commands and usage tips.

@openshift-ci
Copy link

openshift-ci bot commented Mar 10, 2026

Hi @oadp-rebasebot-app[bot]. Thanks for your PR.

I'm waiting for a openshift member to verify that this patch is reasonable to test. If it is, they should reply with /ok-to-test on its own line. Until that is done, I will not automatically test new commits in this PR, but the usual testing commands by org members will still work.

Regular contributors should join the org to skip this step.

Once the patch is verified, the new status will be reflected by the ok-to-test label.

I understand the commands that are listed here.

Details

Instructions for interacting with me using PR comments are available here. If you have questions or suggestions related to my behavior, please file an issue against the kubernetes-sigs/prow repository.

@openshift-ci openshift-ci bot added the needs-ok-to-test Indicates a PR that requires an org member to verify it is safe to test. label Mar 10, 2026
@openshift-ci
Copy link

openshift-ci bot commented Mar 10, 2026

[APPROVALNOTIFIER] This PR is APPROVED

This pull-request has been approved by: mpryc, oadp-rebasebot-app[bot]

The full list of commands accepted by this bot can be found here.

The pull request process is described here

Details Needs approval from an approver in each of these files:

Approvers can indicate their approval by writing /approve in a comment
Approvers can cancel approval by writing /approve cancel in a comment

@openshift-ci openshift-ci bot added the approved Indicates a PR has been approved by an approver from all required OWNERS files. label Mar 10, 2026
@mpryc
Copy link
Contributor

mpryc commented Mar 10, 2026

/hold

@openshift-ci openshift-ci bot added the do-not-merge/hold Indicates that a PR should not merge because someone has issued a /hold command. label Mar 10, 2026
Copy link
Contributor

@coderabbitai coderabbitai bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Caution

Some comments are outside the diff and can’t be posted inline due to platform limitations.

⚠️ Outside diff range comments (1)
config/crd/bases/oadp.openshift.io_dataprotectionapplications.yaml (1)

742-752: ⚠️ Potential issue | 🟡 Minor

Update the podResources description to include ephemeral storage.

The description still says this block only covers CPU and memory, which is no longer true after adding the new fields.

Proposed fix
-                          description: PodResources is the config for the CPU and memory resources setting.
+                          description: PodResources is the config for the CPU, memory, and ephemeral storage resource settings.
🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed.

In `@config/crd/bases/oadp.openshift.io_dataprotectionapplications.yaml` around
lines 742 - 752, The podResources schema description is outdated (mentions only
CPU and memory) — update the description for the podResources (PodResources)
object to include ephemeral storage as well so it reflects new fields like
ephemeralStorageLimit and ephemeralStorageRequest; locate the description key
under podResources in the CRD and change its text to mention CPU, memory and
ephemeral storage, keeping surrounding property names cpuLimit, cpuRequest,
ephemeralStorageLimit and ephemeralStorageRequest intact.
🧹 Nitpick comments (2)
bundle/manifests/oadp.openshift.io_dataprotectionapplications.yaml (1)

742-756: Consider updating the description to include ephemeral storage.

The podResources description on line 743 states "PodResources is the config for the CPU and memory resources setting" but now also includes ephemeral storage fields. Consider updating the description to reflect the expanded scope.

📝 Suggested description update
             podResources:
-              description: PodResources is the config for the CPU and memory resources setting.
+              description: PodResources is the config for the CPU, memory, and ephemeral storage resources setting.
               properties:

Note: This would need to be changed in the Go API types, then regenerated via make generate manifests.

🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed.

In `@bundle/manifests/oadp.openshift.io_dataprotectionapplications.yaml` around
lines 742 - 756, Update the podResources description to mention ephemeral
storage as well as CPU and memory: locate the podResources schema (property name
"podResources") and change the description text to something like "PodResources
is the config for CPU, memory, and ephemeral storage resource settings" and then
update the corresponding Go API type (the struct/field that defines
PodResources) to use the same text and run the manifest generation (make
generate manifests) so the YAML is regenerated with the new description; ensure
fields like ephemeralStorageLimit and ephemeralStorageRequest remain documented.
config/crd/bases/oadp.openshift.io_dataprotectionapplications.yaml (1)

649-652: Document the new ephemeral storage fields.

These are public CRD fields now, but without descriptions users get no guidance in oc explain or generated docs about expected quantity format or how they map to pod requests/limits. Please add source-field comments so the generated schema includes descriptions here.

🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed.

In `@config/crd/bases/oadp.openshift.io_dataprotectionapplications.yaml` around
lines 649 - 652, The CRD is missing user-facing descriptions for
ephemeralStorageLimit and ephemeralStorageRequest; add source-field comments on
the corresponding API struct fields (EphemeralStorageLimit,
EphemeralStorageRequest) so the generated OpenAPI schema includes descriptions
that explain the expected quantity format (e.g., "100Mi", "1Gi", "500K") and how
these values map to pod resources (they populate container
resources.requests[ephemeral-storage] and resources.limits[ephemeral-storage]).
Include a brief example and note accepted units and that values follow
Kubernetes resource.Quantity syntax so oc explain and generated docs surface
this guidance.
🤖 Prompt for all review comments with AI agents
Verify each finding against the current code and only fix it if needed.

Outside diff comments:
In `@config/crd/bases/oadp.openshift.io_dataprotectionapplications.yaml`:
- Around line 742-752: The podResources schema description is outdated (mentions
only CPU and memory) — update the description for the podResources
(PodResources) object to include ephemeral storage as well so it reflects new
fields like ephemeralStorageLimit and ephemeralStorageRequest; locate the
description key under podResources in the CRD and change its text to mention
CPU, memory and ephemeral storage, keeping surrounding property names cpuLimit,
cpuRequest, ephemeralStorageLimit and ephemeralStorageRequest intact.

---

Nitpick comments:
In `@bundle/manifests/oadp.openshift.io_dataprotectionapplications.yaml`:
- Around line 742-756: Update the podResources description to mention ephemeral
storage as well as CPU and memory: locate the podResources schema (property name
"podResources") and change the description text to something like "PodResources
is the config for CPU, memory, and ephemeral storage resource settings" and then
update the corresponding Go API type (the struct/field that defines
PodResources) to use the same text and run the manifest generation (make
generate manifests) so the YAML is regenerated with the new description; ensure
fields like ephemeralStorageLimit and ephemeralStorageRequest remain documented.

In `@config/crd/bases/oadp.openshift.io_dataprotectionapplications.yaml`:
- Around line 649-652: The CRD is missing user-facing descriptions for
ephemeralStorageLimit and ephemeralStorageRequest; add source-field comments on
the corresponding API struct fields (EphemeralStorageLimit,
EphemeralStorageRequest) so the generated OpenAPI schema includes descriptions
that explain the expected quantity format (e.g., "100Mi", "1Gi", "500K") and how
these values map to pod resources (they populate container
resources.requests[ephemeral-storage] and resources.limits[ephemeral-storage]).
Include a brief example and note accepted units and that values follow
Kubernetes resource.Quantity syntax so oc explain and generated docs surface
this guidance.

ℹ️ Review info
⚙️ Run configuration

Configuration used: Repository: openshift/coderabbit/.coderabbit.yaml

Review profile: CHILL

Plan: Pro

Run ID: 43a8c898-971d-4f2a-88e6-be0edaeeb3d6

📥 Commits

Reviewing files that changed from the base of the PR and between 7c8a3f1 and 288a893.

⛔ Files ignored due to path filters (1)
  • go.sum is excluded by !**/*.sum
📒 Files selected for processing (3)
  • bundle/manifests/oadp.openshift.io_dataprotectionapplications.yaml
  • config/crd/bases/oadp.openshift.io_dataprotectionapplications.yaml
  • go.mod

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

approved Indicates a PR has been approved by an approver from all required OWNERS files. do-not-merge/hold Indicates that a PR should not merge because someone has issued a /hold command. needs-ok-to-test Indicates a PR that requires an org member to verify it is safe to test.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants