diff --git a/db/docs/batched_background_migrations/delete_orphans_approval_merge_request_rules2.yml b/db/docs/batched_background_migrations/delete_orphans_approval_merge_request_rules2.yml index 5503e9580074f083bddcea49ba27918c9e97022b..cc37f47c428632e90d3e51080045cfb4ddb2f990 100644 --- a/db/docs/batched_background_migrations/delete_orphans_approval_merge_request_rules2.yml +++ b/db/docs/batched_background_migrations/delete_orphans_approval_merge_request_rules2.yml @@ -5,5 +5,5 @@ Odescription: | that could have been created with project import. feature_category: security_policy_management introduced_by_url: https://gitlab.com/gitlab-org/gitlab/-/merge_requests/127212 -queued_migration_version: 20230721095222 +queued_migration_version: 20230721095223 milestone: '16.5' diff --git a/db/post_migrate/20230721095222_delete_orphans_approval_project_rules2.rb b/db/post_migrate/20230721095222_delete_orphans_approval_project_rules2.rb new file mode 100644 index 0000000000000000000000000000000000000000..ee43d805ac41537cc957ff0871972977d3f15767 --- /dev/null +++ b/db/post_migrate/20230721095222_delete_orphans_approval_project_rules2.rb @@ -0,0 +1,23 @@ +# frozen_string_literal: true + +class DeleteOrphansApprovalProjectRules2 < Gitlab::Database::Migration[2.1] + restrict_gitlab_migration gitlab_schema: :gitlab_main + + PROJECT_MIGRATION = 'DeleteOrphansApprovalProjectRules2' + INTERVAL = 2.minutes + + def up + queue_batched_background_migration( + PROJECT_MIGRATION, + :approval_project_rules, + :id, + job_interval: INTERVAL, + batch_size: 500, + sub_batch_size: 100 + ) + end + + def down + delete_batched_background_migration(PROJECT_MIGRATION, :approval_project_rules, :id, []) + end +end diff --git a/db/post_migrate/20230721095222_delete_orphans_scan_finding_license_scanning_approval_rules2.rb b/db/post_migrate/20230721095223_delete_orphans_approval_merge_request_rules2.rb similarity index 54% rename from db/post_migrate/20230721095222_delete_orphans_scan_finding_license_scanning_approval_rules2.rb rename to db/post_migrate/20230721095223_delete_orphans_approval_merge_request_rules2.rb index cc8c0affdead89a26a29d6f9c4901758ce32d018..c9e2112067a5041a5f48e27ec6682f4f64964d55 100644 --- a/db/post_migrate/20230721095222_delete_orphans_scan_finding_license_scanning_approval_rules2.rb +++ b/db/post_migrate/20230721095223_delete_orphans_approval_merge_request_rules2.rb @@ -1,22 +1,12 @@ # frozen_string_literal: true -class DeleteOrphansScanFindingLicenseScanningApprovalRules2 < Gitlab::Database::Migration[2.1] +class DeleteOrphansApprovalMergeRequestRules2 < Gitlab::Database::Migration[2.1] restrict_gitlab_migration gitlab_schema: :gitlab_main MERGE_REQUEST_MIGRATION = 'DeleteOrphansApprovalMergeRequestRules2' - PROJECT_MIGRATION = 'DeleteOrphansApprovalProjectRules2' INTERVAL = 2.minutes def up - queue_batched_background_migration( - PROJECT_MIGRATION, - :approval_project_rules, - :id, - job_interval: INTERVAL, - batch_size: 500, - sub_batch_size: 100 - ) - queue_batched_background_migration( MERGE_REQUEST_MIGRATION, :approval_merge_request_rules, @@ -28,7 +18,6 @@ def up end def down - delete_batched_background_migration(PROJECT_MIGRATION, :approval_project_rules, :id, []) delete_batched_background_migration(MERGE_REQUEST_MIGRATION, :approval_merge_request_rules, :id, []) end end diff --git a/db/schema_migrations/20230721095223 b/db/schema_migrations/20230721095223 new file mode 100644 index 0000000000000000000000000000000000000000..fcaf2047ced4c3e070f37f47976157568336cc83 --- /dev/null +++ b/db/schema_migrations/20230721095223 @@ -0,0 +1 @@ +cc90683b1e4cf2f23917058f4f8537d4b91bcace568016c6f57adae5845ce68c \ No newline at end of file diff --git a/spec/migrations/20230721095222_delete_orphans_approval_project_rules2_spec.rb b/spec/migrations/20230721095222_delete_orphans_approval_project_rules2_spec.rb new file mode 100644 index 0000000000000000000000000000000000000000..6c3d6f7b3628e80ff8204d6f086079334d337628 --- /dev/null +++ b/spec/migrations/20230721095222_delete_orphans_approval_project_rules2_spec.rb @@ -0,0 +1,17 @@ +# frozen_string_literal: true + +require 'spec_helper' +require_migration! + +RSpec.describe DeleteOrphansApprovalProjectRules2, feature_category: :security_policy_management do + describe '#up' do + it 'schedules background migration for project approval rules' do + migrate! + + expect(described_class::PROJECT_MIGRATION).to have_scheduled_batched_migration( + table_name: :approval_project_rules, + column_name: :id, + interval: described_class::INTERVAL) + end + end +end diff --git a/spec/migrations/20230721095222_delete_orphans_scan_finding_license_scanning_approval_rules2_spec.rb b/spec/migrations/20230721095222_delete_orphans_scan_finding_license_scanning_approval_rules2_spec.rb deleted file mode 100644 index 2baf0975c5c26afa5c291bb9092fe13546986ee7..0000000000000000000000000000000000000000 --- a/spec/migrations/20230721095222_delete_orphans_scan_finding_license_scanning_approval_rules2_spec.rb +++ /dev/null @@ -1,22 +0,0 @@ -# frozen_string_literal: true - -require 'spec_helper' -require_migration! - -RSpec.describe DeleteOrphansScanFindingLicenseScanningApprovalRules2, feature_category: :security_policy_management do - describe '#up' do - it 'schedules background migration for both levels of approval rules' do - migrate! - - expect(described_class::MERGE_REQUEST_MIGRATION).to have_scheduled_batched_migration( - table_name: :approval_merge_request_rules, - column_name: :id, - interval: described_class::INTERVAL) - - expect(described_class::PROJECT_MIGRATION).to have_scheduled_batched_migration( - table_name: :approval_project_rules, - column_name: :id, - interval: described_class::INTERVAL) - end - end -end diff --git a/spec/migrations/20230721095223_delete_orphans_approval_merge_request_rules2_spec.rb b/spec/migrations/20230721095223_delete_orphans_approval_merge_request_rules2_spec.rb new file mode 100644 index 0000000000000000000000000000000000000000..caefb94e0cbbef8cccacc74bba9d38c6d56c793e --- /dev/null +++ b/spec/migrations/20230721095223_delete_orphans_approval_merge_request_rules2_spec.rb @@ -0,0 +1,17 @@ +# frozen_string_literal: true + +require 'spec_helper' +require_migration! + +RSpec.describe DeleteOrphansApprovalMergeRequestRules2, feature_category: :security_policy_management do + describe '#up' do + it 'schedules background migration for merge request approval rules' do + migrate! + + expect(described_class::MERGE_REQUEST_MIGRATION).to have_scheduled_batched_migration( + table_name: :approval_merge_request_rules, + column_name: :id, + interval: described_class::INTERVAL) + end + end +end