Skip to content

Conversation

@mwritescode
Copy link
Contributor

Fixes #11069

Description

This feature introduces support for Container Storage Interface (CSI) volumes in Knative Serving, enabling users to integrate with a wide variety of storage solutions through the Kubernetes CSI standard. This enhancement allows Knative services to leverage enterprise storage systems, cloud provider volumes, and other storage implementations that support the CSI specification, while maintaining Knative's serverless principles.

Proposed Changes

  • Add support for CSI volume type in Knative Serving
  • Enable users to mount CSI volumes into their Knative service containers
  • Update relevant documentation and examples to include usage of CSI volumes
  • Add feature flag control for CSI volume support

Release Note

Adding support for CSI (Container Storage Interface) volumes. This feature allows users to mount CSI-compatible storage volumes into their Knative service containers. It enables integration with enterprise storage solutions and cloud provider storage services that implement the CSI specification. The feature is behind the flag `kubernetes.podspec-volumes-csi`.

@linux-foundation-easycla
Copy link

linux-foundation-easycla bot commented Mar 21, 2025

CLA Signed

The committers listed above are authorized under a signed CLA.

  • ✅ login: dprotaso / name: Dave Protasowski (9dae83d)
  • ✅ login: mwritescode / name: Martina Rossini (3380251)

@knative-prow
Copy link

knative-prow bot commented Mar 21, 2025

Welcome @mwritescode! It looks like this is your first PR to knative/serving 🎉

@knative-prow knative-prow bot added size/L Denotes a PR that changes 100-499 lines, ignoring generated files. needs-ok-to-test Indicates a PR that requires an org member to verify it is safe to test. labels Mar 21, 2025
@knative-prow
Copy link

knative-prow bot commented Mar 21, 2025

Hi @mwritescode. Thanks for your PR.

I'm waiting for a knative 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.

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.

@knative-prow knative-prow bot requested review from dsimansk and skonto March 21, 2025 17:49
@dsimansk
Copy link
Contributor

/ok-to-test

@knative-prow knative-prow bot added ok-to-test Indicates a non-member PR verified by an org member that is safe to test. and removed needs-ok-to-test Indicates a PR that requires an org member to verify it is safe to test. labels Mar 26, 2025
Message: `CSI volume support is disabled, but found CSI volume foo`,
}).Also(
&apis.FieldError{Message: "must not set the field(s)", Paths: []string{"csi"}
})
Copy link
Contributor

Choose a reason for hiding this comment

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

@mwritescode could you pls take a look literals syntax in tests?

@dsimansk
Copy link
Contributor

@dprotaso @skonto what's your opinion on adding the support? Personally, I'd like to see a bit of e2e test coverage to confirm and ensure it's supportable from our point of view.

@dprotaso
Copy link
Member

Personally, I'd like to see a bit of e2e test coverage to confirm and ensure it's supportable from our point of view.

@dsimansk Generally I don't want to have serving e2e tests to cover PodSpec features. K8s community would have coverage there and it would make the serving suite even slower to run.

I'm generally ok with stuff behind a feature flag because it's a buyer beware for teams that know what they are doing.

@knative-prow knative-prow bot added size/M Denotes a PR that changes 30-99 lines, ignoring generated files. and removed size/L Denotes a PR that changes 100-499 lines, ignoring generated files. labels Apr 18, 2025
@dprotaso
Copy link
Member

/lgtm
/approve

@knative-prow knative-prow bot added the lgtm Indicates that a PR is ready to be merged. label Apr 18, 2025
@knative-prow
Copy link

knative-prow bot commented Apr 18, 2025

[APPROVALNOTIFIER] This PR is APPROVED

This pull-request has been approved by: dprotaso, mwritescode

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

The pull request process is described here

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

@knative-prow knative-prow bot added the approved Indicates a PR has been approved by an approver from all required OWNERS files. label Apr 18, 2025
@codecov
Copy link

codecov bot commented Apr 18, 2025

Codecov Report

Attention: Patch coverage is 83.33333% with 3 lines in your changes missing coverage. Please review.

Project coverage is 75.03%. Comparing base (ad65df0) to head (9dae83d).
Report is 23 commits behind head on main.

Files with missing lines Patch % Lines
cmd/schema-tweak/overrides.go 0.00% 3 Missing ⚠️

❌ Your project status has failed because the head coverage (75.03%) is below the target coverage (80.00%). You can increase the head coverage or adjust the target coverage.

Additional details and impacted files
@@            Coverage Diff             @@
##             main   #15815      +/-   ##
==========================================
- Coverage   75.05%   75.03%   -0.02%     
==========================================
  Files         222      222              
  Lines       18074    18092      +18     
==========================================
+ Hits        13566    13576      +10     
- Misses       4158     4165       +7     
- Partials      350      351       +1     

☔ View full report in Codecov by Sentry.
📢 Have feedback on the report? Share it here.

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.

@dprotaso
Copy link
Member

/override "codecov/project"

it's fixed in main

@knative-prow
Copy link

knative-prow bot commented Apr 18, 2025

@dprotaso: Overrode contexts on behalf of dprotaso: codecov/project

In response to this:

/override "codecov/project"

it's fixed in main

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.

@dprotaso
Copy link
Member

/retest

@knative-prow knative-prow bot merged commit 93023e8 into knative:main Apr 18, 2025
68 of 69 checks passed
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. lgtm Indicates that a PR is ready to be merged. ok-to-test Indicates a non-member PR verified by an org member that is safe to test. size/M Denotes a PR that changes 30-99 lines, ignoring generated files.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Compatibility with Secret Store CSI Driver?

3 participants