From a3d297b3152f4bd4abc016dd781ae13b15c1e1d3 Mon Sep 17 00:00:00 2001 From: Max Smythe Date: Thu, 6 Oct 2022 16:47:38 -0700 Subject: [PATCH] perf: Remove `with` statement to avoid deepcopying data.inventory (#252) Signed-off-by: Max Smythe Signed-off-by: Max Smythe --- .../pkg/client/drivers/local/driver_unit_test.go | 2 +- constraint/pkg/client/drivers/local/rego.go | 10 +--------- constraint/pkg/client/drivers/local/storages.go | 2 +- 3 files changed, 3 insertions(+), 11 deletions(-) diff --git a/constraint/pkg/client/drivers/local/driver_unit_test.go b/constraint/pkg/client/drivers/local/driver_unit_test.go index 7c1c4b503..c73110cc7 100644 --- a/constraint/pkg/client/drivers/local/driver_unit_test.go +++ b/constraint/pkg/client/drivers/local/driver_unit_test.go @@ -768,7 +768,7 @@ func TestDriver_RemoveData_StorageErrors(t *testing.T) { name: "commit error", storage: &commitErrorStorage{ fakeStorage: fakeStorage{values: map[string]interface{}{ - "/external/foo": "bar", + "/inventory/foo": "bar", }}, }, wantErr: clienterrors.ErrTransaction, diff --git a/constraint/pkg/client/drivers/local/rego.go b/constraint/pkg/client/drivers/local/rego.go index 9b016ef5b..00df19ed1 100644 --- a/constraint/pkg/client/drivers/local/rego.go +++ b/constraint/pkg/client/drivers/local/rego.go @@ -34,8 +34,7 @@ violation[response] { } # Run the Template with Constraint. - inventory[inv] - data.template.violation[r] with input as inp with data.inventory as inv + data.template.violation[r] with input as inp # Construct the response, defaulting "details" to empty object if it is not # specified. @@ -45,13 +44,6 @@ violation[response] { "msg": r.msg, } } - -inventory[inv] { - inv = data.external -} -inventory[{}] { - not data.external -} ` ) diff --git a/constraint/pkg/client/drivers/local/storages.go b/constraint/pkg/client/drivers/local/storages.go index 98820e539..7b6738ee7 100644 --- a/constraint/pkg/client/drivers/local/storages.go +++ b/constraint/pkg/client/drivers/local/storages.go @@ -103,7 +103,7 @@ func (d *storages) getStorage(ctx context.Context, target string) (storage.Store } func inventoryPath(path []string) storage.Path { - return append([]string{"external"}, path...) + return append([]string{"inventory"}, path...) } func addData(ctx context.Context, store storage.Store, path storage.Path, data interface{}) error {