-
Notifications
You must be signed in to change notification settings - Fork 583
Support EnvoyFilter in Waypoint #3577
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
base: master
Are you sure you want to change the base?
Conversation
😊 Welcome @zirain! This is either your first contribution to the Istio api repo, or it's been You can learn more about the Istio working groups, Code of Conduct, and contribution guidelines Thanks for contributing! Courtesy of your friendly welcome wagon. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Looks good!
string name = 4; | ||
} | ||
|
||
message WaypointMatch { |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I think we will need CEL validation in place to ensure that you only use waypoint match when mode is WAYPOINT, and that you don't use other matchers when mode is WAYPOINT.
Also for targetRef service, must be WAYPOINT. For targetRef gateway, must be waypoint or gateway or empty?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
nvm I see you have some of these already, nice
|
||
// One or more match conditions to be met before a patch is applied | ||
// to the generated configuration for a given proxy. | ||
// +kubebuilder:validation:XValidation:message="only support waypointMatch when context is WAYPOINT",rule="(self.context == 'WAYPOINT' && has(self.waypoint)) || (self.context != 'WAYPOINT' && !has(self.waypoint))" |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I think this may fail if self.context
is unset. The default
function may be handy here
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
add default will execced the limit cost of CEL, add a test case for it.
RFC: https://docs.google.com/document/d/1hnYJ1P3hYNBALR_2U2h03xJYhyKtcDHLzBAEVEl_pDc/edit?tab=t.0
Protocol
andClusterMatch(subset)
is not implemented in the first iterate, we can add them back if needed.