...
1 package getambassadorio
2
3 import (
4 _ "embed"
5
6 "k8s.io/apimachinery/pkg/runtime"
7 runtimeutil "k8s.io/apimachinery/pkg/util/runtime"
8
9 "github.com/emissary-ingress/emissary/v3/pkg/api/getambassador.io/v1"
10 "github.com/emissary-ingress/emissary/v3/pkg/api/getambassador.io/v2"
11 "github.com/emissary-ingress/emissary/v3/pkg/api/getambassador.io/v3alpha1"
12 "github.com/emissary-ingress/emissary/v3/pkg/kates"
13 )
14
15 func AddToScheme(scheme *runtime.Scheme) error {
16 if err := v1.AddToScheme(scheme); err != nil {
17 return err
18 }
19 if err := v2.AddToScheme(scheme); err != nil {
20 return err
21 }
22 if err := v3alpha1.AddToScheme(scheme); err != nil {
23 return err
24 }
25 return nil
26 }
27
28 func BuildScheme() *runtime.Scheme {
29 scheme := runtime.NewScheme()
30 runtimeutil.Must(AddToScheme(scheme))
31 return scheme
32 }
33
34
35 var crdYAML string
36
37 func NewValidator() *kates.Validator {
38 crdObjs, err := kates.ParseManifests(crdYAML)
39 runtimeutil.Must(err)
40 validator, err := kates.NewValidator(nil, crdObjs)
41 runtimeutil.Must(err)
42 return validator
43 }
44
View as plain text