Skip to content

Migrations and models for group/project filters for group destinations

Hitesh Raghuvanshi requested to merge 424173-migration-filter-group into master

What does this MR do and why?

This MR adds migrations and models for supporting subgroup and project level filters for group level external audit event destinations.

Migrations

group_group_filter

up

rake db:migrate:up:main VERSION=20231016061148

main: == [advisory_lock_connection] object_id: 179420, pg_backend_pid: 89346
main: == 20231016061148 CreateAuditEventsStreamingHttpGroupGroupFilters: migrating ==
main: -- create_table(:audit_events_streaming_http_group_group_filters)
main:    -> 0.0148s
main: == 20231016061148 CreateAuditEventsStreamingHttpGroupGroupFilters: migrated (0.1662s)

down

rake db:migrate:down:main VERSION=20231016061148

main: == [advisory_lock_connection] object_id: 179400, pg_backend_pid: 88902
main: == 20231016061148 CreateAuditEventsStreamingHttpGroupGroupFilters: reverting ==
main: -- drop_table(:audit_events_streaming_http_group_group_filters)
main:    -> 0.0062s
main: == 20231016061148 CreateAuditEventsStreamingHttpGroupGroupFilters: reverted (0.0108s)

group_project_filter

up

rake db:migrate:up:main VERSION=20231016061239

main: == [advisory_lock_connection] object_id: 179420, pg_backend_pid: 90270
main: == 20231016061239 CreateAuditEventsStreamingHttpGroupProjectFilters: migrating
main: -- create_table(:audit_events_streaming_http_group_project_filters)
main:    -> 0.0059s
main: == 20231016061239 CreateAuditEventsStreamingHttpGroupProjectFilters: migrated (0.1472s)

main: == [advisory_lock_connection] object_id: 179420, pg_backend_pid: 90270

down

rake db:migrate:down:main VERSION=20231016061239

main: == [advisory_lock_connection] object_id: 179420, pg_backend_pid: 89796
main: == 20231016061239 CreateAuditEventsStreamingHttpGroupProjectFilters: reverting
main: -- drop_table(:audit_events_streaming_http_group_project_filters)
main:    -> 0.0023s
main: == 20231016061239 CreateAuditEventsStreamingHttpGroupProjectFilters: reverted (0.0076s)

main: == [advisory_lock_connection] object_id: 179420, pg_backend_pid: 89796

Sample queries for usage of tables

Fetch the list of all subgroup filters for a destination

select * from audit_events_streaming_http_group_group_filters where external_audit_event_destination_id = 6;

Fetch the list of all project filters for a destination

select * from audit_events_streaming_http_group_project_filters where external_audit_event_destination_id = 6;

MR acceptance checklist

This checklist encourages us to confirm any changes have been analyzed to reduce risks in quality, performance, reliability, security, and maintainability.

Closes #424173 (closed)

Edited by Hitesh Raghuvanshi

Merge request reports