Skip to content

feat: update Function CRD to use packageRef instead of package field #204

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged
merged 1 commit into from
Jul 21, 2025

Conversation

evanwave
Copy link
Contributor

Motivation

The Function CRD was using a simple package field as a string, which limited the ability to reference Package resources across namespaces and didn't follow Kubernetes best practices for resource references. This change updates the Function CRD to use a proper packageRef object that includes both name and namespace fields, allowing for better resource management and cross-namespace package references.

Modifications

  • Updated Function CRD schema: Changed the package field from a simple string to a packageRef object with name and namespace properties
  • Enhanced developer documentation: Added a new section in operator/DEVELOPER.md explaining the process for updating CRD definitions and ensuring Helm chart templates stay in sync
  • Updated Helm chart templates: Modified the CRD template in operator/deploy/chart/templates/crd/fs.functionstream.github.io_functions.yaml to reflect the new schema structure

The changes ensure that:

  • Functions can now reference Package resources across different namespaces
  • The CRD follows Kubernetes conventions for resource references
  • Developers have clear guidance on maintaining CRD and Helm chart consistency
  • Both direct CRD installation and Helm chart installation will have consistent behavior

@evanwave evanwave self-assigned this Jul 21, 2025
@RobertIndie RobertIndie merged commit e5b9483 into main Jul 21, 2025
5 checks passed
@RobertIndie RobertIndie deleted the update-helm-crd branch July 21, 2025 15:00
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.

2 participants