api7 / apisix-mesh-agent

Apache License 2.0
78 stars 10 forks source link

feat: add connection_original_dst conneciton for routes #46

Closed tokers closed 3 years ago

tokers commented 3 years ago

Routes in xDS are configured on Listeners explicitly, while APISIX doesn't have this mechanism so if we don't add extra limitations, the cross-listener-use of Routes might occur, therefor we added an extra condition in this PR to limit the use Route. Only if the connection_original_dst is matched, then the route can be used.

As APISIX doesn't have the dynamic listeners, this is a workaround way to support it.

codecov[bot] commented 3 years ago

Codecov Report

Merging #46 (44469bc) into main (816fed3) will decrease coverage by 0.17%. The diff coverage is 52.17%.

:exclamation: Current head 44469bc differs from pull request most recent head 0221f17. Consider uploading reports for the commit 0221f17 to get more accurate results Impacted file tree graph

@@            Coverage Diff             @@
##             main      #46      +/-   ##
==========================================
- Coverage   73.13%   72.96%   -0.18%     
==========================================
  Files          31       31              
  Lines        2189     2208      +19     
==========================================
+ Hits         1601     1611      +10     
- Misses        456      464       +8     
- Partials      132      133       +1     
Impacted Files Coverage Δ
pkg/adaptor/xds/v3/types.go 0.00% <ø> (ø)
pkg/adaptor/xds/v3/route.go 77.48% <37.50%> (-1.69%) :arrow_down:
pkg/provisioner/xds/v3/grpc/delivery.go 47.67% <50.00%> (+0.11%) :arrow_up:
pkg/provisioner/xds/v3/grpc/types.go 72.48% <62.50%> (-0.32%) :arrow_down:
pkg/provisioner/xds/v3/file/delivery.go 52.70% <100.00%> (ø)

Continue to review full report at Codecov.

Legend - Click here to learn more Δ = absolute <relative> (impact), ø = not affected, ? = missing data Powered by Codecov. Last update 816fed3...0221f17. Read the comment docs.