@@ -22,22 +22,27 @@ type OpaRule struct {
2222 Filename string `hcl:"filename"`
2323 Notation * NotationVerifierConfig `hcl:"notation,block"`
2424}
25+ type OpaSdkRule struct {
26+ Path string `hcl:"path"`
27+ }
2528
2629type Validator struct {
27- Type string `hcl:"type,label"`
28- Name string `hcl:"name,label"`
29- OpaRule * OpaRule `hcl:"opa_rule,block"`
30- Webhook * Webhook `hcl:"webhook,block"`
31- ResolveToken bool `hcl:"resolve_token,optional"`
30+ Type string `hcl:"type,label"`
31+ Name string `hcl:"name,label"`
32+ OpaRule * OpaRule `hcl:"opa_rule,block"`
33+ OpaSdkRule * OpaSdkRule `hcl:"opa_sdk_rule,block"`
34+ Webhook * Webhook `hcl:"webhook,block"`
35+ ResolveToken bool `hcl:"resolve_token,optional"`
3236
3337 Notation * NotationVerifierConfig `hcl:"notation,block"`
3438}
3539type Mutator struct {
36- Type string `hcl:"type,label"`
37- Name string `hcl:"name,label"`
38- OpaRule * OpaRule `hcl:"opa_rule,block"`
39- Webhook * Webhook `hcl:"webhook,block"`
40- ResolveToken bool `hcl:"resolve_token,optional"`
40+ Type string `hcl:"type,label"`
41+ Name string `hcl:"name,label"`
42+ OpaRule * OpaRule `hcl:"opa_rule,block"`
43+ OpaSdkRule * OpaSdkRule `hcl:"opa_sdk_rule,block"`
44+ Webhook * Webhook `hcl:"webhook,block"`
45+ ResolveToken bool `hcl:"resolve_token,optional"`
4146}
4247
4348type RequestContext struct {
@@ -111,6 +116,12 @@ type Config struct {
111116 Mutators []Mutator `hcl:"mutator,block"`
112117
113118 Telemetry * Telemetry `hcl:"telemetry,block"`
119+
120+ OpaSdk * OpaSdk `hcl:"opa_sdk,block"`
121+ }
122+ type OpaSdk struct {
123+ Id string `hcl:"id,label"`
124+ ConfigPath string `hcl:"config_path"`
114125}
115126
116127func DefaultConfig () * Config {
0 commit comments