You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
We should change the compile/execution flow so that each constraint template is compiled and evaluated as separate Rego artifacts, with the execution being coordinated by Golang. This will have a number of benefits:
The ability for individual template authors to leverage OPA's indexing, which the current Rego coordination code likely precludes. This may increase performance.
Consolidate matcher implementation on Golang (which is used for mutation). This will remove code duplication, should be more performant, and will open up the door for more specialized indexing in the future
Currently we are compiling all constraint templates into the same OPA artifact (
d.compiler
in the following code):frameworks/constraint/pkg/client/drivers/local/local.go
Lines 212 to 229 in 2924b2c
Which is then used to evaluate constraints here:
frameworks/constraint/pkg/client/drivers/local/local.go
Lines 326 to 348 in 2924b2c
With the coordination of executing constraint templates done in Rego here:
frameworks/constraint/pkg/client/regolib/src.go
Lines 5 to 85 in 2924b2c
We should change the compile/execution flow so that each constraint template is compiled and evaluated as separate Rego artifacts, with the execution being coordinated by Golang. This will have a number of benefits:
The text was updated successfully, but these errors were encountered: