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

OSSM-3291: Promote envoyExtAuthzHttp to GA #1136

Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
25 commits
Select commit Hold shift + click to select a range
72fea11
Add support for envoyExtAuthzHttp
jewertow Mar 21, 2023
0516e79
Add missing deep copy functions
jewertow Mar 21, 2023
b95a952
Implement v1-v2 conversion for envoyExtAuthzHttp
jewertow Mar 21, 2023
1344f3a
Disable linter for a comment
jewertow Mar 21, 2023
3aab68a
Handle multiple extension providers properly
jewertow Mar 21, 2023
b4e50bb
Implement missing conversions
jewertow Mar 21, 2023
1534b92
Fix deep copy functions
jewertow Mar 22, 2023
699c462
Refactor code to fix lint errors
jewertow Mar 22, 2023
e46f81e
Refactor code to fix lint errors
jewertow Mar 22, 2023
3418a19
Refactor 'service' and 'port' fields to use pointer types
jewertow Mar 22, 2023
6bae11c
Revert "Refactor 'service' and 'port' fields to use pointer types"
jewertow Mar 22, 2023
5dd60d1
Don't check 0 values for required fields 'service' and 'port'
jewertow Mar 22, 2023
4fc3a7a
Validate extension providers in validation webhook
jewertow Mar 22, 2023
db6f0e0
Validate extension providers when created with v1 API
jewertow Mar 22, 2023
aff6a20
Remove validations from populateExtensionProvidersConfig
jewertow Mar 22, 2023
66633ed
Define helm values in yaml instead of map of interfaces
jewertow Mar 22, 2023
7c1ff12
Move helper functions from util.go to common.go
jewertow Mar 22, 2023
602786a
Improve unit test and fix imports
jewertow Mar 23, 2023
3280c44
Simplify TestExtensionProvidersConversionFromV2
jewertow Mar 23, 2023
f238c7d
Refactor populateExtensionProvidersValues
jewertow Mar 23, 2023
1462005
Refactor populateExtensionProvidersConfig
jewertow Mar 23, 2023
8465373
Refactor TestExtensionProvidersConversionFromV2
jewertow Mar 23, 2023
71a7a71
Use shorter variable names
jewertow Mar 23, 2023
150e0b4
Use shorter variables
jewertow Mar 23, 2023
07b1749
Rename ok to exists
jewertow Mar 23, 2023
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Jump to
Jump to file
Failed to load files.
Diff view
Diff view
74 changes: 74 additions & 0 deletions deploy/maistra-operator.yaml
Expand Up @@ -1544,6 +1544,43 @@ spec:
extensionProviders:
items:
properties:
envoyExtAuthzHttp:
properties:
failOpen:
type: boolean
includeAdditionalHeadersInCheck:
additionalProperties:
type: string
type: object
includeRequestBodyInCheck:
properties:
allowPartialMessage:
type: boolean
maxRequestBytes:
format: int64
type: integer
packAsBytes:
type: boolean
type: object
includeRequestHeadersInCheck:
items:
type: string
type: array
pathPrefix:
type: string
port:
format: int64
type: integer
service:
type: string
statusOnError:
type: string
timeout:
type: string
required:
- port
- service
type: object
name:
type: string
prometheus:
Expand Down Expand Up @@ -6438,6 +6475,43 @@ spec:
extensionProviders:
items:
properties:
envoyExtAuthzHttp:
properties:
failOpen:
type: boolean
includeAdditionalHeadersInCheck:
additionalProperties:
type: string
type: object
includeRequestBodyInCheck:
properties:
allowPartialMessage:
type: boolean
maxRequestBytes:
format: int64
type: integer
packAsBytes:
type: boolean
type: object
includeRequestHeadersInCheck:
items:
type: string
type: array
pathPrefix:
type: string
port:
format: int64
type: integer
service:
type: string
statusOnError:
type: string
timeout:
type: string
required:
- port
- service
type: object
name:
type: string
prometheus:
Expand Down
74 changes: 74 additions & 0 deletions deploy/servicemesh-operator.yaml
Expand Up @@ -1544,6 +1544,43 @@ spec:
extensionProviders:
items:
properties:
envoyExtAuthzHttp:
properties:
failOpen:
type: boolean
includeAdditionalHeadersInCheck:
additionalProperties:
type: string
type: object
includeRequestBodyInCheck:
properties:
allowPartialMessage:
type: boolean
maxRequestBytes:
format: int64
type: integer
packAsBytes:
type: boolean
type: object
includeRequestHeadersInCheck:
items:
type: string
type: array
pathPrefix:
type: string
port:
format: int64
type: integer
service:
type: string
statusOnError:
type: string
timeout:
type: string
required:
- port
- service
type: object
name:
type: string
prometheus:
Expand Down Expand Up @@ -6438,6 +6475,43 @@ spec:
extensionProviders:
items:
properties:
envoyExtAuthzHttp:
properties:
failOpen:
type: boolean
includeAdditionalHeadersInCheck:
additionalProperties:
type: string
type: object
includeRequestBodyInCheck:
properties:
allowPartialMessage:
type: boolean
maxRequestBytes:
format: int64
type: integer
packAsBytes:
type: boolean
type: object
includeRequestHeadersInCheck:
items:
type: string
type: array
pathPrefix:
type: string
port:
format: int64
type: integer
service:
type: string
statusOnError:
type: string
timeout:
type: string
required:
- port
- service
type: object
name:
type: string
prometheus:
Expand Down
74 changes: 74 additions & 0 deletions deploy/src/crd.yaml
Expand Up @@ -1543,6 +1543,43 @@ spec:
extensionProviders:
items:
properties:
envoyExtAuthzHttp:
properties:
failOpen:
type: boolean
includeAdditionalHeadersInCheck:
additionalProperties:
type: string
type: object
includeRequestBodyInCheck:
properties:
allowPartialMessage:
type: boolean
maxRequestBytes:
format: int64
type: integer
packAsBytes:
type: boolean
type: object
includeRequestHeadersInCheck:
items:
type: string
type: array
pathPrefix:
type: string
port:
format: int64
type: integer
service:
type: string
statusOnError:
type: string
timeout:
type: string
required:
- port
- service
type: object
name:
type: string
prometheus:
Expand Down Expand Up @@ -6437,6 +6474,43 @@ spec:
extensionProviders:
items:
properties:
envoyExtAuthzHttp:
properties:
failOpen:
type: boolean
includeAdditionalHeadersInCheck:
additionalProperties:
type: string
type: object
includeRequestBodyInCheck:
properties:
allowPartialMessage:
type: boolean
maxRequestBytes:
format: int64
type: integer
packAsBytes:
type: boolean
type: object
includeRequestHeadersInCheck:
items:
type: string
type: array
pathPrefix:
type: string
port:
format: int64
type: integer
service:
type: string
statusOnError:
type: string
timeout:
type: string
required:
- port
- service
type: object
name:
type: string
prometheus:
Expand Down
1 change: 1 addition & 0 deletions go.mod
Expand Up @@ -11,6 +11,7 @@ require (
github.com/emicklei/go-restful v2.11.1+incompatible // indirect
github.com/ghodss/yaml v1.0.1-0.20190212211648-25d852aebe32
github.com/go-logr/logr v0.2.1
github.com/goccy/go-yaml v1.8.8
github.com/google/go-cmp v0.5.2
github.com/gregjones/httpcache v0.0.0-20181110185634-c63ab54fda8f // indirect
github.com/k8snetworkplumbingwg/network-attachment-definition-client v1.1.0
Expand Down
5 changes: 5 additions & 0 deletions go.sum
Expand Up @@ -384,9 +384,13 @@ github.com/go-openapi/validate v0.18.0/go.mod h1:Uh4HdOzKt19xGIGm1qHf/ofbX1YQ4Y+
github.com/go-openapi/validate v0.19.2/go.mod h1:1tRCw7m3jtI8eNWEEliiAqUIcBztB2KDnRCRMUi7GTA=
github.com/go-openapi/validate v0.19.5 h1:QhCBKRYqZR+SKo4gl1lPhPahope8/RLt6EVgY8X80w0=
github.com/go-openapi/validate v0.19.5/go.mod h1:8DJv2CVJQ6kGNpFW6eV9N3JviE1C85nY1c2z52x1Gk4=
github.com/go-playground/assert/v2 v2.0.1 h1:MsBgLAaY856+nPRTKrp3/OZK38U/wa0CcBYNjji3q3A=
github.com/go-playground/assert/v2 v2.0.1/go.mod h1:VDjEfimB/XKnb+ZQfWdccd7VUvScMdVu0Titje2rxJ4=
github.com/go-playground/locales v0.13.0 h1:HyWk6mgj5qFqCT5fjGBuRArbVDfE4hi8+e8ceBS/t7Q=
github.com/go-playground/locales v0.13.0/go.mod h1:taPMhCMXrRLJO55olJkUXHZBHCxTMfnGwq/HNwmWNS8=
github.com/go-playground/universal-translator v0.17.0 h1:icxd5fm+REJzpZx7ZfpaD876Lmtgy7VtROAbHHXk8no=
github.com/go-playground/universal-translator v0.17.0/go.mod h1:UkSxE5sNxxRwHyU+Scu5vgOQjsIJAF8j9muTVoKLVtA=
github.com/go-playground/validator/v10 v10.4.1 h1:pH2c5ADXtd66mxoE0Zm9SUhxE20r7aM3F26W0hOn+GE=
github.com/go-playground/validator/v10 v10.4.1/go.mod h1:nlOn6nFhuKACm19sB/8EGNn9GlaMV7XkbRSipzJ0Ii4=
github.com/go-sql-driver/mysql v1.4.0/go.mod h1:zAC/RDZ24gD3HViQzih4MyKcchzm+sOG5ZlKdlhCg5w=
github.com/go-sql-driver/mysql v1.4.1 h1:g24URVg0OFbNUTx9qqY1IRZ9D9z3iPyi5zKhQZpNwpA=
Expand Down Expand Up @@ -640,6 +644,7 @@ github.com/lann/builder v0.0.0-20180802200727-47ae307949d0/go.mod h1:dXGbAdH5GtB
github.com/lann/ps v0.0.0-20150810152359-62de8c46ede0 h1:P6pPBnrTSX3DEVR4fDembhRWSsG5rVo6hYhAB/ADZrk=
github.com/lann/ps v0.0.0-20150810152359-62de8c46ede0/go.mod h1:vmVJ0l/dxyfGW6FmdpVm2joNMFikkuWg0EoCKLGUMNw=
github.com/leanovate/gopter v0.2.4/go.mod h1:gNcbPWNEWRe4lm+bycKqxUYoH5uoVje5SkOJ3uoLer8=
github.com/leodido/go-urn v1.2.0 h1:hpXL4XnriNwQ/ABnpepYM/1vCLWNDfUNts8dX3xTG6Y=
github.com/leodido/go-urn v1.2.0/go.mod h1:+8+nEpDfqqsY+g338gtMEUOtuK+4dEMhiQEgxpxOKII=
github.com/lib/pq v1.0.0/go.mod h1:5WUZQaWbwv1U+lTReE5YruASi9Al49XbQIvNi/34Woo=
github.com/lib/pq v1.2.0/go.mod h1:5WUZQaWbwv1U+lTReE5YruASi9Al49XbQIvNi/34Woo=
Expand Down
74 changes: 74 additions & 0 deletions manifests-maistra/2.4.0/servicemeshcontrolplanes.crd.yaml
Expand Up @@ -1543,6 +1543,43 @@ spec:
extensionProviders:
items:
properties:
envoyExtAuthzHttp:
properties:
failOpen:
type: boolean
includeAdditionalHeadersInCheck:
additionalProperties:
type: string
type: object
includeRequestBodyInCheck:
properties:
allowPartialMessage:
type: boolean
maxRequestBytes:
format: int64
type: integer
packAsBytes:
type: boolean
type: object
includeRequestHeadersInCheck:
items:
type: string
type: array
pathPrefix:
type: string
port:
format: int64
type: integer
service:
type: string
statusOnError:
type: string
timeout:
type: string
required:
- port
- service
type: object
name:
type: string
prometheus:
Expand Down Expand Up @@ -6437,6 +6474,43 @@ spec:
extensionProviders:
items:
properties:
envoyExtAuthzHttp:
properties:
failOpen:
type: boolean
includeAdditionalHeadersInCheck:
additionalProperties:
type: string
type: object
includeRequestBodyInCheck:
properties:
allowPartialMessage:
type: boolean
maxRequestBytes:
format: int64
type: integer
packAsBytes:
type: boolean
type: object
includeRequestHeadersInCheck:
items:
type: string
type: array
pathPrefix:
type: string
port:
format: int64
type: integer
service:
type: string
statusOnError:
type: string
timeout:
type: string
required:
- port
- service
type: object
name:
type: string
prometheus:
Expand Down