From 36f67affd4fb077435d4839efff6ec3dc966fc9c Mon Sep 17 00:00:00 2001
From: Huzaifa Iftikhar <hiftikhar@gitlab.com>
Date: Mon, 6 May 2024 11:29:00 +0000
Subject: [PATCH] Update schema to gitlab_main_clusterwide for instance wide
 tables

---
 db/docs/audit_events_instance_amazon_s3_configurations.yml      | 2 +-
 .../audit_events_instance_external_audit_event_destinations.yml | 2 +-
 ...udit_events_instance_google_cloud_logging_configurations.yml | 2 +-
 .../audit_events_streaming_http_instance_namespace_filters.yml  | 2 ++
 db/docs/audit_events_streaming_instance_event_type_filters.yml  | 2 +-
 db/docs/instance_audit_events_streaming_headers.yml             | 2 +-
 .../database/no_new_tables_with_gitlab_main_schema_spec.rb      | 1 -
 7 files changed, 7 insertions(+), 6 deletions(-)

diff --git a/db/docs/audit_events_instance_amazon_s3_configurations.yml b/db/docs/audit_events_instance_amazon_s3_configurations.yml
index 5cb049342ee0f..cedc68d25ee41 100644
--- a/db/docs/audit_events_instance_amazon_s3_configurations.yml
+++ b/db/docs/audit_events_instance_amazon_s3_configurations.yml
@@ -7,4 +7,4 @@ feature_categories:
 description: Stores Amazon S3 configurations used for instance level audit event streaming.
 introduced_by_url: https://gitlab.com/gitlab-org/gitlab/-/merge_requests/136492
 milestone: '16.7'
-gitlab_schema: gitlab_main
+gitlab_schema: gitlab_main_clusterwide
diff --git a/db/docs/audit_events_instance_external_audit_event_destinations.yml b/db/docs/audit_events_instance_external_audit_event_destinations.yml
index fe57989cec2dc..54c31eb8bfac6 100644
--- a/db/docs/audit_events_instance_external_audit_event_destinations.yml
+++ b/db/docs/audit_events_instance_external_audit_event_destinations.yml
@@ -7,4 +7,4 @@ feature_categories:
 description: Stores external destination urls for instance level audit events.
 introduced_by_url: https://gitlab.com/gitlab-org/gitlab/-/merge_requests/116909
 milestone: '15.11'
-gitlab_schema: gitlab_main
+gitlab_schema: gitlab_main_clusterwide
diff --git a/db/docs/audit_events_instance_google_cloud_logging_configurations.yml b/db/docs/audit_events_instance_google_cloud_logging_configurations.yml
index 059ab59d86046..ecf20cb390d44 100644
--- a/db/docs/audit_events_instance_google_cloud_logging_configurations.yml
+++ b/db/docs/audit_events_instance_google_cloud_logging_configurations.yml
@@ -7,4 +7,4 @@ feature_categories:
 description: Stores Instance level Google Cloud Logging configurations associated with IAM service accounts, used for generating access tokens.
 introduced_by_url: https://gitlab.com/gitlab-org/gitlab/-/issues/423036
 milestone: '16.4'
-gitlab_schema: gitlab_main
+gitlab_schema: gitlab_main_clusterwide
diff --git a/db/docs/audit_events_streaming_http_instance_namespace_filters.yml b/db/docs/audit_events_streaming_http_instance_namespace_filters.yml
index 9dc7d05a31514..1a136c24bcc1d 100644
--- a/db/docs/audit_events_streaming_http_instance_namespace_filters.yml
+++ b/db/docs/audit_events_streaming_http_instance_namespace_filters.yml
@@ -10,3 +10,5 @@ milestone: '16.7'
 gitlab_schema: gitlab_main_cell
 sharding_key:
   namespace_id: namespaces
+allow_cross_foreign_keys:
+  - gitlab_main_clusterwide
diff --git a/db/docs/audit_events_streaming_instance_event_type_filters.yml b/db/docs/audit_events_streaming_instance_event_type_filters.yml
index c70b840f25eba..64fd6c8413128 100644
--- a/db/docs/audit_events_streaming_instance_event_type_filters.yml
+++ b/db/docs/audit_events_streaming_instance_event_type_filters.yml
@@ -7,4 +7,4 @@ feature_categories:
 description: Represents an event type filter for audit event streaming
 introduced_by_url: https://gitlab.com/gitlab-org/gitlab/-/merge_requests/123330
 milestone: '16.1'
-gitlab_schema: gitlab_main
+gitlab_schema: gitlab_main_clusterwide
diff --git a/db/docs/instance_audit_events_streaming_headers.yml b/db/docs/instance_audit_events_streaming_headers.yml
index 40db0ead3bf2b..0915589f39f16 100644
--- a/db/docs/instance_audit_events_streaming_headers.yml
+++ b/db/docs/instance_audit_events_streaming_headers.yml
@@ -7,4 +7,4 @@ feature_categories:
 description: Represents a HTTP header sent with streaming audit events to instance level destinations
 introduced_by_url: https://gitlab.com/gitlab-org/gitlab/-/merge_requests/88063
 milestone: '16.1'
-gitlab_schema: gitlab_main
+gitlab_schema: gitlab_main_clusterwide
diff --git a/spec/lib/gitlab/database/no_new_tables_with_gitlab_main_schema_spec.rb b/spec/lib/gitlab/database/no_new_tables_with_gitlab_main_schema_spec.rb
index 704c6929c8a86..49274fbf445df 100644
--- a/spec/lib/gitlab/database/no_new_tables_with_gitlab_main_schema_spec.rb
+++ b/spec/lib/gitlab/database/no_new_tables_with_gitlab_main_schema_spec.rb
@@ -12,7 +12,6 @@
   # Specific tables can be exempted from this requirement, and such tables must be added to the `exempted_tables` list.
   let!(:exempted_tables) do
     [
-      "audit_events_instance_amazon_s3_configurations", # https://gitlab.com/gitlab-org/gitlab/-/issues/431327
       "sbom_source_packages"                            # https://gitlab.com/gitlab-org/gitlab/-/issues/437718
     ]
   end
-- 
GitLab