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

PipelineGroup to share and reuse filters between Pipelines #1115

Open
suchen-sci opened this issue Oct 26, 2023 · 1 comment
Open

PipelineGroup to share and reuse filters between Pipelines #1115

suchen-sci opened this issue Oct 26, 2023 · 1 comment

Comments

@suchen-sci
Copy link
Contributor

Is your feature request related to a problem? Please describe.
For now, every path in HTTPSever has a corresponding Pipeline. To share filters between pipelines, we use GlobalFilter, which execute before or/and after all the pipelines of a certain HTTPServer.

Describe the solution you'd like
Create a new object called PipelineGroup to share and reuse filters between multiple pipelines. For example, several pipelines share some validation. Other pipelines share same basic auth, etc.

name: pipeine-group
kind: PipelineGroup 

groups:
- group: group1
  before: 
  - filter: adminAuth
  flows:
  - pipeline: pipeline1 
    flow:
    - filter: proxyAdmin1
  - pipeline: pipeline2
    flow:
    - filter: proxyAdmin2


filters:
- name: proxyAdmin1
- name: proxyAdmin2
- name: proxyUser1
- name: proxyUser2
- name: adminAuth

Describe alternatives you've considered
A PipelineGroup can have multiple pipelines in it. And these pipelines can be used by HTTPServer or GRPCServer. Based on design, we can support one or more groups in PipelineGroup.

name: pipeine-group
kind: PipelineGroup 
before: 
- filter: adminAuth

after:
- filter: after

flows:
- pipeline: pipeline1
  flow: 
  - filter: proxyAdmin1

- pipeline: pipeline2
  flow:
  - filter: proxyAdmin2


filters:
- name: proxyAdmin1
- name: proxyAdmin2
- name: proxyUser1
- name: proxyUser2
- name: adminAuth

Additional context
Nop.

@xxx7xxxx
Copy link
Contributor

xxx7xxxx commented Jan 28, 2024

It's a complicated feature that has no imminent requirements for now. So let's hold for now.

@xxx7xxxx xxx7xxxx reopened this Jan 28, 2024
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

No branches or pull requests

2 participants