Full Set Of Changes For Pattern Match and Rewrite (#22207)
This PR will implement issue detailed here and described below: #7763 Match Patterns and Templates Wildcard support based on match patterns and templates. A match pattern matches an incoming URL path. Match patterns support glob operators to match URL text and variable definitions to bind matched text to names. Template patterns are used to re-write URLs. Template patterns build new URLs and may reference variables bound by a match pattern. Match Examples /**.m3u8 would match /foo.m3u8 and /foo/bar.m3u8. /{dir_name}/*.ts would match /example/file.ts and bind dir_name="example" for a later template match to use. /{dir_name}/**.ts would match /example/path/file.ts and bind dir_name="example" for a later template match to use. This would also match /example/.ts, which may or may not be a desired behavior. /{path=v1/*}/{file=*.ts} would match /v1/example/movie.ts (binding path="v1/example" and file="movie"), but would not match /v0/example/movie.ts. See post for full details and example: #7763 (comment) Risk Level: Testing: Unit tests. Both both internal matching/rewrite library and config/data plane changes. Signed-off-by: silverstar195 <seanmaloney@google.com> Mirrored from https://github.com/envoyproxy/envoy @ 8cfc61f916cf52ce8bce6710686e9d4fca2c06bdpull/626/head
parent
3c63f5aca1
commit
cd75a08b73
7 changed files with 26 additions and 28 deletions
Loading…
Reference in new issue