envoyproxy/envoy

proposal: golang plugin hub

Open

#26,003 opened on 2023年3月9日

GitHub で見る
 (10 comments) (0 reactions) (0 assignees)C++ (5,373 forks)batch import
area/golanghelp wantedno stalebot

Repository metrics

Stars
 (27,997 stars)
PR merge metrics
 (平均マージ 8d) (30d で 378 merged PRs)

説明

motivation: benefits from the golang ecosystem, people could easily implement plugins, for more long tail scenes. we could build a plugin hub, so that people could contribute plugins to the hub, and reuse plugins. similar to the traefik: https://plugins.traefik.io/plugins

technical details:

  1. each plugin is a golang module, with a valid go.mod.
  2. each plugin could declare its own config proto, default to TypedStruct.
  3. people could push config through control-plane, i.e. EnvoyFilter for istio.
  4. furthermore, the hub could provide a way to combine plugins into a big plugin, to reduce cgo calls which might be a bit heavy cost.

コントリビューターガイド