envoyproxy/envoy

enhance router_check_tool to allow going through listeners as well

Open

#12,393 建立於 2020年7月30日

在 GitHub 查看
 (7 留言) (0 反應) (0 負責人)C++ (5,373 fork)batch import
area/route_check_toolhelp wanted

倉庫指標

Star
 (27,997 star)
PR 合併指標
 (平均合併 8天) (30 天內合併 378 個 PR)

描述

Currently, router_check_tool takes in a route as input. This makes the tool somewhat whitebox - the user first needs to figure out which route they care about, then they can write a test for it. Ideally, its completely black box - the user gives the full Envoy config (really just Listeners and Routes) and a set of queries, and checks the result.

This is useful as well to test complex listeners with many different filter chain matches.

Alternatives considered:

  • Implement the logic for determining a route from the request ourselves. This would involve re-implementing the filter chain/listener matching logic which is likely to be incorrect and fall out of sync
  • Use the tool as is. This doesn't mean the requirement of black box testing, relies test writers to know Envoy implementation details
  • Send real traffic against a real envoy instead. This is slower and more complex

貢獻者指南