Skip to content

[KFP] Connect KFP to use MLRun CE SeaweedFS Solution#261

Open
shay79il wants to merge 1 commit intomlrun:developmentfrom
shay79il:CEML-622-kfp
Open

[KFP] Connect KFP to use MLRun CE SeaweedFS Solution#261
shay79il wants to merge 1 commit intomlrun:developmentfrom
shay79il:CEML-622-kfp

Conversation

@shay79il
Copy link
Collaborator

@shay79il shay79il commented Feb 22, 2026

Configure Kubeflow Pipelines to use SeaweedFS S3 gateway for artifact storage,
with KFP 2.x compatibility updates and security hardening.

CEML-622

Copy link

Copilot AI left a comment

Choose a reason for hiding this comment

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

Pull request overview

This PR configures Kubeflow Pipelines (KFP) to use the SeaweedFS S3-compatible storage gateway for artifact storage, with KFP 2.x compatibility updates and security hardening for pipeline components.

Changes:

  • Configured KFP launcher with SeaweedFS artifact storage using the minio:// URI scheme (KFP's standard S3-compatible protocol)
  • Added KFP 2.x environment variables for artifact retention and proxy configuration with optional flags
  • Hardened metadata-envoy deployment with security context restrictions
  • Externalized LOG_LEVEL configuration to ConfigMap for better configurability

Reviewed changes

Copilot reviewed 7 out of 7 changed files in this pull request and generated 2 comments.

Show a summary per file
File Description
ct.yaml New configuration file to disable version increment checks for chart-testing tool
charts/mlrun-ce/Chart.yaml Bumped chart version from 0.11.0-rc9 to 0.11.0-rc10
Makefile Updated helm-lint target to use ct.yaml configuration
charts/mlrun-ce/templates/pipelines/configmaps/pipeline-install-config.yaml Added LOG_LEVEL configuration with INFO as default
charts/mlrun-ce/templates/pipelines/configmaps/kfp-launcher.yaml Configured defaultPipelineRoot with minio:// scheme pointing to SeaweedFS S3 gateway, includes comprehensive documentation
charts/mlrun-ce/templates/pipelines/deployments/ml-pipeline.yaml Moved LOG_LEVEL to ConfigMap reference, added optional KFP 2.x environment variables (ARTIFACT_RETENTION_DAYS, ARTIFACTS_PROXY_ENABLED), and improved code organization with section comments
charts/mlrun-ce/templates/pipelines/deployments/metadata-envoy-deployment.yaml Added container security context with privilege escalation prevention and capability restrictions

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

Configure Kubeflow Pipelines to use SeaweedFS S3 gateway for artifact storage, with KFP 2.x compatibility updates
[CEML-622](https://iguazio.atlassian.net/browse/CEML-622)
Copy link

Copilot AI left a comment

Choose a reason for hiding this comment

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

Pull request overview

Copilot reviewed 6 out of 6 changed files in this pull request and generated 1 comment.


💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

# It does NOT refer to the MinIO product - it works with ANY S3-compliant storage including SeaweedFS.
# This is the official KFP convention as per: https://www.kubeflow.org/docs/components/pipelines/operator-guides/configure-object-store/
# Format: minio://<bucket>/<path>
defaultPipelineRoot: "minio://{{ .Values.s3.bucket }}/v2/artifacts"
Copy link

Copilot AI Feb 26, 2026

Choose a reason for hiding this comment

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

defaultPipelineRoot currently uses .Values.s3.bucket directly, while other pipelines templates use the shared helper {{ include "mlrun-ce.s3.bucket" . }} (e.g., pipeline-install-config.yaml uses it for bucketName). Using the helper here too would keep bucket resolution consistent and avoid future drift if the helper logic changes.

Suggested change
defaultPipelineRoot: "minio://{{ .Values.s3.bucket }}/v2/artifacts"
defaultPipelineRoot: "minio://{{ include "mlrun-ce.s3.bucket" . }}/v2/artifacts"

Copilot uses AI. Check for mistakes.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants