diff --git a/internal/integrations/operations/ingest_internalpolicy_persist.go b/internal/integrations/operations/ingest_internalpolicy_persist.go index 0d46c96481..dfd874b107 100644 --- a/internal/integrations/operations/ingest_internalpolicy_persist.go +++ b/internal/integrations/operations/ingest_internalpolicy_persist.go @@ -3,6 +3,7 @@ package operations import ( "context" + "slices" ent "github.com/theopenlane/core/internal/ent/generated" "github.com/theopenlane/core/internal/ent/generated/internalpolicy" @@ -14,6 +15,10 @@ func persistInternalPolicyInput(ctx context.Context, db *ent.Client, integration return ErrIngestUpsertKeyMissing } + if integration.ID != "" && !slices.Contains(createInput.IntegrationIDs, integration.ID) { + createInput.IntegrationIDs = append(createInput.IntegrationIDs, integration.ID) + } + return persistRoundTripUpsert( ctx, createInput,