Skip to content
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

[Experimental] Enhanced Trigger filters via adopting CloudEvent Subscriptions API #5204

Closed
6 of 8 tasks
slinkydeveloper opened this issue Apr 6, 2021 · 21 comments
Closed
6 of 8 tasks
Assignees
Labels
area/api area/delivery area/eventing The Eventing api group kind/feature-request priority/important-longterm Important over the long term, but may not be staffed and/or may need multiple releases to complete. roadmap Issues for linking from the roadmap triage/accepted Issues which should be fixed (post-triage)
Milestone

Comments

@slinkydeveloper
Copy link
Contributor

slinkydeveloper commented Apr 6, 2021

Description

Trigger Filter API should conform to the CNCF CouldEvents Subscriptions API in order to support more complex predicates, the newly born CloudEvents Expression Language and any additional custom language/predicate vendors wants to include in their offerings.

Feature Track

https://hackmd.io/@devguyio/H1Mg3my2d

Why

  1. Provide a more flexible Trigger API that provides a better UX for Knative users and better suits users production needs.
  2. Used as a first step towards evaluating the possibility of standardizing our API shape to the CloudEvents Subscriptions API.

Exit Criteria

Trigger filter supports the filters API field defined in the Subscriptions API.

Deciding on the Future of The Experimental Feature

The User Experience WG would significantly help by conducting user feedback surveys and gather feedback from Knative users, PMs and vendors to decide on the future of this feature.

Experimental feature stages plan

Below the proposed plan for the feature stages (this list implicitly includes the requirements defined in the process)

Affected WG

  • Eventing WG

Prior discussions

@slinkydeveloper
Copy link
Contributor Author

/assign

@slinkydeveloper
Copy link
Contributor Author

cc @duglin

@lberk lberk added area/api area/delivery area/eventing The Eventing api group priority/important-longterm Important over the long term, but may not be staffed and/or may need multiple releases to complete. labels Apr 12, 2021
@lberk lberk added this to the Backlog milestone Apr 12, 2021
@lberk
Copy link
Member

lberk commented Apr 12, 2021

@slinkydeveloper just curious -- did you see this as being a subsequent effort/included to the feature gating/experimental feature process?
Your awesome proposal lists this as an example but I didn't see it listed in the steps for the issue -- just wanted to check out loud

@slinkydeveloper
Copy link
Contributor Author

@lberk I'm waiting for the experimental features proposal to be accepted to refactor this issue and move forward with the process

@slinkydeveloper slinkydeveloper changed the title Trigger filter API conforms to CloudEvent's Subscription API [Exp feature] Trigger filter API conforms to CloudEvent's Subscription API Apr 14, 2021
@slinkydeveloper slinkydeveloper changed the title [Exp feature] Trigger filter API conforms to CloudEvent's Subscription API [Experimental] Trigger filter API conforms to CloudEvent's Subscription API Apr 14, 2021
@slinkydeveloper
Copy link
Contributor Author

@lberk refactored as experimental feature :)

@devguyio
Copy link
Contributor

/assign

@devguyio
Copy link
Contributor

devguyio commented Jun 28, 2021

Some updates

  • Updated the description of the issue.
  • Created a new Feature Track (link above).

@omerbensaadon @csantanapr would be great to give your feedback specially with the suggested involvement of the UX WG.

@vaikas @lionelvillard @n3wscott @matzew @slinkydeveloper PTAL as tech WG leads.

@omerbensaadon
Copy link

@slinkydeveloper @devguyio can someone bring this to the DUX WG call tomorrow?

@devguyio devguyio changed the title [Experimental] Trigger filter API conforms to CloudEvent's Subscription API [Experimental] Enhanced Trigger filters via adopting CloudEvent Subscriptions API Jun 28, 2021
@duglin
Copy link

duglin commented Jun 29, 2021

obviously I think this is great! :-) Nice write-up!

@devguyio
Copy link
Contributor

devguyio commented Aug 3, 2021

@evankanderson I've responded to your comments on the Feature Track doc

@devguyio
Copy link
Contributor

devguyio commented Aug 3, 2021

@matzew responded to your comment.

@matzew
Copy link
Member

matzew commented Aug 4, 2022

/assign @matzew

@Cali0707
Copy link
Member

/assign

@Leo6Leo
Copy link
Member

Leo6Leo commented Aug 1, 2023

  • Prefix filter: Only allows data that starts with a specific string
  • Suffix filter: Only allows data that ends with a specific string
  • Exact filter: Only allows data that exactly matches a specific string
  • Not filter: Excludes data that matches a certain criterion
  • Any filter: Allows data that matches any of a list of criteria
  • All filter: Allows data that matches all of a list of criteria

@Cali0707
Copy link
Member

@pierDipi how many releases should we wait here before starting to move it to GA?

@hamishforbes
Copy link

Hi, I understand this feature is beta and enabled by default, but how can I go about trying out the new filters field?
It's not included in the released CRDs.
Is there a way to generate the CRDs including beta fields or something? Or do I just have to manually hack it into the CRDs installed on my clusters to try it out?

@Cali0707
Copy link
Member

Hi @hamishforbes thanks for catching this! Because the trigger CRD hasthe x-kubernetes-preserve-unknown-fields: true property, you can just add the filters field to your triggers and it should work. I hadn't realized that we had not yet added filters to the CRD, I've opened an issue to fix that. If you run into any issues using the new trigger filters please let us know!

@pierDipi
Copy link
Member

pierDipi commented Aug 8, 2024

Closing this issue as it's implemented and GA in core

@pierDipi pierDipi closed this as completed Aug 8, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
area/api area/delivery area/eventing The Eventing api group kind/feature-request priority/important-longterm Important over the long term, but may not be staffed and/or may need multiple releases to complete. roadmap Issues for linking from the roadmap triage/accepted Issues which should be fixed (post-triage)
Projects
Development

No branches or pull requests