rspec unit pg12 4/28
Passed Started
by
@gitlab-bot

🤖 GitLab Bot 🤖
1 uses one of the allowed migration classes2 migration: #<struct ActiveRecord::MigrationProxy name="RemoveNotesNullDiscussionIdTempIndex", version=20220524081955, filename="/builds/gitlab-org/gitlab/db/post_migrate/20220524081955_remove_notes_null_discussion_id_temp_index.rb", scope="">3 uses one of the allowed migration classes4 migration: #<struct ActiveRecord::MigrationProxy name="PrepareJobArtifactProjectIdIndex", version=20220524132416, filename="/builds/gitlab-org/gitlab/db/post_migrate/20220524132416_prepare_job_artifact_project_id_index.rb", scope="">5 uses one of the allowed migration classes6 migration: #<struct ActiveRecord::MigrationProxy name="CreateAuditEventsStreamingHeaders", version=20220524141800, filename="db/migrate/20220524141800_create_audit_events_streaming_headers.rb", scope="">7 uses one of the allowed migration classes8 migration: #<struct ActiveRecord::MigrationProxy name="LimitProjectAndGroupVariables", version=20220524164122, filename="db/migrate/20220524164122_limit_project_and_group_variables.rb", scope="">9 uses one of the allowed migration classes10 migration: #<struct ActiveRecord::MigrationProxy name="CreateSyncProjectNamespaceDetailsTrigger", version=20220524184149, filename="db/migrate/20220524184149_create_sync_project_namespace_details_trigger.rb", scope="">11 uses one of the allowed migration classes12 migration: #<struct ActiveRecord::MigrationProxy name="AddApplicationSettingsContainerRegistryPreImportTagsRateConstraint", version=20220524191259, filename="db/migrate/20220524191259_add_application_settings_container_registry_pre_import_tags_rate_constraint.rb", scope="">13 uses one of the allowed migration classes14 migration: #<struct ActiveRecord::MigrationProxy name="DropIndexOnDeploymentsOnCreatedAtClusterIdAndProjectId", version=20220524202158, filename="/builds/gitlab-org/gitlab/db/post_migrate/20220524202158_drop_index_on_deployments_on_created_at_cluster_id_and_project_id.rb", scope="">15 uses one of the allowed migration classes16 migration: #<struct ActiveRecord::MigrationProxy name="CreateIssuableResourceLinks", version=20220525082303, filename="db/migrate/20220525082303_create_issuable_resource_links.rb", scope="">17 uses one of the allowed migration classes18 migration: #<struct ActiveRecord::MigrationProxy name="AddSentryProjectIdToProjectErrorTrackingSettings", version=20220525084153, filename="db/migrate/20220525084153_add_sentry_project_id_to_project_error_tracking_settings.rb", scope="">19 uses one of the allowed migration classes20 migration: #<struct ActiveRecord::MigrationProxy name="AddRawToCiPipelineVariables", version=20220525123825, filename="db/migrate/20220525123825_add_raw_to_ci_pipeline_variables.rb", scope="">21 uses one of the allowed migration classes22 migration: #<struct ActiveRecord::MigrationProxy name="AddRawToCiGroupVariables", version=20220525123851, filename="db/migrate/20220525123851_add_raw_to_ci_group_variables.rb", scope="">23 uses one of the allowed migration classes24 migration: #<struct ActiveRecord::MigrationProxy name="AddRawToCiInstanceVariables", version=20220525123914, filename="db/migrate/20220525123914_add_raw_to_ci_instance_variables.rb", scope="">25 uses one of the allowed migration classes26 migration: #<struct ActiveRecord::MigrationProxy name="AddRawToCiJobVariables", version=20220525123940, filename="db/migrate/20220525123940_add_raw_to_ci_job_variables.rb", scope="">27 uses one of the allowed migration classes28 migration: #<struct ActiveRecord::MigrationProxy name="AddRawToCiPipelineScheduleVariables", version=20220525124104, filename="db/migrate/20220525124104_add_raw_to_ci_pipeline_schedule_variables.rb", scope="">29 uses one of the allowed migration classes30 migration: #<struct ActiveRecord::MigrationProxy name="AddRawToCiVariables", version=20220525124125, filename="db/migrate/20220525124125_add_raw_to_ci_variables.rb", scope="">31 uses one of the allowed migration classes32 migration: #<struct ActiveRecord::MigrationProxy name="CleanupBackfillIntegrationsEnableSslVerification", version=20220525131557, filename="/builds/gitlab-org/gitlab/db/post_migrate/20220525131557_cleanup_backfill_integrations_enable_ssl_verification.rb", scope="">33 uses one of the allowed migration classes34 migration: #<struct ActiveRecord::MigrationProxy name="DropTemporaryIndexForBackfillIntegrationsEnableSslVerification", version=20220525131624, filename="/builds/gitlab-org/gitlab/db/post_migrate/20220525131624_drop_temporary_index_for_backfill_integrations_enable_ssl_verification.rb", scope="">35 uses one of the allowed migration classes36 migration: #<struct ActiveRecord::MigrationProxy name="MigrateProjectServiceWorkerQueue", version=20220525141540, filename="/builds/gitlab-org/gitlab/db/post_migrate/20220525141540_migrate_project_service_worker_queue.rb", scope="">37 uses one of the allowed migration classes38 migration: #<struct ActiveRecord::MigrationProxy name="MigrateIrkerWorkerQueue", version=20220525165334, filename="/builds/gitlab-org/gitlab/db/post_migrate/20220525165334_migrate_irker_worker_queue.rb", scope="">39 uses one of the allowed migration classes40 migration: #<struct ActiveRecord::MigrationProxy name="MigrateClusterIntegrationWorkerQueues", version=20220525172001, filename="/builds/gitlab-org/gitlab/db/post_migrate/20220525172001_migrate_cluster_integration_worker_queues.rb", scope="">41 uses one of the allowed migration classes42 migration: #<struct ActiveRecord::MigrationProxy name="AddTemporaryIndexForVulnerabilityReadsClusterAgentIdMigration", version=20220525201022, filename="/builds/gitlab-org/gitlab/db/post_migrate/20220525201022_add_temporary_index_for_vulnerability_reads_cluster_agent_id_migration.rb", scope="">43 uses one of the allowed migration classes44 migration: #<struct ActiveRecord::MigrationProxy name="ScheduleBackfillVulnerabilityReadsClusterAgent", version=20220525221133, filename="/builds/gitlab-org/gitlab/db/post_migrate/20220525221133_schedule_backfill_vulnerability_reads_cluster_agent.rb", scope="">45 uses one of the allowed migration classes46 migration: #<struct ActiveRecord::MigrationProxy name="RemoveGeoLfsObjectDeletedEventReferences", version=20220526042017, filename="/builds/gitlab-org/gitlab/db/post_migrate/20220526042017_remove_geo_lfs_object_deleted_event_references.rb", scope="">47 uses one of the allowed migration classes48 migration: #<struct ActiveRecord::MigrationProxy name="RemoveGeoLfsObjectDeletedEventsTable", version=20220526044516, filename="/builds/gitlab-org/gitlab/db/post_migrate/20220526044516_remove_geo_lfs_object_deleted_events_table.rb", scope="">49 uses one of the allowed migration classes50 migration: #<struct ActiveRecord::MigrationProxy name="AddIndexForVulnerabilityReadsLocationImage", version=20220530044712, filename="/builds/gitlab-org/gitlab/db/post_migrate/20220530044712_add_index_for_vulnerability_reads_location_image.rb", scope="">51 uses one of the allowed migration classes52 migration: #<struct ActiveRecord::MigrationProxy name="AddProjectIdIndexToJobArtifacts", version=20220530074027, filename="/builds/gitlab-org/gitlab/db/post_migrate/20220530074027_add_project_id_index_to_job_artifacts.rb", scope="">53 uses one of the allowed migration classes54 migration: #<struct ActiveRecord::MigrationProxy name="AddTraversalIdTypeGroupIndex", version=20220530082653, filename="/builds/gitlab-org/gitlab/db/post_migrate/20220530082653_add_traversal_id_type_group_index.rb", scope="">55 uses one of the allowed migration classes56 migration: #<struct ActiveRecord::MigrationProxy name="AddCreatedAtAndIdIndexToDeploymentApprovals", version=20220530103023, filename="db/migrate/20220530103023_add_created_at_and_id_index_to_deployment_approvals.rb", scope="">57 uses one of the allowed migration classes58 migration: #<struct ActiveRecord::MigrationProxy name="AddTimestampsToComplianceFrameworks", version=20220530104431, filename="db/migrate/20220530104431_add_timestamps_to_compliance_frameworks.rb", scope="">59 uses one of the allowed migration classes60 migration: #<struct ActiveRecord::MigrationProxy name="AddIndexForVulnerabilityStateTransition", version=20220530170915, filename="/builds/gitlab-org/gitlab/db/post_migrate/20220530170915_add_index_for_vulnerability_state_transition.rb", scope="">61 uses one of the allowed migration classes62 migration: #<struct ActiveRecord::MigrationProxy name="TrackClustersDeletions", version=20220531024142, filename="/builds/gitlab-org/gitlab/db/post_migrate/20220531024142_track_clusters_deletions.rb", scope="">63 uses one of the allowed migration classes64 migration: #<struct ActiveRecord::MigrationProxy name="RemoveClustersDeploymentsClusterIdFk", version=20220531024143, filename="/builds/gitlab-org/gitlab/db/post_migrate/20220531024143_remove_clusters_deployments_cluster_id_fk.rb", scope="">65 uses one of the allowed migration classes66 migration: #<struct ActiveRecord::MigrationProxy name="AddOperationsAccessLevelsToProjectFeature", version=20220531024905, filename="db/migrate/20220531024905_add_operations_access_levels_to_project_feature.rb", scope="">67 uses one of the allowed migration classes68 migration: #<struct ActiveRecord::MigrationProxy name="PopulateOperationVisibilityPermissions", version=20220531035113, filename="/builds/gitlab-org/gitlab/db/post_migrate/20220531035113_populate_operation_visibility_permissions.rb", scope="">69 uses one of the allowed migration classes70 migration: #<struct ActiveRecord::MigrationProxy name="AddLicenseUsageDataExportedToApplicationSettings", version=20220531100920, filename="db/migrate/20220531100920_add_license_usage_data_exported_to_application_settings.rb", scope="">71 uses one of the allowed migration classes72 migration: #<struct ActiveRecord::MigrationProxy name="AddAppliesToAllProtectedBranchesToApprovalProjectRule", version=20220531140515, filename="db/migrate/20220531140515_add_applies_to_all_protected_branches_to_approval_project_rule.rb", scope="">73 uses one of the allowed migration classes74 migration: #<struct ActiveRecord::MigrationProxy name="RemoveSseUsageDataFromRedis", version=20220531233600, filename="/builds/gitlab-org/gitlab/db/post_migrate/20220531233600_remove_sse_usage_data_from_redis.rb", scope="">75 uses one of the allowed migration classes76 migration: #<struct ActiveRecord::MigrationProxy name="FinalizeBackfillIssueSearchData", version=20220601040233, filename="/builds/gitlab-org/gitlab/db/post_migrate/20220601040233_finalize_backfill_issue_search_data.rb", scope="">77 uses one of the allowed migration classes78 migration: #<struct ActiveRecord::MigrationProxy name="AddSemverColumnToCiRunners", version=20220601091804, filename="db/migrate/20220601091804_add_semver_column_to_ci_runners.rb", scope="">79 uses one of the allowed migration classes80 migration: #<struct ActiveRecord::MigrationProxy name="AddTextLimitToCiRunnersSemver", version=20220601091805, filename="db/migrate/20220601091805_add_text_limit_to_ci_runners_semver.rb", scope="">81 uses one of the allowed migration classes82 migration: #<struct ActiveRecord::MigrationProxy name="AddIndexOnRunnerIdAndSemverColumns", version=20220601101800, filename="db/migrate/20220601101800_add_index_on_runner_id_and_semver_columns.rb", scope="">83 uses one of the allowed migration classes84 migration: #<struct ActiveRecord::MigrationProxy name="ScheduleRemoveSelfManagedWikiNotes", version=20220601110011, filename="/builds/gitlab-org/gitlab/db/post_migrate/20220601110011_schedule_remove_self_managed_wiki_notes.rb", scope="">85 uses one of the allowed migration classes86 migration: #<struct ActiveRecord::MigrationProxy name="ScheduleBackfillCiRunnerSemver", version=20220601151900, filename="/builds/gitlab-org/gitlab/db/post_migrate/20220601151900_schedule_backfill_ci_runner_semver.rb", scope="">87 uses one of the allowed migration classes88 migration: #<struct ActiveRecord::MigrationProxy name="AddUserIdAndIpAddressSuccessIndexToAuthenticationEvents", version=20220601152916, filename="/builds/gitlab-org/gitlab/db/post_migrate/20220601152916_add_user_id_and_ip_address_success_index_to_authentication_events.rb", scope="">89 uses one of the allowed migration classes90 migration: #<struct ActiveRecord::MigrationProxy name="AddVulnerabilityRelatedColumns", version=20220601223501, filename="db/migrate/20220601223501_add_vulnerability_related_columns.rb", scope="">91 uses one of the allowed migration classes92 migration: #<struct ActiveRecord::MigrationProxy name="QueueBackfillProjectFeaturePackageRegistryAccessLevel", version=20220602070502, filename="/builds/gitlab-org/gitlab/db/post_migrate/20220602070502_queue_backfill_project_feature_package_registry_access_level.rb", scope="">93 uses one of the allowed migration classes94 migration: #<struct ActiveRecord::MigrationProxy name="PrepareIndexForOpenIssuesCount", version=20220602111923, filename="/builds/gitlab-org/gitlab/db/post_migrate/20220602111923_prepare_index_for_open_issues_count.rb", scope="">95 uses one of the allowed migration classes96 migration: #<struct ActiveRecord::MigrationProxy name="AddNamespaceTypeIndex", version=20220602130306, filename="db/migrate/20220602130306_add_namespace_type_index.rb", scope="">97 uses one of the allowed migration classes98 migration: #<struct ActiveRecord::MigrationProxy name="DropCiBuildReportResultsBuildIdSequence", version=20220603095158, filename="db/migrate/20220603095158_drop_ci_build_report_results_build_id_sequence.rb", scope="">99 uses one of the allowed migration classes100 migration: #<struct ActiveRecord::MigrationProxy name="AddShowDiffPreviewInEmailToNamespaceSettings", version=20220603125200, filename="db/migrate/20220603125200_add_show_diff_preview_in_email_to_namespace_settings.rb", scope="">101 uses one of the allowed migration classes102 migration: #<struct ActiveRecord::MigrationProxy name="UpdateVulnerabilitiesProjectIdIdIndex", version=20220603173103, filename="/builds/gitlab-org/gitlab/db/post_migrate/20220603173103_update_vulnerabilities_project_id_id_index.rb", scope="">103 uses one of the allowed migration classes104 migration: #<struct ActiveRecord::MigrationProxy name="AddUrlVarsToWebHook", version=20220605170009, filename="db/migrate/20220605170009_add_url_vars_to_web_hook.rb", scope="">105 uses one of the allowed migration classes106 migration: #<struct ActiveRecord::MigrationProxy name="AddTmpIndexJobArtifactsIdAndExpireAt", version=20220606054503, filename="/builds/gitlab-org/gitlab/db/post_migrate/20220606054503_add_tmp_index_job_artifacts_id_and_expire_at.rb", scope="">107 uses one of the allowed migration classes108 migration: #<struct ActiveRecord::MigrationProxy name="SetOnDeleteCascadeOnNamespaceIdOnRoutesTable", version=20220606060825, filename="/builds/gitlab-org/gitlab/db/post_migrate/20220606060825_set_on_delete_cascade_on_namespace_id_on_routes_table.rb", scope="">109 uses one of the allowed migration classes110 migration: #<struct ActiveRecord::MigrationProxy name="AddNotNullConstraintOnRoutesNamespaceId", version=20220606060850, filename="/builds/gitlab-org/gitlab/db/post_migrate/20220606060850_add_not_null_constraint_on_routes_namespace_id.rb", scope="">111 uses one of the allowed migration classes112 migration: #<struct ActiveRecord::MigrationProxy name="FixIncorrectJobArtifactsExpireAt", version=20220606080509, filename="/builds/gitlab-org/gitlab/db/post_migrate/20220606080509_fix_incorrect_job_artifacts_expire_at.rb", scope="">113 uses one of the allowed migration classes114 migration: #<struct ActiveRecord::MigrationProxy name="AddTmpIndexForPotentiallyMisassociatedVulnerabilityOccurrences", version=20220606082910, filename="/builds/gitlab-org/gitlab/db/post_migrate/20220606082910_add_tmp_index_for_potentially_misassociated_vulnerability_occurrences.rb", scope="">115 uses one of the allowed migration classes116 migration: #<struct ActiveRecord::MigrationProxy name="AddPhoneVerificationCodeEnabledToApplicationSettings", version=20220607011733, filename="db/migrate/20220607011733_add_phone_verification_code_enabled_to_application_settings.rb", scope="">117 uses one of the allowed migration classes118 migration: #<struct ActiveRecord::MigrationProxy name="AddSyncTmpIndexForPotentiallyMisassociatedVulnerabilityOccurrences", version=20220607082910, filename="/builds/gitlab-org/gitlab/db/post_migrate/20220607082910_add_sync_tmp_index_for_potentially_misassociated_vulnerability_occurrences.rb", scope="">119 uses one of the allowed migration classes120 migration: #<struct ActiveRecord::MigrationProxy name="DropCiPipelinesConfigPipelineIdSequence", version=20220607095219, filename="db/migrate/20220607095219_drop_ci_pipelines_config_pipeline_id_sequence.rb", scope="">121 uses one of the allowed migration classes122 migration: #<struct ActiveRecord::MigrationProxy name="DropCiJobArtifactStatesJobArtifactIdSequence", version=20220607115703, filename="db/migrate/20220607115703_drop_ci_job_artifact_states_job_artifact_id_sequence.rb", scope="">123 uses one of the allowed migration classes124 migration: #<struct ActiveRecord::MigrationProxy name="RemoveInvalidIntegrations", version=20220607140222, filename="/builds/gitlab-org/gitlab/db/post_migrate/20220607140222_remove_invalid_integrations.rb", scope="">125 uses one of the allowed migration classes126 migration: #<struct ActiveRecord::MigrationProxy name="AddMaxRepositoryDownloadsLimitToApplicationSettings", version=20220608074738, filename="db/migrate/20220608074738_add_max_repository_downloads_limit_to_application_settings.rb", scope="">127 uses one of the allowed migration classes128 migration: #<struct ActiveRecord::MigrationProxy name="PrepareConfidentialNoteIndexOnId", version=20220608114734, filename="db/migrate/20220608114734_prepare_confidential_note_index_on_id.rb", scope="">129 uses one of the allowed migration classes130 migration: #<struct ActiveRecord::MigrationProxy name="AddPartialIndexOnSlackIntegrationsWithBotUserId", version=20220609150626, filename="db/migrate/20220609150626_add_partial_index_on_slack_integrations_with_bot_user_id.rb", scope="">131 uses one of the allowed migration classes132 migration: #<struct ActiveRecord::MigrationProxy name="RemoveDeploymentClustersClusterIdFk", version=20220609195803, filename="/builds/gitlab-org/gitlab/db/post_migrate/20220609195803_remove_deployment_clusters_cluster_id_fk.rb", scope="">133 uses one of the allowed migration classes134 migration: #<struct ActiveRecord::MigrationProxy name="AddEpicIssueWeight", version=20220610074326, filename="db/migrate/20220610074326_add_epic_issue_weight.rb", scope="">135 uses one of the allowed migration classes136 migration: #<struct ActiveRecord::MigrationProxy name="AddEnabledGitAccessProtocolToNamespaceSettings", version=20220610125248, filename="db/migrate/20220610125248_add_enabled_git_access_protocol_to_namespace_settings.rb", scope="">137 uses one of the allowed migration classes138 migration: #<struct ActiveRecord::MigrationProxy name="ChangePublicProjectsCostFactor", version=20220610140605, filename="db/migrate/20220610140605_change_public_projects_cost_factor.rb", scope="">139 uses one of the allowed migration classes140 migration: #<struct ActiveRecord::MigrationProxy name="AddIndexOnAvailablePypiPackages", version=20220610223040, filename="/builds/gitlab-org/gitlab/db/post_migrate/20220610223040_add_index_on_available_pypi_packages.rb", scope="">141 uses one of the allowed migration classes142 migration: #<struct ActiveRecord::MigrationProxy name="AddUniqueProjectDownloadLimitSettingsToNamespaceSettings", version=20220613054349, filename="db/migrate/20220613054349_add_unique_project_download_limit_settings_to_namespace_settings.rb", scope="">143 uses one of the allowed migration classes144 migration: #<struct ActiveRecord::MigrationProxy name="CreateConfidentialNotesIndexOnId", version=20220613095911, filename="/builds/gitlab-org/gitlab/db/post_migrate/20220613095911_create_confidential_notes_index_on_id.rb", scope="">145 uses one of the allowed migration classes146 migration: #<struct ActiveRecord::MigrationProxy name="AddNamespaceIdToProtectedBranches", version=20220613112029, filename="db/migrate/20220613112029_add_namespace_id_to_protected_branches.rb", scope="">147 uses one of the allowed migration classes148 migration: #<struct ActiveRecord::MigrationProxy name="AddNamespaceIdIndexesForeignKeyToProtectedBranches", version=20220613112030, filename="db/migrate/20220613112030_add_namespace_id_indexes_foreign_key_to_protected_branches.rb", scope="">149 uses one of the allowed migration classes150 migration: #<struct ActiveRecord::MigrationProxy name="AddGroupOrProjectConstraintInProtectedBranches", version=20220613112031, filename="db/migrate/20220613112031_add_group_or_project_constraint_in_protected_branches.rb", scope="">151 uses one of the allowed migration classes152 migration: #<struct ActiveRecord::MigrationProxy name="ChangeProjectIdNullInProtectedBranches", version=20220613112032, filename="db/migrate/20220613112032_change_project_id_null_in_protected_branches.rb", scope="">153 uses one of the allowed migration classes154 migration: #<struct ActiveRecord::MigrationProxy name="AddHasVulnerabilitiesToClusterAgents", version=20220614095912, filename="db/migrate/20220614095912_add_has_vulnerabilities_to_cluster_agents.rb", scope="">155 uses one of the allowed migration classes156 migration: #<struct ActiveRecord::MigrationProxy name="AddToggleOptInJwt", version=20220614120415, filename="db/migrate/20220614120415_add_toggle_opt_in_jwt.rb", scope="">157 uses one of the allowed migration classes158 migration: #<struct ActiveRecord::MigrationProxy name="UpdateIndexVulnerabilitiesProjectIdId", version=20220614185644, filename="/builds/gitlab-org/gitlab/db/post_migrate/20220614185644_update_index_vulnerabilities_project_id_id.rb", scope="">159 uses one of the allowed migration classes160 migration: #<struct ActiveRecord::MigrationProxy name="AddCreatedAtIndexToComplianceManagementFrameworks", version=20220615091059, filename="db/migrate/20220615091059_add_created_at_index_to_compliance_management_frameworks.rb", scope="">161 uses one of the allowed migration classes162 migration: #<struct ActiveRecord::MigrationProxy name="AddIndexOnClustersAgentProjectIdAndHasVulnerabilitiesColumns", version=20220615105811, filename="db/migrate/20220615105811_add_index_on_clusters_agent_project_id_and_has_vulnerabilities_columns.rb", scope="">163 uses one of the allowed migration classes164 migration: #<struct ActiveRecord::MigrationProxy name="ScheduleBackfillClusterAgentsHasVulnerabilities", version=20220615154500, filename="/builds/gitlab-org/gitlab/db/post_migrate/20220615154500_schedule_backfill_cluster_agents_has_vulnerabilities.rb", scope="">165 uses one of the allowed migration classes166 migration: #<struct ActiveRecord::MigrationProxy name="AddUserPreferenceToTurnOffAutomaticLists", version=20220615172230, filename="db/migrate/20220615172230_add_user_preference_to_turn_off_automatic_lists.rb", scope="">167 uses one of the allowed migration classes168 migration: #<struct ActiveRecord::MigrationProxy name="PrepareIndexIssuesOnProjectIdAndClosedAt", version=20220616092541, filename="/builds/gitlab-org/gitlab/db/post_migrate/20220616092541_prepare_index_issues_on_project_id_and_closed_at.rb", scope="">169 uses one of the allowed migration classes170 migration: #<struct ActiveRecord::MigrationProxy name="UpdateVulnerabilitiesProjectIdIdActiveCisIndex", version=20220616171355, filename="/builds/gitlab-org/gitlab/db/post_migrate/20220616171355_update_vulnerabilities_project_id_id_active_cis_index.rb", scope="">171 uses one of the allowed migration classes172 migration: #<struct ActiveRecord::MigrationProxy name="CreateSbomComponents", version=20220616182001, filename="db/migrate/20220616182001_create_sbom_components.rb", scope="">173 uses one of the allowed migration classes174 migration: #<struct ActiveRecord::MigrationProxy name="CreateSbomComponentVersions", version=20220616182015, filename="db/migrate/20220616182015_create_sbom_component_versions.rb", scope="">175 uses one of the allowed migration classes176 migration: #<struct ActiveRecord::MigrationProxy name="CreateSbomSources", version=20220616182016, filename="db/migrate/20220616182016_create_sbom_sources.rb", scope="">177 uses one of the allowed migration classes178 migration: #<struct ActiveRecord::MigrationProxy name="CreateSbomOccurrences", version=20220616182038, filename="db/migrate/20220616182038_create_sbom_occurrences.rb", scope="">179 uses one of the allowed migration classes180 migration: #<struct ActiveRecord::MigrationProxy name="AddSbomComponentVersionsForeignKeyToSbomOccurrences", version=20220616183240, filename="db/migrate/20220616183240_add_sbom_component_versions_foreign_key_to_sbom_occurrences.rb", scope="">181 uses one of the allowed migration classes182 migration: #<struct ActiveRecord::MigrationProxy name="AddSbomSourceForeignKeyToSbomOccurrences", version=20220616183309, filename="db/migrate/20220616183309_add_sbom_source_foreign_key_to_sbom_occurrences.rb", scope="">183 uses one of the allowed migration classes184 migration: #<struct ActiveRecord::MigrationProxy name="AddProjectForeignKeyToSbomOccurrences", version=20220616183310, filename="db/migrate/20220616183310_add_project_foreign_key_to_sbom_occurrences.rb", scope="">185 uses one of the allowed migration classes186 migration: #<struct ActiveRecord::MigrationProxy name="RemoveCiSecureFilesPermissionsColumn", version=20220616222253, filename="/builds/gitlab-org/gitlab/db/post_migrate/20220616222253_remove_ci_secure_files_permissions_column.rb", scope="">187 uses one of the allowed migration classes188 migration: #<struct ActiveRecord::MigrationProxy name="AddIndexForOpenIssuesCount", version=20220617073407, filename="/builds/gitlab-org/gitlab/db/post_migrate/20220617073407_add_index_for_open_issues_count.rb", scope="">189 uses one of the allowed migration classes190 migration: #<struct ActiveRecord::MigrationProxy name="AddUniqueIndexOnProjectsOnRunnersToken", version=20220617123022, filename="/builds/gitlab-org/gitlab/db/post_migrate/20220617123022_add_unique_index_on_projects_on_runners_token.rb", scope="">191 uses one of the allowed migration classes192 migration: #<struct ActiveRecord::MigrationProxy name="AddUniqueIndexOnProjectsOnRunnersTokenEncrypted", version=20220617123034, filename="/builds/gitlab-org/gitlab/db/post_migrate/20220617123034_add_unique_index_on_projects_on_runners_token_encrypted.rb", scope="">193 uses one of the allowed migration classes194 migration: #<struct ActiveRecord::MigrationProxy name="DropIndexOnProjectsOnRunnersToken", version=20220617123105, filename="/builds/gitlab-org/gitlab/db/post_migrate/20220617123105_drop_index_on_projects_on_runners_token.rb", scope="">195 uses one of the allowed migration classes196 migration: #<struct ActiveRecord::MigrationProxy name="DropIndexOnProjectsOnRunnersTokenEncrypted", version=20220617123113, filename="/builds/gitlab-org/gitlab/db/post_migrate/20220617123113_drop_index_on_projects_on_runners_token_encrypted.rb", scope="">197 uses one of the allowed migration classes198 migration: #<struct ActiveRecord::MigrationProxy name="DropTempIndexOnProjectsOnIdAndRunnersToken", version=20220617123135, filename="db/migrate/20220617123135_drop_temp_index_on_projects_on_id_and_runners_token.rb", scope="">199 uses one of the allowed migration classes200 migration: #<struct ActiveRecord::MigrationProxy name="DropTempIndexOnProjectsOnIdAndRunnersTokenEncrypted", version=20220617123144, filename="db/migrate/20220617123144_drop_temp_index_on_projects_on_id_and_runners_token_encrypted.rb", scope="">201 uses one of the allowed migration classes202 migration: #<struct ActiveRecord::MigrationProxy name="CreateCiSecureFileStates", version=20220617141347, filename="db/migrate/20220617141347_create_ci_secure_file_states.rb", scope="">203 uses one of the allowed migration classes204 migration: #<struct ActiveRecord::MigrationProxy name="AddIndexOnInstallablePackageFiles", version=20220617142124, filename="/builds/gitlab-org/gitlab/db/post_migrate/20220617142124_add_index_on_installable_package_files.rb", scope="">205 uses one of the allowed migration classes206 migration: #<struct ActiveRecord::MigrationProxy name="ReplacePackagesIndexOnProjectIdAndStatus", version=20220617143228, filename="/builds/gitlab-org/gitlab/db/post_migrate/20220617143228_replace_packages_index_on_project_id_and_status.rb", scope="">207 uses one of the allowed migration classes208 migration: #<struct ActiveRecord::MigrationProxy name="CreateProjectRelationExports", version=20220619182308, filename="db/migrate/20220619182308_create_project_relation_exports.rb", scope="">209 uses one of the allowed migration classes210 migration: #<struct ActiveRecord::MigrationProxy name="CreateProjectRelationExportUploads", version=20220619184931, filename="db/migrate/20220619184931_create_project_relation_export_uploads.rb", scope="">211 uses one of the allowed migration classes212 migration: #<struct ActiveRecord::MigrationProxy name="AddSelectiveCodeOwnerRemovalsToProjectSettings", version=20220619212618, filename="db/migrate/20220619212618_add_selective_code_owner_removals_to_project_settings.rb", scope="">213 uses one of the allowed migration classes214 migration: #<struct ActiveRecord::MigrationProxy name="FinalizeOrphanedRoutesCleanup", version=20220620060633, filename="/builds/gitlab-org/gitlab/db/post_migrate/20220620060633_finalize_orphaned_routes_cleanup.rb", scope="">215 uses one of the allowed migration classes216 migration: #<struct ActiveRecord::MigrationProxy name="UpdateLastRunDateForIterationsCadences", version=20220620132300, filename="/builds/gitlab-org/gitlab/db/post_migrate/20220620132300_update_last_run_date_for_iterations_cadences.rb", scope="">217 uses one of the allowed migration classes218 migration: #<struct ActiveRecord::MigrationProxy name="AddIndexesIssuesOnProjectIdAndClosedAt", version=20220620151740, filename="/builds/gitlab-org/gitlab/db/post_migrate/20220620151740_add_indexes_issues_on_project_id_and_closed_at.rb", scope="">219 uses one of the allowed migration classes220 migration: #<struct ActiveRecord::MigrationProxy name="BackfillImportedIssueSearchData", version=20220621040800, filename="/builds/gitlab-org/gitlab/db/post_migrate/20220621040800_backfill_imported_issue_search_data.rb", scope="">221 uses one of the allowed migration classes222 migration: #<struct ActiveRecord::MigrationProxy name="RemoveTmpIndexOnRoutesNamespaceIdColumn", version=20220621082245, filename="/builds/gitlab-org/gitlab/db/post_migrate/20220621082245_remove_tmp_index_on_routes_namespace_id_column.rb", scope="">223 uses one of the allowed migration classes224 migration: #<struct ActiveRecord::MigrationProxy name="ValidateNotNullConstraintOnRoutesNamespaceIdColumn", version=20220621092245, filename="/builds/gitlab-org/gitlab/db/post_migrate/20220621092245_validate_not_null_constraint_on_routes_namespace_id_column.rb", scope="">225 uses one of the allowed migration classes226 migration: #<struct ActiveRecord::MigrationProxy name="AddProjectIdStateSeverityDefaultBranchIndexForVulnerabilities", version=20220621192541, filename="/builds/gitlab-org/gitlab/db/post_migrate/20220621192541_add_project_id_state_severity_default_branch_index_for_vulnerabilities.rb", scope="">227 uses one of the allowed migration classes228 migration: #<struct ActiveRecord::MigrationProxy name="AddPartialIndexOnOauthAccessTokensRevokedAt", version=20220621202616, filename="db/migrate/20220621202616_add_partial_index_on_oauth_access_tokens_revoked_at.rb", scope="">229 uses one of the allowed migration classes230 migration: #<struct ActiveRecord::MigrationProxy name="AddTempIndexForContainerRegistrySizeMigration", version=20220622070547, filename="/builds/gitlab-org/gitlab/db/post_migrate/20220622070547_add_temp_index_for_container_registry_size_migration.rb", scope="">231 uses one of the allowed migration classes232 migration: #<struct ActiveRecord::MigrationProxy name="BackfillProjectStatisticsWithContainerRegistrySize", version=20220622080547, filename="/builds/gitlab-org/gitlab/db/post_migrate/20220622080547_backfill_project_statistics_with_container_registry_size.rb", scope="">233 uses one of the allowed migration classes234 migration: #<struct ActiveRecord::MigrationProxy name="DeleteBackfillCiRunnerSemverMigration", version=20220624062300, filename="/builds/gitlab-org/gitlab/db/post_migrate/20220624062300_delete_backfill_ci_runner_semver_migration.rb", scope="">235 uses one of the allowed migration classes236 migration: #<struct ActiveRecord::MigrationProxy name="AddCiRunnerVersionsTable", version=20220624081524, filename="db/migrate/20220624081524_add_ci_runner_versions_table.rb", scope="">237 uses one of the allowed migration classes238 migration: #<struct ActiveRecord::MigrationProxy name="AddIndexOnRunnerVersion", version=20220624090458, filename="db/migrate/20220624090458_add_index_on_runner_version.rb", scope="">239 uses one of the allowed migration classes240 migration: #<struct ActiveRecord::MigrationProxy name="AddFeiShuIntegration", version=20220627061008, filename="db/migrate/20220627061008_add_fei_shu_integration.rb", scope="">241 uses one of the allowed migration classes242 migration: #<struct ActiveRecord::MigrationProxy name="ScheduleDisableLegacyOpenSourceLicenseForInactivePublicProjects", version=20220627090231, filename="/builds/gitlab-org/gitlab/db/post_migrate/20220627090231_schedule_disable_legacy_open_source_license_for_inactive_public_projects.rb", scope="">243 uses one of the allowed migration classes244 migration: #<struct ActiveRecord::MigrationProxy name="CreateUserNamespaceCallouts", version=20220627122229, filename="db/migrate/20220627122229_create_user_namespace_callouts.rb", scope="">245 uses one of the allowed migration classes246 migration: #<struct ActiveRecord::MigrationProxy name="AddForeignKeysToUserNamespaceCallouts", version=20220627122230, filename="db/migrate/20220627122230_add_foreign_keys_to_user_namespace_callouts.rb", scope="">247 uses one of the allowed migration classes248 migration: #<struct ActiveRecord::MigrationProxy name="AddLastFeatureFlagUpdatedAtToOperationsFeatureFlagsClients", version=20220627140315, filename="db/migrate/20220627140315_add_last_feature_flag_updated_at_to_operations_feature_flags_clients.rb", scope="">249 uses one of the allowed migration classes250 migration: #<struct ActiveRecord::MigrationProxy name="QueueUpdateDelayedProjectRemovalToNullForUserNamespace", version=20220627152642, filename="/builds/gitlab-org/gitlab/db/post_migrate/20220627152642_queue_update_delayed_project_removal_to_null_for_user_namespace.rb", scope="">251 uses one of the allowed migration classes252 migration: #<struct ActiveRecord::MigrationProxy name="AddErrorTrackingSettings", version=20220627171538, filename="db/migrate/20220627171538_add_error_tracking_settings.rb", scope="">253 uses one of the allowed migration classes254 migration: #<struct ActiveRecord::MigrationProxy name="AddPostMigrateTestTable", version=20220627223041, filename="/builds/gitlab-org/gitlab/db/post_migrate/20220627223041_add_post_migrate_test_table.rb", scope="">255 uses one of the allowed migration classes256 migration: #<struct ActiveRecord::MigrationProxy name="FinaliseProjectNamespaceMembers", version=20220628012902, filename="/builds/gitlab-org/gitlab/db/post_migrate/20220628012902_finalise_project_namespace_members.rb", scope="">257 uses one of the allowed migration classes258 migration: #<struct ActiveRecord::MigrationProxy name="AddNamespaceIdColumnToIssuesTable", version=20220628110214, filename="db/migrate/20220628110214_add_namespace_id_column_to_issues_table.rb", scope="">259 uses one of the allowed migration classes260 migration: #<struct ActiveRecord::MigrationProxy name="AddIssuesNamespaceIdFkAndIndex", version=20220628110823, filename="/builds/gitlab-org/gitlab/db/post_migrate/20220628110823_add_issues_namespace_id_fk_and_index.rb", scope="">261 uses one of the allowed migration classes262 migration: #<struct ActiveRecord::MigrationProxy name="DropTokenIndexFromCiBuilds", version=20220628111752, filename="/builds/gitlab-org/gitlab/db/post_migrate/20220628111752_drop_token_index_from_ci_builds.rb", scope="">263 uses one of the allowed migration classes264 migration: #<struct ActiveRecord::MigrationProxy name="CreateNamespaceBans", version=20220628120708, filename="db/migrate/20220628120708_create_namespace_bans.rb", scope="">265 uses one of the allowed migration classes266 migration: #<struct ActiveRecord::MigrationProxy name="AddNamespaceBansNamespaceIdForeignKey", version=20220628121644, filename="db/migrate/20220628121644_add_namespace_bans_namespace_id_foreign_key.rb", scope="">267 uses one of the allowed migration classes268 migration: #<struct ActiveRecord::MigrationProxy name="AddNamespaceBansUserIdForeignKey", version=20220628121712, filename="db/migrate/20220628121712_add_namespace_bans_user_id_foreign_key.rb", scope="">269 uses one of the allowed migration classes270 migration: #<struct ActiveRecord::MigrationProxy name="RenameBuildsSidekiqQueuesToNamespaces", version=20220628122622, filename="/builds/gitlab-org/gitlab/db/post_migrate/20220628122622_rename_builds_sidekiq_queues_to_namespaces.rb", scope="">271 uses one of the allowed migration classes272 migration: #<struct ActiveRecord::MigrationProxy name="RemoveVulnerabilityOccurrencesMigratedToNewStructureColumn", version=20220629124942, filename="/builds/gitlab-org/gitlab/db/post_migrate/20220629124942_remove_vulnerability_occurrences_migrated_to_new_structure_column.rb", scope="">273 uses one of the allowed migration classes274 migration: #<struct ActiveRecord::MigrationProxy name="UnsetEscalationPoliciesForAlertIncidents", version=20220629184402, filename="/builds/gitlab-org/gitlab/db/post_migrate/20220629184402_unset_escalation_policies_for_alert_incidents.rb", scope="">275 uses one of the allowed migration classes276 migration: #<struct ActiveRecord::MigrationProxy name="IncreaseWebauthnXidLength", version=20220629220129, filename="db/migrate/20220629220129_increase_webauthn_xid_length.rb", scope="">277 uses one of the allowed migration classes278 migration: #<struct ActiveRecord::MigrationProxy name="IndexVulnerabilityReadsOnCastedClusterAgentIdFull", version=20220630050050, filename="/builds/gitlab-org/gitlab/db/post_migrate/20220630050050_index_vulnerability_reads_on_casted_cluster_agent_id_full.rb", scope="">279 uses one of the allowed migration classes280 migration: #<struct ActiveRecord::MigrationProxy name="DropProjectSuccessfullPagesDeployIndexFromCiBuilds", version=20220630085003, filename="/builds/gitlab-org/gitlab/db/post_migrate/20220630085003_drop_project_successfull_pages_deploy_index_from_ci_builds.rb", scope="">281 uses one of the allowed migration classes282 migration: #<struct ActiveRecord::MigrationProxy name="AddIndexOnEventsForContributionAnalyticsOptimization", version=20220630091409, filename="/builds/gitlab-org/gitlab/db/post_migrate/20220630091409_add_index_on_events_for_contribution_analytics_optimization.rb", scope="">283 uses one of the allowed migration classes284 migration: #<struct ActiveRecord::MigrationProxy name="ScheduleSetCorrectVulnerabilityState", version=20220630151641, filename="/builds/gitlab-org/gitlab/db/post_migrate/20220630151641_schedule_set_correct_vulnerability_state.rb", scope="">285 uses one of the allowed migration classes286 migration: #<struct ActiveRecord::MigrationProxy name="AddPartialIndexOnOauthAccessTokensRevokedAtWithOrder", version=20220630202329, filename="db/migrate/20220630202329_add_partial_index_on_oauth_access_tokens_revoked_at_with_order.rb", scope="">287 uses one of the allowed migration classes288 migration: #<struct ActiveRecord::MigrationProxy name="ScheduleIndexOnEventsForContributionAnalyticsOptimization", version=20220701085523, filename="/builds/gitlab-org/gitlab/db/post_migrate/20220701085523_schedule_index_on_events_for_contribution_analytics_optimization.rb", scope="">289 uses one of the allowed migration classes290 migration: #<struct ActiveRecord::MigrationProxy name="RemoveNotNullConstraintsFromRequirements", version=20220701173859, filename="db/migrate/20220701173859_remove_not_null_constraints_from_requirements.rb", scope="">291 uses one of the allowed migration classes292 migration: #<struct ActiveRecord::MigrationProxy name="AddFindingsPartitionNumberToSecurityScans", version=20220703182234, filename="db/migrate/20220703182234_add_findings_partition_number_to_security_scans.rb", scope="">293 uses one of the allowed migration classes294 migration: #<struct ActiveRecord::MigrationProxy name="AddPartitionNumberToSecurityFindings", version=20220703182254, filename="db/migrate/20220703182254_add_partition_number_to_security_findings.rb", scope="">295 uses one of the allowed migration classes296 migration: #<struct ActiveRecord::MigrationProxy name="AddCheckConstraintForSecurityFindingsPartitionNumber", version=20220703182314, filename="/builds/gitlab-org/gitlab/db/post_migrate/20220703182314_add_check_constraint_for_security_findings_partition_number.rb", scope="">297 uses one of the allowed migration classes298 migration: #<struct ActiveRecord::MigrationProxy name="AddUsersAllowlistToGitRateLimits", version=20220704034050, filename="db/migrate/20220704034050_add_users_allowlist_to_git_rate_limits.rb", scope="">299 uses one of the allowed migration classes300 migration: #<struct ActiveRecord::MigrationProxy name="AddApplicationSettingsGitUsersAllowlistMaxUsernamesConstraint", version=20220704034105, filename="db/migrate/20220704034105_add_application_settings_git_users_allowlist_max_usernames_constraint.rb", scope="">301 uses one of the allowed migration classes302 migration: #<struct ActiveRecord::MigrationProxy name="RemoveForeignKeyInProjectTracingSettings", version=20220704044408, filename="/builds/gitlab-org/gitlab/db/post_migrate/20220704044408_remove_foreign_key_in_project_tracing_settings.rb", scope="">303 uses one of the allowed migration classes304 migration: #<struct ActiveRecord::MigrationProxy name="DropProjectTracingSettingsTable", version=20220704045440, filename="/builds/gitlab-org/gitlab/db/post_migrate/20220704045440_drop_project_tracing_settings_table.rb", scope="">305 uses one of the allowed migration classes306 migration: #<struct ActiveRecord::MigrationProxy name="DropIndexOnCiRunnerVersionsOnVersion", version=20220705114635, filename="/builds/gitlab-org/gitlab/db/post_migrate/20220705114635_drop_index_on_ci_runner_versions_on_version.rb", scope="">307 uses one of the allowed migration classes308 migration: #<struct ActiveRecord::MigrationProxy name="AddProjectImportLevelToNamespaceSettings", version=20220705145349, filename="db/migrate/20220705145349_add_project_import_level_to_namespace_settings.rb", scope="">309 uses one of the allowed migration classes310 migration: #<struct ActiveRecord::MigrationProxy name="ValidateRequirementsIssueIdNotNull", version=20220705180843, filename="/builds/gitlab-org/gitlab/db/post_migrate/20220705180843_validate_requirements_issue_id_not_null.rb", scope="">311 uses one of the allowed migration classes312 migration: #<struct ActiveRecord::MigrationProxy name="RemoveForeignKeyInClustersApplicationsElasticStacks", version=20220706065245, filename="/builds/gitlab-org/gitlab/db/post_migrate/20220706065245_remove_foreign_key_in_clusters_applications_elastic_stacks.rb", scope="">313 uses one of the allowed migration classes314 migration: #<struct ActiveRecord::MigrationProxy name="RemoveForeignKeyInClustersIntegrationElasticstack", version=20220706065611, filename="/builds/gitlab-org/gitlab/db/post_migrate/20220706065611_remove_foreign_key_in_clusters_integration_elasticstack.rb", scope="">315 uses one of the allowed migration classes316 migration: #<struct ActiveRecord::MigrationProxy name="DropClustersApplicationsElasticStacksTable", version=20220706070804, filename="/builds/gitlab-org/gitlab/db/post_migrate/20220706070804_drop_clusters_applications_elastic_stacks_table.rb", scope="">317 uses one of the allowed migration classes318 migration: #<struct ActiveRecord::MigrationProxy name="DropClustersIntegrationElasticstackTable", version=20220706071304, filename="/builds/gitlab-org/gitlab/db/post_migrate/20220706071304_drop_clusters_integration_elasticstack_table.rb", scope="">319 uses one of the allowed migration classes320 migration: #<struct ActiveRecord::MigrationProxy name="CreateAsyncIndexOnSecurityFindings", version=20220706115138, filename="/builds/gitlab-org/gitlab/db/post_migrate/20220706115138_create_async_index_on_security_findings.rb", scope="">321 uses one of the allowed migration classes322 migration: #<struct ActiveRecord::MigrationProxy name="CreateIndexOnSecurityFindingsUuidIdDesc", version=20220706122719, filename="/builds/gitlab-org/gitlab/db/post_migrate/20220706122719_create_index_on_security_findings_uuid_id_desc.rb", scope="">323 uses one of the allowed migration classes324 migration: #<struct ActiveRecord::MigrationProxy name="AddIndicesOnSecurityScansInfoColumn", version=20220706132238, filename="/builds/gitlab-org/gitlab/db/post_migrate/20220706132238_add_indices_on_security_scans_info_column.rb", scope="">325 uses one of the allowed migration classes326 migration: #<struct ActiveRecord::MigrationProxy name="BackfillNamespaceIdOnIssues", version=20220706145113, filename="/builds/gitlab-org/gitlab/db/post_migrate/20220706145113_backfill_namespace_id_on_issues.rb", scope="">327 uses one of the allowed migration classes328 migration: #<struct ActiveRecord::MigrationProxy name="AddEncryptedErrorTrackingAccessToken", version=20220706191627, filename="db/migrate/20220706191627_add_encrypted_error_tracking_access_token.rb", scope="">329 uses one of the allowed migration classes330 migration: #<struct ActiveRecord::MigrationProxy name="RescheduleBackfillImportedIssueSearchData", version=20220707075300, filename="/builds/gitlab-org/gitlab/db/post_migrate/20220707075300_reschedule_backfill_imported_issue_search_data.rb", scope="">331 uses one of the allowed migration classes332 migration: #<struct ActiveRecord::MigrationProxy name="RenameChatNameServiceIdToIntegrationId", version=20220707105335, filename="db/migrate/20220707105335_rename_chat_name_service_id_to_integration_id.rb", scope="">333 uses one of the allowed migration classes334 migration: #<struct ActiveRecord::MigrationProxy name="CleanupChatNameServiceId", version=20220707105529, filename="/builds/gitlab-org/gitlab/db/post_migrate/20220707105529_cleanup_chat_name_service_id.rb", scope="">335 uses one of the allowed migration classes336 migration: #<struct ActiveRecord::MigrationProxy name="RenameSlackIntegrationServiceIdToIntegrationId", version=20220707160707, filename="db/migrate/20220707160707_rename_slack_integration_service_id_to_integration_id.rb", scope="">337 uses one of the allowed migration classes338 migration: #<struct ActiveRecord::MigrationProxy name="CleanupSlackIntegrationServiceId", version=20220707160921, filename="/builds/gitlab-org/gitlab/db/post_migrate/20220707160921_cleanup_slack_integration_service_id.rb", scope="">339 uses one of the allowed migration classes340 migration: #<struct ActiveRecord::MigrationProxy name="CreateMemberRoles", version=20220707181910, filename="db/migrate/20220707181910_create_member_roles.rb", scope="">341 uses one of the allowed migration classes342 migration: #<struct ActiveRecord::MigrationProxy name="AddMemberRoleIdToMembers", version=20220707181920, filename="db/migrate/20220707181920_add_member_role_id_to_members.rb", scope="">343 uses one of the allowed migration classes344 migration: #<struct ActiveRecord::MigrationProxy name="AddMemberRolesRelationToMembers", version=20220707181930, filename="db/migrate/20220707181930_add_member_roles_relation_to_members.rb", scope="">345 uses one of the allowed migration classes346 migration: #<struct ActiveRecord::MigrationProxy name="AddPlanLimitsMaxSizeCyclonedxReportColumn", version=20220707190546, filename="db/migrate/20220707190546_add_plan_limits_max_size_cyclonedx_report_column.rb", scope="">347 uses one of the allowed migration classes348 migration: #<struct ActiveRecord::MigrationProxy name="RemoveTmpIdxMergeRequestsDraftAndStatus", version=20220707192420, filename="/builds/gitlab-org/gitlab/db/post_migrate/20220707192420_remove_tmp_idx_merge_requests_draft_and_status.rb", scope="">349 uses one of the allowed migration classes350 migration: #<struct ActiveRecord::MigrationProxy name="DropIndexOnCiRunnerVersionsOnStatus", version=20220708100508, filename="/builds/gitlab-org/gitlab/db/post_migrate/20220708100508_drop_index_on_ci_runner_versions_on_status.rb", scope="">351 uses one of the allowed migration classes352 migration: #<struct ActiveRecord::MigrationProxy name="AddUniqueIndexOnCiRunnerVersionsOnStatusAndVersion", version=20220708100532, filename="db/migrate/20220708100532_add_unique_index_on_ci_runner_versions_on_status_and_version.rb", scope="">353 uses one of the allowed migration classes354 migration: #<struct ActiveRecord::MigrationProxy name="CreateVulnerabilityMergeRequestLinks", version=20220708132701, filename="db/migrate/20220708132701_create_vulnerability_merge_request_links.rb", scope="">355 uses one of the allowed migration classes356 migration: #<struct ActiveRecord::MigrationProxy name="AddCompositeIndexForProtectedEnvironments", version=20220708142744, filename="db/migrate/20220708142744_add_composite_index_for_protected_environments.rb", scope="">357 uses one of the allowed migration classes358 migration: #<struct ActiveRecord::MigrationProxy name="AddCompositeIndexForProtectedEnvironmentApprovalRules", version=20220708142803, filename="db/migrate/20220708142803_add_composite_index_for_protected_environment_approval_rules.rb", scope="">359 uses one of the allowed migration classes360 migration: #<struct ActiveRecord::MigrationProxy name="AddVulnerabilitiesForeignKeyToVulnerabilityMergeRequestLinks", version=20220708150315, filename="db/migrate/20220708150315_add_vulnerabilities_foreign_key_to_vulnerability_merge_request_links.rb", scope="">361 uses one of the allowed migration classes362 migration: #<struct ActiveRecord::MigrationProxy name="AddMergeRequestsForeignKeyToVulnerabilityMergeRequestLinks", version=20220708150335, filename="db/migrate/20220708150335_add_merge_requests_foreign_key_to_vulnerability_merge_request_links.rb", scope="">363 uses one of the allowed migration classes364 migration: #<struct ActiveRecord::MigrationProxy name="CleanupBackfillDraftStatusOnMergeRequests", version=20220708184822, filename="db/migrate/20220708184822_cleanup_backfill_draft_status_on_merge_requests.rb", scope="">365 uses one of the allowed migration classes366 migration: #<struct ActiveRecord::MigrationProxy name="AddInvitationFlowEnforcementToApplicationSettings", version=20220711142148, filename="db/migrate/20220711142148_add_invitation_flow_enforcement_to_application_settings.rb", scope="">367 uses one of the allowed migration classes368 migration: #<struct ActiveRecord::MigrationProxy name="UpdateInsertOrUpdateVulnerabilityReadsFunction", version=20220712025712, filename="db/migrate/20220712025712_update_insert_or_update_vulnerability_reads_function.rb", scope="">369 uses one of the allowed migration classes370 migration: #<struct ActiveRecord::MigrationProxy name="CreateVulnerabilityReadsForAnExistingVulnerabilityRecord", version=20220712031923, filename="db/migrate/20220712031923_create_vulnerability_reads_for_an_existing_vulnerability_record.rb", scope="">371 uses one of the allowed migration classes372 migration: #<struct ActiveRecord::MigrationProxy name="AddIncludeForFreeUserCapPreviewToNamespaceSettings", version=20220712094945, filename="db/migrate/20220712094945_add_include_for_free_user_cap_preview_to_namespace_settings.rb", scope="">373 uses one of the allowed migration classes374 migration: #<struct ActiveRecord::MigrationProxy name="RenameIssueTrackerDataServiceIdToIntegrationId", version=20220712131513, filename="db/migrate/20220712131513_rename_issue_tracker_data_service_id_to_integration_id.rb", scope="">375 uses one of the allowed migration classes376 migration: #<struct ActiveRecord::MigrationProxy name="CleanupIssueTrackerDataServiceId", version=20220712131533, filename="/builds/gitlab-org/gitlab/db/post_migrate/20220712131533_cleanup_issue_tracker_data_service_id.rb", scope="">377 uses one of the allowed migration classes378 migration: #<struct ActiveRecord::MigrationProxy name="RenameJiraTrackerDataServiceIdToIntegrationId", version=20220712144843, filename="db/migrate/20220712144843_rename_jira_tracker_data_service_id_to_integration_id.rb", scope="">379 uses one of the allowed migration classes380 migration: #<struct ActiveRecord::MigrationProxy name="CleanupJiraTrackerDataServiceId", version=20220712144900, filename="/builds/gitlab-org/gitlab/db/post_migrate/20220712144900_cleanup_jira_tracker_data_service_id.rb", scope="">381 uses one of the allowed migration classes382 migration: #<struct ActiveRecord::MigrationProxy name="AddIndexWithTargetTypeToTodos", version=20220712175029, filename="/builds/gitlab-org/gitlab/db/post_migrate/20220712175029_add_index_with_target_type_to_todos.rb", scope="">383 uses one of the allowed migration classes384 migration: #<struct ActiveRecord::MigrationProxy name="RemoveDeprecatedIndexesFromTodos", version=20220712181304, filename="/builds/gitlab-org/gitlab/db/post_migrate/20220712181304_remove_deprecated_indexes_from_todos.rb", scope="">385 uses one of the allowed migration classes386 migration: #<struct ActiveRecord::MigrationProxy name="CleanupBackfillDraftStatusesOnMergeRequests", version=20220713133515, filename="/builds/gitlab-org/gitlab/db/post_migrate/20220713133515_cleanup_backfill_draft_statuses_on_merge_requests.rb", scope="">387 uses one of the allowed migration classes388 migration: #<struct ActiveRecord::MigrationProxy name="AddPackagesCleanupPoliciesWorkerCapacityToApplicationSettings", version=20220713175658, filename="db/migrate/20220713175658_add_packages_cleanup_policies_worker_capacity_to_application_settings.rb", scope="">389 uses one of the allowed migration classes390 migration: #<struct ActiveRecord::MigrationProxy name="AddApplicationSettingsPackagesCleanupPoliciesWorkerCapacityConstraint", version=20220713175737, filename="db/migrate/20220713175737_add_application_settings_packages_cleanup_policies_worker_capacity_constraint.rb", scope="">391 uses one of the allowed migration classes392 migration: #<struct ActiveRecord::MigrationProxy name="AddEnabledPoliciesIndexToPackagesCleanupPolicies", version=20220713175812, filename="db/migrate/20220713175812_add_enabled_policies_index_to_packages_cleanup_policies.rb", scope="">393 uses one of the allowed migration classes394 migration: #<struct ActiveRecord::MigrationProxy name="UpdateDefaultProjectImportLevelOnNamespaceSettings", version=20220714105122, filename="db/migrate/20220714105122_update_default_project_import_level_on_namespace_settings.rb", scope="">395 uses one of the allowed migration classes396 migration: #<struct ActiveRecord::MigrationProxy name="AddAsyncIndexOnSecurityFindingsIdAndPartitionNumber", version=20220714122311, filename="/builds/gitlab-org/gitlab/db/post_migrate/20220714122311_add_async_index_on_security_findings_id_and_partition_number.rb", scope="">397 uses one of the allowed migration classes398 migration: #<struct ActiveRecord::MigrationProxy name="AddAsyncIndexOnSecurityFindingsUniqueColumns", version=20220714122418, filename="/builds/gitlab-org/gitlab/db/post_migrate/20220714122418_add_async_index_on_security_findings_unique_columns.rb", scope="">399 uses one of the allowed migration classes400 migration: #<struct ActiveRecord::MigrationProxy name="UpdateTriggerUpdateVulnerabilityReadsOnVulnerabilityUpdate", version=20220714142424, filename="db/migrate/20220714142424_update_trigger_update_vulnerability_reads_on_vulnerability_update.rb", scope="">401 uses one of the allowed migration classes402 migration: #<struct ActiveRecord::MigrationProxy name="AddParentLinkUniqueWorkItemIndex", version=20220715054506, filename="/builds/gitlab-org/gitlab/db/post_migrate/20220715054506_add_parent_link_unique_work_item_index.rb", scope="">403 uses one of the allowed migration classes404 migration: #<struct ActiveRecord::MigrationProxy name="BackfillProjectImportLevel", version=20220715152108, filename="/builds/gitlab-org/gitlab/db/post_migrate/20220715152108_backfill_project_import_level.rb", scope="">405 uses one of the allowed migration classes406 migration: #<struct ActiveRecord::MigrationProxy name="DropPostMigrationTestTable", version=20220715160023, filename="/builds/gitlab-org/gitlab/db/post_migrate/20220715160023_drop_post_migration_test_table.rb", scope="">407 uses one of the allowed migration classes408 migration: #<struct ActiveRecord::MigrationProxy name="UpdateNotesInPast", version=20220715163254, filename="/builds/gitlab-org/gitlab/db/post_migrate/20220715163254_update_notes_in_past.rb", scope="">409 uses one of the allowed migration classes410 migration: #<struct ActiveRecord::MigrationProxy name="AddIndexOnSecurityFindingsIdAndPartitionNumber", version=20220715185348, filename="/builds/gitlab-org/gitlab/db/post_migrate/20220715185348_add_index_on_security_findings_id_and_partition_number.rb", scope="">411 uses one of the allowed migration classes412 migration: #<struct ActiveRecord::MigrationProxy name="AddIndexOnSecurityFindingsUniqueColumns", version=20220715185436, filename="/builds/gitlab-org/gitlab/db/post_migrate/20220715185436_add_index_on_security_findings_unique_columns.rb", scope="">413 uses one of the allowed migration classes414 migration: #<struct ActiveRecord::MigrationProxy name="DropIndexOnSecurityFindingsUuidAndScanId", version=20220715190612, filename="/builds/gitlab-org/gitlab/db/post_migrate/20220715190612_drop_index_on_security_findings_uuid_and_scan_id.rb", scope="">415 uses one of the allowed migration classes416 migration: #<struct ActiveRecord::MigrationProxy name="ChangePrimaryKeyOfSecurityFindingsTable", version=20220715191629, filename="/builds/gitlab-org/gitlab/db/post_migrate/20220715191629_change_primary_key_of_security_findings_table.rb", scope="">417 uses one of the allowed migration classes418 migration: #<struct ActiveRecord::MigrationProxy name="AddUniqueProjectDownloadLimitAllowlistToNamespaceSettings", version=20220718083945, filename="db/migrate/20220718083945_add_unique_project_download_limit_allowlist_to_namespace_settings.rb", scope="">419 uses one of the allowed migration classes420 migration: #<struct ActiveRecord::MigrationProxy name="DropQueuedAtIndexFromCiBuilds", version=20220719081542, filename="/builds/gitlab-org/gitlab/db/post_migrate/20220719081542_drop_queued_at_index_from_ci_builds.rb", scope="">421 uses one of the allowed migration classes422 migration: #<struct ActiveRecord::MigrationProxy name="RemoveCiRunnersSemverColumn", version=20220719165537, filename="/builds/gitlab-org/gitlab/db/post_migrate/20220719165537_remove_ci_runners_semver_column.rb", scope="">423 uses one of the allowed migration classes424 migration: #<struct ActiveRecord::MigrationProxy name="RemovePendingBuildsCoveringIndexFromCiBuilds", version=20220720090354, filename="/builds/gitlab-org/gitlab/db/post_migrate/20220720090354_remove_pending_builds_covering_index_from_ci_builds.rb", scope="">425 uses one of the allowed migration classes426 migration: #<struct ActiveRecord::MigrationProxy name="RemovePatAndSshEnforcementColumnsFromApplicationSettings", version=20220720121421, filename="/builds/gitlab-org/gitlab/db/post_migrate/20220720121421_remove_pat_and_ssh_enforcement_columns_from_application_settings.rb", scope="">427 uses one of the allowed migration classes428 migration: #<struct ActiveRecord::MigrationProxy name="RemoveTokenColumnFromCiBuilds", version=20220720123249, filename="/builds/gitlab-org/gitlab/db/post_migrate/20220720123249_remove_token_column_from_ci_builds.rb", scope="">429 uses one of the allowed migration classes430 migration: #<struct ActiveRecord::MigrationProxy name="AddNamespaceIdToVulnerabilityReadsTable", version=20220720161816, filename="db/migrate/20220720161816_add_namespace_id_to_vulnerability_reads_table.rb", scope="">431 uses one of the allowed migration classes432 migration: #<struct ActiveRecord::MigrationProxy name="UpdateVulnerabilityReadsTriggersToSetNamespaceId", version=20220720162123, filename="db/migrate/20220720162123_update_vulnerability_reads_triggers_to_set_namespace_id.rb", scope="">433 uses one of the allowed migration classes434 migration: #<struct ActiveRecord::MigrationProxy name="AddIndexOnVulnerabilityReadsNamespaceId", version=20220720171102, filename="/builds/gitlab-org/gitlab/db/post_migrate/20220720171102_add_index_on_vulnerability_reads_namespace_id.rb", scope="">435 uses one of the allowed migration classes436 migration: #<struct ActiveRecord::MigrationProxy name="AddForeignKeyOnVulnerabilityReadsNamespaceId", version=20220720171801, filename="/builds/gitlab-org/gitlab/db/post_migrate/20220720171801_add_foreign_key_on_vulnerability_reads_namespace_id.rb", scope="">437 uses one of the allowed migration classes438 migration: #<struct ActiveRecord::MigrationProxy name="AddStartDateToIssuesTable", version=20220720210446, filename="db/migrate/20220720210446_add_start_date_to_issues_table.rb", scope="">439 uses one of the allowed migration classes440 migration: #<struct ActiveRecord::MigrationProxy name="ScheduleDisableLegacyOpenSourceLicenseForOneMemberNoRepoProjects", version=20220721031446, filename="/builds/gitlab-org/gitlab/db/post_migrate/20220721031446_schedule_disable_legacy_open_source_license_for_one_member_no_repo_projects.rb", scope="">441 uses one of the allowed migration classes442 migration: #<struct ActiveRecord::MigrationProxy name="AddIssueBranchTemplateToProjectSettings", version=20220721065723, filename="db/migrate/20220721065723_add_issue_branch_template_to_project_settings.rb", scope="">443 uses one of the allowed migration classes444 migration: #<struct ActiveRecord::MigrationProxy name="PreparePartialTrigramIndexesForIssues", version=20220721140252, filename="/builds/gitlab-org/gitlab/db/post_migrate/20220721140252_prepare_partial_trigram_indexes_for_issues.rb", scope="">445 uses one of the allowed migration classes446 migration: #<struct ActiveRecord::MigrationProxy name="ScheduleDisableLegacyOpenSourceLicenseForNoIssuesNoRepoProjects", version=20220722084543, filename="/builds/gitlab-org/gitlab/db/post_migrate/20220722084543_schedule_disable_legacy_open_source_license_for_no_issues_no_repo_projects.rb", scope="">447 uses one of the allowed migration classes448 migration: #<struct ActiveRecord::MigrationProxy name="RescheduleSetLegacyOpenSourceLicenseAvailableForNonPublicProjects", version=20220722110026, filename="/builds/gitlab-org/gitlab/db/post_migrate/20220722110026_reschedule_set_legacy_open_source_license_available_for_non_public_projects.rb", scope="">449 uses one of the allowed migration classes450 migration: #<struct ActiveRecord::MigrationProxy name="UpdateDelayedDeletionPeriod", version=20220722123318, filename="db/migrate/20220722123318_update_delayed_deletion_period.rb", scope="">451 uses one of the allowed migration classes452 migration: #<struct ActiveRecord::MigrationProxy name="ScheduleBackfillingTheNamespaceIdForVulnerabilityReads", version=20220722145845, filename="/builds/gitlab-org/gitlab/db/post_migrate/20220722145845_schedule_backfilling_the_namespace_id_for_vulnerability_reads.rb", scope="">453 uses one of the allowed migration classes454 migration: #<struct ActiveRecord::MigrationProxy name="CreateFunctionGitlabSchemaPreventWrite", version=20220722150231, filename="db/migrate/20220722150231_create_function_gitlab_schema_prevent_write.rb", scope="">455 uses one of the allowed migration classes456 migration: #<struct ActiveRecord::MigrationProxy name="UpdateLockWritesFunctionDisabledViaSetting", version=20220722203840, filename="db/migrate/20220722203840_update_lock_writes_function_disabled_via_setting.rb", scope="">457 uses one of the allowed migration classes458 migration: #<struct ActiveRecord::MigrationProxy name="AddAuthorIdToVulnerabilityStateTransitions", version=20220723120039, filename="db/migrate/20220723120039_add_author_id_to_vulnerability_state_transitions.rb", scope="">459 uses one of the allowed migration classes460 migration: #<struct ActiveRecord::MigrationProxy name="UpdateJiraTrackerDataDeploymentTypeBasedOnUrl", version=20220725150127, filename="/builds/gitlab-org/gitlab/db/post_migrate/20220725150127_update_jira_tracker_data_deployment_type_based_on_url.rb", scope="">461 uses one of the allowed migration classes462 migration: #<struct ActiveRecord::MigrationProxy name="AddNamespaceSettingsUniqueProjectDownloadLimitAllowlistSizeConstraint", version=20220726025516, filename="db/migrate/20220726025516_add_namespace_settings_unique_project_download_limit_allowlist_size_constraint.rb", scope="">463 uses one of the allowed migration classes464 migration: #<struct ActiveRecord::MigrationProxy name="EnsureSbomOccurrencesIsEmpty", version=20220726154012, filename="db/migrate/20220726154012_ensure_sbom_occurrences_is_empty.rb", scope="">465 uses one of the allowed migration classes466 migration: #<struct ActiveRecord::MigrationProxy name="AddComponentIdToSbomOccurrences", version=20220726154013, filename="db/migrate/20220726154013_add_component_id_to_sbom_occurrences.rb", scope="">467 uses one of the allowed migration classes468 migration: #<struct ActiveRecord::MigrationProxy name="AddIndexToSbomOccurrencesComponentId", version=20220726154014, filename="db/migrate/20220726154014_add_index_to_sbom_occurrences_component_id.rb", scope="">469 uses one of the allowed migration classes470 migration: #<struct ActiveRecord::MigrationProxy name="AddComponentForeignKeyToSbomOccurrences", version=20220726154015, filename="db/migrate/20220726154015_add_component_foreign_key_to_sbom_occurrences.rb", scope="">471 uses one of the allowed migration classes472 migration: #<struct ActiveRecord::MigrationProxy name="MakeComponentVersionNullable", version=20220726154016, filename="db/migrate/20220726154016_make_component_version_nullable.rb", scope="">473 uses one of the allowed migration classes474 migration: #<struct ActiveRecord::MigrationProxy name="CreateGhostUserMigrations", version=20220726171440, filename="db/migrate/20220726171440_create_ghost_user_migrations.rb", scope="">475 uses one of the allowed migration classes476 migration: #<struct ActiveRecord::MigrationProxy name="AddUserFkToGhostUserMigrations", version=20220726171450, filename="db/migrate/20220726171450_add_user_fk_to_ghost_user_migrations.rb", scope="">477 uses one of the allowed migration classes478 migration: #<struct ActiveRecord::MigrationProxy name="AddUserFkToVulnerabilityStateTransitions", version=20220726182310, filename="/builds/gitlab-org/gitlab/db/post_migrate/20220726182310_add_user_fk_to_vulnerability_state_transitions.rb", scope="">479 uses one of the allowed migration classes480 migration: #<struct ActiveRecord::MigrationProxy name="RemoveTmpIndexGroupMembershipNamespaceIdColumn", version=20220726225114, filename="/builds/gitlab-org/gitlab/db/post_migrate/20220726225114_remove_tmp_index_group_membership_namespace_id_column.rb", scope="">481 uses one of the allowed migration classes482 migration: #<struct ActiveRecord::MigrationProxy name="RemoveTmpIndexProjectMembershipNamespaceIdColumn", version=20220726230052, filename="db/migrate/20220726230052_remove_tmp_index_project_membership_namespace_id_column.rb", scope="">483 uses one of the allowed migration classes484 migration: #<struct ActiveRecord::MigrationProxy name="MakeSshSignatureKeyNullable", version=20220728114136, filename="db/migrate/20220728114136_make_ssh_signature_key_nullable.rb", scope="">485 uses one of the allowed migration classes486 migration: #<struct ActiveRecord::MigrationProxy name="UpdateIndexVulnerabilitiesCommonFinder", version=20220728134255, filename="/builds/gitlab-org/gitlab/db/post_migrate/20220728134255_update_index_vulnerabilities_common_finder.rb", scope="">487 uses one of the allowed migration classes488 migration: #<struct ActiveRecord::MigrationProxy name="AddPartialLegacyOpenSourceLicenseAvailableIndex", version=20220729033851, filename="/builds/gitlab-org/gitlab/db/post_migrate/20220729033851_add_partial_legacy_open_source_license_available_index.rb", scope="">489 uses one of the allowed migration classes490 migration: #<struct ActiveRecord::MigrationProxy name="AddIndexOnVulnerabilityReadsNamespaceIdWithReportType", version=20220729052031, filename="/builds/gitlab-org/gitlab/db/post_migrate/20220729052031_add_index_on_vulnerability_reads_namespace_id_with_report_type.rb", scope="">491 uses one of the allowed migration classes492 migration: #<struct ActiveRecord::MigrationProxy name="IndexPersonalAccessTokensOnIdAndCreatedAt", version=20220729073603, filename="db/migrate/20220729073603_index_personal_access_tokens_on_id_and_created_at.rb", scope="">493 uses one of the allowed migration classes494 migration: #<struct ActiveRecord::MigrationProxy name="AddPartialTrigramIndexForIssueTitle", version=20220801144713, filename="/builds/gitlab-org/gitlab/db/post_migrate/20220801144713_add_partial_trigram_index_for_issue_title.rb", scope="">495 uses one of the allowed migration classes496 migration: #<struct ActiveRecord::MigrationProxy name="AddPartialTrigramIndexForIssueDescription", version=20220801150028, filename="/builds/gitlab-org/gitlab/db/post_migrate/20220801150028_add_partial_trigram_index_for_issue_description.rb", scope="">497 uses one of the allowed migration classes498 migration: #<struct ActiveRecord::MigrationProxy name="ScheduleDisableLegacyOpenSourceLicenceForRecentPublicProjects", version=20220801155858, filename="/builds/gitlab-org/gitlab/db/post_migrate/20220801155858_schedule_disable_legacy_open_source_licence_for_recent_public_projects.rb", scope="">499 uses one of the allowed migration classes500 migration: #<struct ActiveRecord::MigrationProxy name="ScheduleMigrateSharedVulnerabilityScanners", version=20220802112102, filename="/builds/gitlab-org/gitlab/db/post_migrate/20220802112102_schedule_migrate_shared_vulnerability_scanners.rb", scope="">501 uses one of the allowed migration classes502 migration: #<struct ActiveRecord::MigrationProxy name="RescheduleBackfillContainerRegistrySizeIntoProjectStatistics", version=20220802114351, filename="/builds/gitlab-org/gitlab/db/post_migrate/20220802114351_reschedule_backfill_container_registry_size_into_project_statistics.rb", scope="">503 uses one of the allowed migration classes504 migration: #<struct ActiveRecord::MigrationProxy name="IndexOnIntegrationTypeNewIdWhenActiveAndHasGroup", version=20220802132158, filename="/builds/gitlab-org/gitlab/db/post_migrate/20220802132158_index_on_integration_type_new_id_when_active_and_has_group.rb", scope="">505 uses one of the allowed migration classes506 migration: #<struct ActiveRecord::MigrationProxy name="AddDeactivateDormantUserTimeSetting", version=20220802154757, filename="db/migrate/20220802154757_add_deactivate_dormant_user_time_setting.rb", scope="">507 uses one of the allowed migration classes508 migration: #<struct ActiveRecord::MigrationProxy name="AddUserDetailsProfileFields", version=20220802200719, filename="db/migrate/20220802200719_add_user_details_profile_fields.rb", scope="">509 uses one of the allowed migration classes510 migration: #<struct ActiveRecord::MigrationProxy name="AddUserDetailsFieldLimits", version=20220802202505, filename="db/migrate/20220802202505_add_user_details_field_limits.rb", scope="">511 uses one of the allowed migration classes512 migration: #<struct ActiveRecord::MigrationProxy name="RemoveDeactivatedUserHighestRoleStats", version=20220802204737, filename="/builds/gitlab-org/gitlab/db/post_migrate/20220802204737_remove_deactivated_user_highest_role_stats.rb", scope="">513 uses one of the allowed migration classes514 migration: #<struct ActiveRecord::MigrationProxy name="AddAutoBanUserToNamespaceSettings", version=20220803004853, filename="db/migrate/20220803004853_add_auto_ban_user_to_namespace_settings.rb", scope="">515 uses one of the allowed migration classes516 migration: #<struct ActiveRecord::MigrationProxy name="AddTmpIndexTodosAttentionRequestAction", version=20220803042351, filename="/builds/gitlab-org/gitlab/db/post_migrate/20220803042351_add_tmp_index_todos_attention_request_action.rb", scope="">517 uses one of the allowed migration classes518 migration: #<struct ActiveRecord::MigrationProxy name="CleanupMrAttentionRequestTodos", version=20220803042352, filename="/builds/gitlab-org/gitlab/db/post_migrate/20220803042352_cleanup_mr_attention_request_todos.rb", scope="">519 uses one of the allowed migration classes520 migration: #<struct ActiveRecord::MigrationProxy name="CreateUserProjectCallout", version=20220803145637, filename="db/migrate/20220803145637_create_user_project_callout.rb", scope="">521 uses one of the allowed migration classes522 migration: #<struct ActiveRecord::MigrationProxy name="AddProjectIdFkeyForUserProjectCallout", version=20220803154543, filename="db/migrate/20220803154543_add_project_id_fkey_for_user_project_callout.rb", scope="">523 uses one of the allowed migration classes524 migration: #<struct ActiveRecord::MigrationProxy name="AddUserIdFkeyForUserProjectCallout", version=20220803154758, filename="db/migrate/20220803154758_add_user_id_fkey_for_user_project_callout.rb", scope="">525 uses one of the allowed migration classes526 migration: #<struct ActiveRecord::MigrationProxy name="AddAutoBanUserToApplicationSettings", version=20220803235114, filename="db/migrate/20220803235114_add_auto_ban_user_to_application_settings.rb", scope="">527 uses one of the allowed migration classes528 migration: #<struct ActiveRecord::MigrationProxy name="AddCommentToVulnerabilityStateTransitions", version=20220804235614, filename="/builds/gitlab-org/gitlab/db/post_migrate/20220804235614_add_comment_to_vulnerability_state_transitions.rb", scope="">529 uses one of the allowed migration classes530 migration: #<struct ActiveRecord::MigrationProxy name="AddTextLimitToVulnerabilityStateTransitionsComment", version=20220805001210, filename="/builds/gitlab-org/gitlab/db/post_migrate/20220805001210_add_text_limit_to_vulnerability_state_transitions_comment.rb", scope="">531 uses one of the allowed migration classes532 migration: #<struct ActiveRecord::MigrationProxy name="AddAllowRunPipelinesInTheParentProjectSetting", version=20220805154101, filename="db/migrate/20220805154101_add_allow_run_pipelines_in_the_parent_project_setting.rb", scope="">533 uses one of the allowed migration classes534 migration: #<struct ActiveRecord::MigrationProxy name="AddUniqueIndexOnSbomComponentTypeAndName", version=20220805180311, filename="db/migrate/20220805180311_add_unique_index_on_sbom_component_type_and_name.rb", scope="">535 uses one of the allowed migration classes536 migration: #<struct ActiveRecord::MigrationProxy name="AddUniqueIndexToSbomComponentVersionsOnComponentIdAndVersion", version=20220805183952, filename="db/migrate/20220805183952_add_unique_index_to_sbom_component_versions_on_component_id_and_version.rb", scope="">537 uses one of the allowed migration classes538 migration: #<struct ActiveRecord::MigrationProxy name="AddUniqueIndexToSbomSourcesOnSourceTypeAndSource", version=20220805193117, filename="db/migrate/20220805193117_add_unique_index_to_sbom_sources_on_source_type_and_source.rb", scope="">539 uses one of the allowed migration classes540 migration: #<struct ActiveRecord::MigrationProxy name="PrepareIndexRemovalSecurityFindings", version=20220808072054, filename="/builds/gitlab-org/gitlab/db/post_migrate/20220808072054_prepare_index_removal_security_findings.rb", scope="">541 uses one of the allowed migration classes542 migration: #<struct ActiveRecord::MigrationProxy name="RemoveCiNamespaceMonthlyUsagesAdditionalAmountAvailableColumn", version=20220808131659, filename="/builds/gitlab-org/gitlab/db/post_migrate/20220808131659_remove_ci_namespace_monthly_usages_additional_amount_available_column.rb", scope="">543 uses one of the allowed migration classes544 migration: #<struct ActiveRecord::MigrationProxy name="AddTimestampsToProjectStatistics", version=20220808133824, filename="db/migrate/20220808133824_add_timestamps_to_project_statistics.rb", scope="">545 uses one of the allowed migration classes546 migration: #<struct ActiveRecord::MigrationProxy name="AddIdTokenToCiBuildsMetadata", version=20220808190124, filename="db/migrate/20220808190124_add_id_token_to_ci_builds_metadata.rb", scope="">547 uses one of the allowed migration classes548 migration: #<struct ActiveRecord::MigrationProxy name="RemoveDescriptionHtmlLimit", version=20220808194857, filename="db/migrate/20220808194857_remove_description_html_limit.rb", scope="">549 uses one of the allowed migration classes550 migration: #<struct ActiveRecord::MigrationProxy name="ScheduleDestroyInvalidGroupMembers", version=20220809002011, filename="/builds/gitlab-org/gitlab/db/post_migrate/20220809002011_schedule_destroy_invalid_group_members.rb", scope="">551 uses one of the allowed migration classes552 migration: #<struct ActiveRecord::MigrationProxy name="AddNoteMetadataTempIndexOnIdWhereTask", version=20220809214730, filename="/builds/gitlab-org/gitlab/db/post_migrate/20220809214730_add_note_metadata_temp_index_on_id_where_task.rb", scope="">553 uses one of the allowed migration classes554 migration: #<struct ActiveRecord::MigrationProxy name="ChangeTaskSystemNoteWordingToChecklistItem", version=20220809223215, filename="/builds/gitlab-org/gitlab/db/post_migrate/20220809223215_change_task_system_note_wording_to_checklist_item.rb", scope="">555 uses one of the allowed migration classes556 migration: #<struct ActiveRecord::MigrationProxy name="AddAsyncTmpIndexJobArtifactsIdAndExpireAt", version=20220810093742, filename="/builds/gitlab-org/gitlab/db/post_migrate/20220810093742_add_async_tmp_index_job_artifacts_id_and_expire_at.rb", scope="">557 uses one of the allowed migration classes558 migration: #<struct ActiveRecord::MigrationProxy name="CreateMlExperiments", version=20220811092243, filename="db/migrate/20220811092243_create_ml_experiments.rb", scope="">559 uses one of the allowed migration classes560 migration: #<struct ActiveRecord::MigrationProxy name="CreateMlCandidates", version=20220811092244, filename="db/migrate/20220811092244_create_ml_candidates.rb", scope="">561 uses one of the allowed migration classes562 migration: #<struct ActiveRecord::MigrationProxy name="CreateMlCandidateParams", version=20220811092245, filename="db/migrate/20220811092245_create_ml_candidate_params.rb", scope="">563 uses one of the allowed migration classes564 migration: #<struct ActiveRecord::MigrationProxy name="CreateMlCandidateMetrics", version=20220811092246, filename="db/migrate/20220811092246_create_ml_candidate_metrics.rb", scope="">565 uses one of the allowed migration classes566 migration: #<struct ActiveRecord::MigrationProxy name="AddMlCandidatesReferenceToExperiment", version=20220811092251, filename="db/migrate/20220811092251_add_ml_candidates_reference_to_experiment.rb", scope="">567 uses one of the allowed migration classes568 migration: #<struct ActiveRecord::MigrationProxy name="AddMlExperimentsReferenceToProject", version=20220811092253, filename="db/migrate/20220811092253_add_ml_experiments_reference_to_project.rb", scope="">569 uses one of the allowed migration classes570 migration: #<struct ActiveRecord::MigrationProxy name="RenameWebHooksServiceIdToIntegrationId", version=20220815061621, filename="/builds/gitlab-org/gitlab/db/post_migrate/20220815061621_rename_web_hooks_service_id_to_integration_id.rb", scope="">571 uses one of the allowed migration classes572 migration: #<struct ActiveRecord::MigrationProxy name="CreateVulnerabilityAdvisories", version=20220815152905, filename="db/migrate/20220815152905_create_vulnerability_advisories.rb", scope="">573 uses one of the allowed migration classes574 migration: #<struct ActiveRecord::MigrationProxy name="DropUuidAndIdIndexFromSecurityFindings", version=20220816075638, filename="/builds/gitlab-org/gitlab/db/post_migrate/20220816075638_drop_uuid_and_id_index_from_security_findings.rb", scope="">575 uses one of the allowed migration classes576 migration: #<struct ActiveRecord::MigrationProxy name="CreateSbomVulnerableComponentVersions", version=20220816135816, filename="db/migrate/20220816135816_create_sbom_vulnerable_component_versions.rb", scope="">577 uses one of the allowed migration classes578 migration: #<struct ActiveRecord::MigrationProxy name="UpdateStartDateForIterationsCadences", version=20220816163444, filename="/builds/gitlab-org/gitlab/db/post_migrate/20220816163444_update_start_date_for_iterations_cadences.rb", scope="">579 uses one of the allowed migration classes580 migration: #<struct ActiveRecord::MigrationProxy name="ReAddShowDiffPreviewInEmailToProjectSettings", version=20220817122907, filename="db/migrate/20220817122907_re_add_show_diff_preview_in_email_to_project_settings.rb", scope="">581 uses one of the allowed migration classes582 migration: #<struct ActiveRecord::MigrationProxy name="AddMaxPagesCustomDomainsPerProject", version=20220818095225, filename="db/migrate/20220818095225_add_max_pages_custom_domains_per_project.rb", scope="">583 uses one of the allowed migration classes584 migration: #<struct ActiveRecord::MigrationProxy name="AddJitsuTrackingColumnsToApplicationSettings", version=20220818125332, filename="db/migrate/20220818125332_add_jitsu_tracking_columns_to_application_settings.rb", scope="">585 uses one of the allowed migration classes586 migration: #<struct ActiveRecord::MigrationProxy name="AddJitsuTrackingColumnsToApplicationSettingsTextLimits", version=20220818125703, filename="db/migrate/20220818125703_add_jitsu_tracking_columns_to_application_settings_text_limits.rb", scope="">587 uses one of the allowed migration classes588 migration: #<struct ActiveRecord::MigrationProxy name="AddDeletedOnToMlExperiments", version=20220818132108, filename="db/migrate/20220818132108_add_deleted_on_to_ml_experiments.rb", scope="">589 uses one of the allowed migration classes590 migration: #<struct ActiveRecord::MigrationProxy name="AddUniqueIndexToSbomOccurrencesOnIngestionAttributes", version=20220818140553, filename="db/migrate/20220818140553_add_unique_index_to_sbom_occurrences_on_ingestion_attributes.rb", scope="">591 uses one of the allowed migration classes592 migration: #<struct ActiveRecord::MigrationProxy name="AddVulnerabilityAdvisoryForeignKeyToSbomVulnerableComponentVersions", version=20220819153725, filename="db/migrate/20220819153725_add_vulnerability_advisory_foreign_key_to_sbom_vulnerable_component_versions.rb", scope="">593 uses one of the allowed migration classes594 migration: #<struct ActiveRecord::MigrationProxy name="AddSbomComponentVersionForeignKeyToSbomVulnerableComponentVersions", version=20220819162852, filename="db/migrate/20220819162852_add_sbom_component_version_foreign_key_to_sbom_vulnerable_component_versions.rb", scope="">595 uses one of the allowed migration classes596 migration: #<struct ActiveRecord::MigrationProxy name="AddDashboardLimitToApplicationSettings", version=20220819184945, filename="db/migrate/20220819184945_add_dashboard_limit_to_application_settings.rb", scope="">597 uses one of the allowed migration classes598 migration: #<struct ActiveRecord::MigrationProxy name="UpdateTmpNonMigratedIndexOnContainerRepositories", version=20220820221036, filename="/builds/gitlab-org/gitlab/db/post_migrate/20220820221036_update_tmp_non_migrated_index_on_container_repositories.rb", scope="">599 uses one of the allowed migration classes600 migration: #<struct ActiveRecord::MigrationProxy name="RemoveOtherRoleFromUserDetails", version=20220822071909, filename="/builds/gitlab-org/gitlab/db/post_migrate/20220822071909_remove_other_role_from_user_details.rb", scope="">601 uses one of the allowed migration classes602 migration: #<struct ActiveRecord::MigrationProxy name="DropBuildCoverageRegexFromProject", version=20220822090656, filename="/builds/gitlab-org/gitlab/db/post_migrate/20220822090656_drop_build_coverage_regex_from_project.rb", scope="">603 uses one of the allowed migration classes604 migration: #<struct ActiveRecord::MigrationProxy name="AddIssuesAuthorizationIndex", version=20220822094804, filename="/builds/gitlab-org/gitlab/db/post_migrate/20220822094804_add_issues_authorization_index.rb", scope="">605 uses one of the allowed migration classes606 migration: #<struct ActiveRecord::MigrationProxy name="AddNamespaceIdToBroadcastMessage", version=20220822102651, filename="db/migrate/20220822102651_add_namespace_id_to_broadcast_message.rb", scope="">607 uses one of the allowed migration classes608 migration: #<struct ActiveRecord::MigrationProxy name="AddIndexAndForeignKeyToBroadcastMessage", version=20220822103638, filename="db/migrate/20220822103638_add_index_and_foreign_key_to_broadcast_message.rb", scope="">609 uses one of the allowed migration classes610 migration: #<struct ActiveRecord::MigrationProxy name="PrepareRemovalPartialTrigramIndexesForIssues", version=20220823084747, filename="/builds/gitlab-org/gitlab/db/post_migrate/20220823084747_prepare_removal_partial_trigram_indexes_for_issues.rb", scope="">611 uses one of the allowed migration classes612 migration: #<struct ActiveRecord::MigrationProxy name="RemoveTmpIdxVulnerabilityOccurrencesOnIdAndScannerId", version=20220824082427, filename="db/migrate/20220824082427_remove_tmp_idx_vulnerability_occurrences_on_id_and_scanner_id.rb", scope="">613 uses one of the allowed migration classes614 migration: #<struct ActiveRecord::MigrationProxy name="AddTmpIndexApprovalMergeRequestRules", version=20220824114218, filename="/builds/gitlab-org/gitlab/db/post_migrate/20220824114218_add_tmp_index_approval_merge_request_rules.rb", scope="">615 uses one of the allowed migration classes616 migration: #<struct ActiveRecord::MigrationProxy name="LimitNamespacesSyncTriggersToTraversalIdsUpdate", version=20220824175648, filename="db/migrate/20220824175648_limit_namespaces_sync_triggers_to_traversal_ids_update.rb", scope="">617 uses one of the allowed migration classes618 migration: #<struct ActiveRecord::MigrationProxy name="RemoveExistingWorkItemTypeBackfillMigrations", version=20220824194103, filename="db/migrate/20220824194103_remove_existing_work_item_type_backfill_migrations.rb", scope="">619 uses one of the allowed migration classes620 migration: #<struct ActiveRecord::MigrationProxy name="DropTmpIndexTodosAttentionRequestActionIdx", version=20220825061250, filename="/builds/gitlab-org/gitlab/db/post_migrate/20220825061250_drop_tmp_index_todos_attention_request_action_idx.rb", scope="">621 uses one of the allowed migration classes622 migration: #<struct ActiveRecord::MigrationProxy name="AddCubeApiKeyToApplicationSettings", version=20220825105631, filename="db/migrate/20220825105631_add_cube_api_key_to_application_settings.rb", scope="">623 uses one of the allowed migration classes624 migration: #<struct ActiveRecord::MigrationProxy name="RemoveNotNullConstraintForConfidenceColumns", version=20220825134827, filename="db/migrate/20220825134827_remove_not_null_constraint_for_confidence_columns.rb", scope="">625 uses one of the allowed migration classes626 migration: #<struct ActiveRecord::MigrationProxy name="ReplaceIssuesAuthorizationIndex", version=20220825142324, filename="/builds/gitlab-org/gitlab/db/post_migrate/20220825142324_replace_issues_authorization_index.rb", scope="">627 uses one of the allowed migration classes628 migration: #<struct ActiveRecord::MigrationProxy name="DropTemporaryJobTraceIndex", version=20220826165048, filename="/builds/gitlab-org/gitlab/db/post_migrate/20220826165048_drop_temporary_job_trace_index.rb", scope="">629 uses one of the allowed migration classes630 migration: #<struct ActiveRecord::MigrationProxy name="FullyRemoveTemporaryJobTraceIndex", version=20220826175058, filename="/builds/gitlab-org/gitlab/db/post_migrate/20220826175058_fully_remove_temporary_job_trace_index.rb", scope="">631 uses one of the allowed migration classes632 migration: #<struct ActiveRecord::MigrationProxy name="AddRpmMaxFileSizeToPlanLimits", version=20220828094411, filename="db/migrate/20220828094411_add_rpm_max_file_size_to_plan_limits.rb", scope="">633 uses one of the allowed migration classes634 migration: #<struct ActiveRecord::MigrationProxy name="CreatePackagesRpmMetadata", version=20220828131848, filename="db/migrate/20220828131848_create_packages_rpm_metadata.rb", scope="">635 uses one of the allowed migration classes636 migration: #<struct ActiveRecord::MigrationProxy name="ReplaceIndexOnCreditCardValidations", version=20220829183356, filename="db/migrate/20220829183356_replace_index_on_credit_card_validations.rb", scope="">637 uses one of the allowed migration classes638 migration: #<struct ActiveRecord::MigrationProxy name="AddTemporaryIndexForOrphanedInvitedMembers", version=20220830051704, filename="/builds/gitlab-org/gitlab/db/post_migrate/20220830051704_add_temporary_index_for_orphaned_invited_members.rb", scope="">639 uses one of the allowed migration classes640 migration: #<struct ActiveRecord::MigrationProxy name="OrphanedInvitedMembersCleanup", version=20220830061704, filename="/builds/gitlab-org/gitlab/db/post_migrate/20220830061704_orphaned_invited_members_cleanup.rb", scope="">641 uses one of the allowed migration classes642 migration: #<struct ActiveRecord::MigrationProxy name="RemoveTemporaryIndexForOrphanedInvitedMembers", version=20220830071704, filename="/builds/gitlab-org/gitlab/db/post_migrate/20220830071704_remove_temporary_index_for_orphaned_invited_members.rb", scope="">643 uses one of the allowed migration classes644 migration: #<struct ActiveRecord::MigrationProxy name="AddTextLimitToCubeApiBaseUrl", version=20220830082928, filename="db/migrate/20220830082928_add_text_limit_to_cube_api_base_url.rb", scope="">645 uses one of the allowed migration classes646 migration: #<struct ActiveRecord::MigrationProxy name="CreateDoraConfigurationTable", version=20220830114228, filename="db/migrate/20220830114228_create_dora_configuration_table.rb", scope="">647 uses one of the allowed migration classes648 migration: #<struct ActiveRecord::MigrationProxy name="RescheduleIssueWorkItemTypeIdBackfill", version=20220830172142, filename="/builds/gitlab-org/gitlab/db/post_migrate/20220830172142_reschedule_issue_work_item_type_id_backfill.rb", scope="">649 uses one of the allowed migration classes650 migration: #<struct ActiveRecord::MigrationProxy name="AddIndexOnIssueHealthStatus", version=20220831021358, filename="/builds/gitlab-org/gitlab/db/post_migrate/20220831021358_add_index_on_issue_health_status.rb", scope="">651 uses one of the allowed migration classes652 migration: #<struct ActiveRecord::MigrationProxy name="CleanupWebHooksServiceId", version=20220831090454, filename="/builds/gitlab-org/gitlab/db/post_migrate/20220831090454_cleanup_web_hooks_service_id.rb", scope="">653 uses one of the allowed migration classes654 migration: #<struct ActiveRecord::MigrationProxy name="DeleteApprovalRulesForVulnerability", version=20220831132802, filename="/builds/gitlab-org/gitlab/db/post_migrate/20220831132802_delete_approval_rules_for_vulnerability.rb", scope="">655 uses one of the allowed migration classes656 migration: #<struct ActiveRecord::MigrationProxy name="AddConstraintsView", version=20220831182105, filename="db/migrate/20220831182105_add_constraints_view.rb", scope="">657 uses one of the allowed migration classes658 migration: #<struct ActiveRecord::MigrationProxy name="AddTempProjectMemberIndex", version=20220901035722, filename="db/migrate/20220901035722_add_temp_project_member_index.rb", scope="">659 uses one of the allowed migration classes660 migration: #<struct ActiveRecord::MigrationProxy name="ScheduleDestroyInvalidProjectMembers", version=20220901035725, filename="/builds/gitlab-org/gitlab/db/post_migrate/20220901035725_schedule_destroy_invalid_project_members.rb", scope="">661 uses one of the allowed migration classes662 migration: #<struct ActiveRecord::MigrationProxy name="AddTmpIndexUserCalloutsOnAttentionRequestFeatureNames", version=20220901071310, filename="/builds/gitlab-org/gitlab/db/post_migrate/20220901071310_add_tmp_index_user_callouts_on_attention_request_feature_names.rb", scope="">663 uses one of the allowed migration classes664 migration: #<struct ActiveRecord::MigrationProxy name="CleanupAttentionRequestUserCallouts", version=20220901071355, filename="/builds/gitlab-org/gitlab/db/post_migrate/20220901071355_cleanup_attention_request_user_callouts.rb", scope="">665 uses one of the allowed migration classes666 migration: #<struct ActiveRecord::MigrationProxy name="RemovePartialTrigramIndexesForIssues", version=20220901073300, filename="/builds/gitlab-org/gitlab/db/post_migrate/20220901073300_remove_partial_trigram_indexes_for_issues.rb", scope="">667 uses one of the allowed migration classes668 migration: #<struct ActiveRecord::MigrationProxy name="AddCanCreateGroupToApplicationSettings", version=20220901090004, filename="db/migrate/20220901090004_add_can_create_group_to_application_settings.rb", scope="">669 uses one of the allowed migration classes670 migration: #<struct ActiveRecord::MigrationProxy name="UpdateCanCreateGroupApplicationSetting", version=20220901092853, filename="db/migrate/20220901092853_update_can_create_group_application_setting.rb", scope="">671 uses one of the allowed migration classes672 migration: #<struct ActiveRecord::MigrationProxy name="OnlyAllowMergeIfAllStatusChecksPassed", version=20220901114501, filename="db/migrate/20220901114501_only_allow_merge_if_all_status_checks_passed.rb", scope="">673 uses one of the allowed migration classes674 migration: #<struct ActiveRecord::MigrationProxy name="AddLastDownloadedAtToPackages", version=20220901124637, filename="db/migrate/20220901124637_add_last_downloaded_at_to_packages.rb", scope="">675 uses one of the allowed migration classes676 migration: #<struct ActiveRecord::MigrationProxy name="AddEnvironmentsProjectNameLowerPatternOpsIndex", version=20220901131828, filename="db/migrate/20220901131828_add_environments_project_name_lower_pattern_ops_index.rb", scope="">677 uses one of the allowed migration classes678 migration: #<struct ActiveRecord::MigrationProxy name="AddNotNullToBoardGroupRecentVisits", version=20220901184106, filename="/builds/gitlab-org/gitlab/db/post_migrate/20220901184106_add_not_null_to_board_group_recent_visits.rb", scope="">679 uses one of the allowed migration classes680 migration: #<struct ActiveRecord::MigrationProxy name="AddNotNullToBoardProjectRecentVisits", version=20220901184246, filename="/builds/gitlab-org/gitlab/db/post_migrate/20220901184246_add_not_null_to_board_project_recent_visits.rb", scope="">681 uses one of the allowed migration classes682 migration: #<struct ActiveRecord::MigrationProxy name="AddMergeRequestIdToEnvironments", version=20220901212027, filename="db/migrate/20220901212027_add_merge_request_id_to_environments.rb", scope="">683 uses one of the allowed migration classes684 migration: #<struct ActiveRecord::MigrationProxy name="CreateCiPartitions", version=20220902065314, filename="db/migrate/20220902065314_create_ci_partitions.rb", scope="">685 uses one of the allowed migration classes686 migration: #<struct ActiveRecord::MigrationProxy name="CreateDefaultPartitionRecord", version=20220902065316, filename="db/migrate/20220902065316_create_default_partition_record.rb", scope="">687 uses one of the allowed migration classes688 migration: #<struct ActiveRecord::MigrationProxy name="AddPartitionIdToCiBuilds", version=20220902065317, filename="db/migrate/20220902065317_add_partition_id_to_ci_builds.rb", scope="">689 uses one of the allowed migration classes690 migration: #<struct ActiveRecord::MigrationProxy name="AddPartitionIdToCiBuildsMetadata", version=20220902065558, filename="db/migrate/20220902065558_add_partition_id_to_ci_builds_metadata.rb", scope="">691 uses one of the allowed migration classes692 migration: #<struct ActiveRecord::MigrationProxy name="AddPartitionIdToCiJobArtifacts", version=20220902065611, filename="db/migrate/20220902065611_add_partition_id_to_ci_job_artifacts.rb", scope="">693 uses one of the allowed migration classes694 migration: #<struct ActiveRecord::MigrationProxy name="AddPartitionIdToCiPipelines", version=20220902065623, filename="db/migrate/20220902065623_add_partition_id_to_ci_pipelines.rb", scope="">695 uses one of the allowed migration classes696 migration: #<struct ActiveRecord::MigrationProxy name="AddPartitionIdToCiStages", version=20220902065635, filename="db/migrate/20220902065635_add_partition_id_to_ci_stages.rb", scope="">697 uses one of the allowed migration classes698 migration: #<struct ActiveRecord::MigrationProxy name="AddPartitionIdToCiPipelineVariables", version=20220902065647, filename="db/migrate/20220902065647_add_partition_id_to_ci_pipeline_variables.rb", scope="">699 uses one of the allowed migration classes700 migration: #<struct ActiveRecord::MigrationProxy name="DeleteNullRecordsFromBoardGroupRecentVisits", version=20220902111016, filename="/builds/gitlab-org/gitlab/db/post_migrate/20220902111016_delete_null_records_from_board_group_recent_visits.rb", scope="">701 uses one of the allowed migration classes702 migration: #<struct ActiveRecord::MigrationProxy name="DeleteNullRecordsFromBoardProjectRecentVisits", version=20220902111038, filename="/builds/gitlab-org/gitlab/db/post_migrate/20220902111038_delete_null_records_from_board_project_recent_visits.rb", scope="">703 uses one of the allowed migration classes704 migration: #<struct ActiveRecord::MigrationProxy name="IndexEvironmentsOnMergeRequestId", version=20220902165931, filename="db/migrate/20220902165931_index_evironments_on_merge_request_id.rb", scope="">705 uses one of the allowed migration classes706 migration: #<struct ActiveRecord::MigrationProxy name="AddFkConstraintToEnvironmentsMergeRequestId", version=20220902170131, filename="db/migrate/20220902170131_add_fk_constraint_to_environments_merge_request_id.rb", scope="">707 uses one of the allowed migration classes708 migration: #<struct ActiveRecord::MigrationProxy name="MoveSecurityFindingsTableToGitlabPartitionsDynamicSchema", version=20220902204048, filename="/builds/gitlab-org/gitlab/db/post_migrate/20220902204048_move_security_findings_table_to_gitlab_partitions_dynamic_schema.rb", scope="">709 uses one of the allowed migration classes710 migration: #<struct ActiveRecord::MigrationProxy name="ValidateNotNullConstraintBoardGroupRecentVisits", version=20220904173342, filename="/builds/gitlab-org/gitlab/db/post_migrate/20220904173342_validate_not_null_constraint_board_group_recent_visits.rb", scope="">711 uses one of the allowed migration classes712 migration: #<struct ActiveRecord::MigrationProxy name="ValidateNotNullConstraintBoardProjectRecentVisits", version=20220904173430, filename="/builds/gitlab-org/gitlab/db/post_migrate/20220904173430_validate_not_null_constraint_board_project_recent_visits.rb", scope="">713 uses one of the allowed migration classes714 migration: #<struct ActiveRecord::MigrationProxy name="AddTmpIndexMergeRequestReviewersAttentionRequestState", version=20220905090300, filename="/builds/gitlab-org/gitlab/db/post_migrate/20220905090300_add_tmp_index_merge_request_reviewers_attention_request_state.rb", scope="">715 uses one of the allowed migration classes716 migration: #<struct ActiveRecord::MigrationProxy name="ResetAttentionRequestedMergeRequestsReviewersStateToUnreviewed", version=20220905090339, filename="/builds/gitlab-org/gitlab/db/post_migrate/20220905090339_reset_attention_requested_merge_requests_reviewers_state_to_unreviewed.rb", scope="">717 uses one of the allowed migration classes718 migration: #<struct ActiveRecord::MigrationProxy name="AddAsyncIndexToTodosToCoverPendingQuery", version=20220905112710, filename="/builds/gitlab-org/gitlab/db/post_migrate/20220905112710_add_async_index_to_todos_to_cover_pending_query.rb", scope="">719 uses one of the allowed migration classes720 migration: #<struct ActiveRecord::MigrationProxy name="BackfillEpicCacheCounts", version=20220905120848, filename="/builds/gitlab-org/gitlab/db/post_migrate/20220905120848_backfill_epic_cache_counts.rb", scope="">721 uses one of the allowed migration classes722 migration: #<struct ActiveRecord::MigrationProxy name="ScheduleDisableLegacyOpenSourceLicenseForProjectsLessThanOneMb", version=20220906074449, filename="/builds/gitlab-org/gitlab/db/post_migrate/20220906074449_schedule_disable_legacy_open_source_license_for_projects_less_than_one_mb.rb", scope="">723 uses one of the allowed migration classes724 migration: #<struct ActiveRecord::MigrationProxy name="AddColumnBranchFilterStrategyToWebHooks", version=20220906093857, filename="db/migrate/20220906093857_add_column_branch_filter_strategy_to_web_hooks.rb", scope="">725 uses one of the allowed migration classes726 migration: #<struct ActiveRecord::MigrationProxy name="AddStartTimeAndEndTimeAndStatusToMlCandidates", version=20220906155105, filename="db/migrate/20220906155105_add_start_time_and_end_time_and_status_to_ml_candidates.rb", scope="">727 uses one of the allowed migration classes728 migration: #<struct ActiveRecord::MigrationProxy name="AddLockedToCiPipelineArtifacts", version=20220906204832, filename="db/migrate/20220906204832_add_locked_to_ci_pipeline_artifacts.rb", scope="">729 uses one of the allowed migration classes730 migration: #<struct ActiveRecord::MigrationProxy name="AddPartialIndexForCiPipelineArtifactsUnlockedWithExpireAt", version=20220906212931, filename="/builds/gitlab-org/gitlab/db/post_migrate/20220906212931_add_partial_index_for_ci_pipeline_artifacts_unlocked_with_expire_at.rb", scope="">731 uses one of the allowed migration classes732 migration: #<struct ActiveRecord::MigrationProxy name="AddSecurityOrchestrationPolicyConfigurationId", version=20220907115806, filename="db/migrate/20220907115806_add_security_orchestration_policy_configuration_id.rb", scope="">733 uses one of the allowed migration classes734 migration: #<struct ActiveRecord::MigrationProxy name="PopulateSecurityOrchestrationPolicyConfigurationId", version=20220907122648, filename="/builds/gitlab-org/gitlab/db/post_migrate/20220907122648_populate_security_orchestration_policy_configuration_id.rb", scope="">735 uses one of the allowed migration classes736 migration: #<struct ActiveRecord::MigrationProxy name="AddInternalToNotes", version=20220907124320, filename="db/migrate/20220907124320_add_internal_to_notes.rb", scope="">737 uses one of the allowed migration classes738 migration: #<struct ActiveRecord::MigrationProxy name="RemoveFreeUserCapRemediationWorker", version=20220908125146, filename="/builds/gitlab-org/gitlab/db/post_migrate/20220908125146_remove_free_user_cap_remediation_worker.rb", scope="">739 uses one of the allowed migration classes740 migration: #<struct ActiveRecord::MigrationProxy name="AddRunnerRegistrationEnabledToNamespaceSettings", version=20220908150054, filename="db/migrate/20220908150054_add_runner_registration_enabled_to_namespace_settings.rb", scope="">741 uses one of the allowed migration classes742 migration: #<struct ActiveRecord::MigrationProxy name="AddDismissalReasonToVulnerabilityStateTransitions", version=20220909091410, filename="db/migrate/20220909091410_add_dismissal_reason_to_vulnerability_state_transitions.rb", scope="">743 uses one of the allowed migration classes744 migration: #<struct ActiveRecord::MigrationProxy name="AddFreeUserCapOverLimtNotifiedAtToNamespaceDetails", version=20220909094752, filename="db/migrate/20220909094752_add_free_user_cap_over_limt_notified_at_to_namespace_details.rb", scope="">745 uses one of the allowed migration classes746 migration: #<struct ActiveRecord::MigrationProxy name="AddEnvironmentsProjectNameLowerPatternOpsStateIndex", version=20220909113809, filename="db/migrate/20220909113809_add_environments_project_name_lower_pattern_ops_state_index.rb", scope="">747 uses one of the allowed migration classes748 migration: #<struct ActiveRecord::MigrationProxy name="DropEnvironmentsProjectNameLowerPatternOpsIndex", version=20220909114220, filename="/builds/gitlab-org/gitlab/db/post_migrate/20220909114220_drop_environments_project_name_lower_pattern_ops_index.rb", scope="">749 uses one of the allowed migration classes750 migration: #<struct ActiveRecord::MigrationProxy name="AddIndexToTodosPendingQuery", version=20220912085047, filename="/builds/gitlab-org/gitlab/db/post_migrate/20220912085047_add_index_to_todos_pending_query.rb", scope="">751 uses one of the allowed migration classes752 migration: #<struct ActiveRecord::MigrationProxy name="PrepareCreateInternalNotesIndexOnId", version=20220912110433, filename="/builds/gitlab-org/gitlab/db/post_migrate/20220912110433_prepare_create_internal_notes_index_on_id.rb", scope="">753 uses one of the allowed migration classes754 migration: #<struct ActiveRecord::MigrationProxy name="CreatePackagesRpmRepositoryFile", version=20220912153839, filename="db/migrate/20220912153839_create_packages_rpm_repository_file.rb", scope="">755 uses one of the allowed migration classes756 migration: #<struct ActiveRecord::MigrationProxy name="AddEpochColumnToRpmMetadata", version=20220912180807, filename="db/migrate/20220912180807_add_epoch_column_to_rpm_metadata.rb", scope="">757 uses one of the allowed migration classes758 migration: #<struct ActiveRecord::MigrationProxy name="AddTmpIndexSystemNoteMetadataOnAttentionRequestActions", version=20220913030552, filename="/builds/gitlab-org/gitlab/db/post_migrate/20220913030552_add_tmp_index_system_note_metadata_on_attention_request_actions.rb", scope="">759 uses one of the allowed migration classes760 migration: #<struct ActiveRecord::MigrationProxy name="CleanupAttentionRequestRelatedSystemNotes", version=20220913030624, filename="/builds/gitlab-org/gitlab/db/post_migrate/20220913030624_cleanup_attention_request_related_system_notes.rb", scope="">761 uses one of the allowed migration classes762 migration: #<struct ActiveRecord::MigrationProxy name="CreateUserPhoneNumberValidations", version=20220913043728, filename="db/migrate/20220913043728_create_user_phone_number_validations.rb", scope="">763 uses one of the allowed migration classes764 migration: #<struct ActiveRecord::MigrationProxy name="DropIndexCadenceCreateIterationsAutomation", version=20220913082728, filename="db/migrate/20220913082728_drop_index_cadence_create_iterations_automation.rb", scope="">765 uses one of the allowed migration classes766 migration: #<struct ActiveRecord::MigrationProxy name="FinalizeInvalidGroupMemberCleanup", version=20220913082824, filename="db/migrate/20220913082824_finalize_invalid_group_member_cleanup.rb", scope="">767 uses one of the allowed migration classes768 migration: #<struct ActiveRecord::MigrationProxy name="RenameIterationsCadencesLastRunDateToNextRunDate", version=20220913082930, filename="db/migrate/20220913082930_rename_iterations_cadences_last_run_date_to_next_run_date.rb", scope="">769 uses one of the allowed migration classes770 migration: #<struct ActiveRecord::MigrationProxy name="CleanUpRenameIterationsCadencesLastRunDateToNextRunDate", version=20220913083015, filename="/builds/gitlab-org/gitlab/db/post_migrate/20220913083015_clean_up_rename_iterations_cadences_last_run_date_to_next_run_date.rb", scope="">771 uses one of the allowed migration classes772 migration: #<struct ActiveRecord::MigrationProxy name="AddTimestampToMlCandidateMetrics", version=20220913084123, filename="db/migrate/20220913084123_add_timestamp_to_ml_candidate_metrics.rb", scope="">773 uses one of the allowed migration classes774 migration: #<struct ActiveRecord::MigrationProxy name="ChangeNamespaceIdNotNullInMembers", version=20220914005141, filename="db/migrate/20220914005141_change_namespace_id_not_null_in_members.rb", scope="">775 uses one of the allowed migration classes776 migration: #<struct ActiveRecord::MigrationProxy name="ChangeMembersNamespaceForeignKeyOnDeleteConstraint", version=20220914010233, filename="db/migrate/20220914010233_change_members_namespace_foreign_key_on_delete_constraint.rb", scope="">777 uses one of the allowed migration classes778 migration: #<struct ActiveRecord::MigrationProxy name="FinalizeInvalidProjectMemberCleanup", version=20220914070927, filename="db/migrate/20220914070927_finalize_invalid_project_member_cleanup.rb", scope="">779 uses one of the allowed migration classes780 migration: #<struct ActiveRecord::MigrationProxy name="AddIndexToCandidateIdAndNameOnMlCandidateParams", version=20220914080716, filename="db/migrate/20220914080716_add_index_to_candidate_id_and_name_on_ml_candidate_params.rb", scope="">781 uses one of the allowed migration classes782 migration: #<struct ActiveRecord::MigrationProxy name="AddUniqueIdPartitionIdIndexToCiBuildMetadata", version=20220914093408, filename="/builds/gitlab-org/gitlab/db/post_migrate/20220914093408_add_unique_id_partition_id_index_to_ci_build_metadata.rb", scope="">783 uses one of the allowed migration classes784 migration: #<struct ActiveRecord::MigrationProxy name="AddRejectNonDcoCommitsToPushRules", version=20220914112457, filename="db/migrate/20220914112457_add_reject_non_dco_commits_to_push_rules.rb", scope="">785 uses one of the allowed migration classes786 migration: #<struct ActiveRecord::MigrationProxy name="AddJitsuKeyToProjects", version=20220914130800, filename="db/migrate/20220914130800_add_jitsu_key_to_projects.rb", scope="">787 uses one of the allowed migration classes788 migration: #<struct ActiveRecord::MigrationProxy name="AddTextLimitToProjectsJitsuKey", version=20220914131449, filename="db/migrate/20220914131449_add_text_limit_to_projects_jitsu_key.rb", scope="">789 uses one of the allowed migration classes790 migration: #<struct ActiveRecord::MigrationProxy name="RemoveNotNullConstraintFromSbomSourceFingerprint", version=20220914174705, filename="db/migrate/20220914174705_remove_not_null_constraint_from_sbom_source_fingerprint.rb", scope="">791 uses one of the allowed migration classes792 migration: #<struct ActiveRecord::MigrationProxy name="AddUniqueBuildIdPartitionIdIndexToCiBuildMetadata", version=20220915103831, filename="/builds/gitlab-org/gitlab/db/post_migrate/20220915103831_add_unique_build_id_partition_id_index_to_ci_build_metadata.rb", scope="">793 uses one of the allowed migration classes794 migration: #<struct ActiveRecord::MigrationProxy name="CreateMergeRequestPredictions", version=20220915140802, filename="db/migrate/20220915140802_create_merge_request_predictions.rb", scope="">795 uses one of the allowed migration classes796 migration: #<struct ActiveRecord::MigrationProxy name="PrepareAsyncTrigramIndexForVulnerabilityReadsContainerImages", version=20220915192521, filename="/builds/gitlab-org/gitlab/db/post_migrate/20220915192521_prepare_async_trigram_index_for_vulnerability_reads_container_images.rb", scope="">797 uses one of the allowed migration classes798 migration: #<struct ActiveRecord::MigrationProxy name="RemoveExperienceLevelColumn", version=20220916054103, filename="/builds/gitlab-org/gitlab/db/post_migrate/20220916054103_remove_experience_level_column.rb", scope="">799 uses one of the allowed migration classes800 migration: #<struct ActiveRecord::MigrationProxy name="AddIndexIdPartitionIdToCiBuildsMetadata", version=20220916065418, filename="/builds/gitlab-org/gitlab/db/post_migrate/20220916065418_add_index_id_partition_id_to_ci_builds_metadata.rb", scope="">801 uses one of the allowed migration classes802 migration: #<struct ActiveRecord::MigrationProxy name="AddIndexBuildIdPartitionIdToCiBuildMetadata", version=20220916070101, filename="/builds/gitlab-org/gitlab/db/post_migrate/20220916070101_add_index_build_id_partition_id_to_ci_build_metadata.rb", scope="">803 uses one of the allowed migration classes804 migration: #<struct ActiveRecord::MigrationProxy name="AddSourceIdToBulkImportEntities", version=20220916094641, filename="db/migrate/20220916094641_add_source_id_to_bulk_import_entities.rb", scope="">805 uses one of the allowed migration classes806 migration: #<struct ActiveRecord::MigrationProxy name="AddIndexOnJiraConnectInstallationsInstanceUrl", version=20220916103311, filename="db/migrate/20220916103311_add_index_on_jira_connect_installations_instance_url.rb", scope="">807 uses one of the allowed migration classes808 migration: #<struct ActiveRecord::MigrationProxy name="RemoveUnusedAggregationColumns", version=20220916112841, filename="/builds/gitlab-org/gitlab/db/post_migrate/20220916112841_remove_unused_aggregation_columns.rb", scope="">809 uses one of the allowed migration classes810 migration: #<struct ActiveRecord::MigrationProxy name="AddSuggestedReviewersEnabledToProjectSettings", version=20220918124223, filename="db/migrate/20220918124223_add_suggested_reviewers_enabled_to_project_settings.rb", scope="">811 uses one of the allowed migration classes812 migration: #<struct ActiveRecord::MigrationProxy name="DropUnusedFieldsFromMergeRequestAssignees", version=20220919023208, filename="/builds/gitlab-org/gitlab/db/post_migrate/20220919023208_drop_unused_fields_from_merge_request_assignees.rb", scope="">813 uses one of the allowed migration classes814 migration: #<struct ActiveRecord::MigrationProxy name="DropUnusedFieldsFromMergeRequestReviewers", version=20220919041604, filename="/builds/gitlab-org/gitlab/db/post_migrate/20220919041604_drop_unused_fields_from_merge_request_reviewers.rb", scope="">815 uses one of the allowed migration classes816 migration: #<struct ActiveRecord::MigrationProxy name="DropTmpIndexUserCalloutsOnAttentionRequestFeatureNames", version=20220919050555, filename="/builds/gitlab-org/gitlab/db/post_migrate/20220919050555_drop_tmp_index_user_callouts_on_attention_request_feature_names.rb", scope="">817 uses one of the allowed migration classes818 migration: #<struct ActiveRecord::MigrationProxy name="AddMirrorBranchRegexToRemoteMirrors", version=20220919062640, filename="db/migrate/20220919062640_add_mirror_branch_regex_to_remote_mirrors.rb", scope="">819 uses one of the allowed migration classes820 migration: #<struct ActiveRecord::MigrationProxy name="DeleteMigrateSharedVulnerabilityScanners", version=20220919080303, filename="/builds/gitlab-org/gitlab/db/post_migrate/20220919080303_delete_migrate_shared_vulnerability_scanners.rb", scope="">821 uses one of the allowed migration classes822 migration: #<struct ActiveRecord::MigrationProxy name="RescheduleMigrateSharedVulnerabilityScanners", version=20220919080304, filename="/builds/gitlab-org/gitlab/db/post_migrate/20220919080304_reschedule_migrate_shared_vulnerability_scanners.rb", scope="">823 uses one of the allowed migration classes824 migration: #<struct ActiveRecord::MigrationProxy name="AddIndexPackagesPackagesOnProjectIdAndLowerVersionToPackages", version=20220919225631, filename="db/migrate/20220919225631_add_index_packages_packages_on_project_id_and_lower_version_to_packages.rb", scope="">825 uses one of the allowed migration classes826 migration: #<struct ActiveRecord::MigrationProxy name="RemoveTempIndexNullProjectNamespaceId", version=20220920022404, filename="db/migrate/20220920022404_remove_temp_index_null_project_namespace_id.rb", scope="">827 uses one of the allowed migration classes828 migration: #<struct ActiveRecord::MigrationProxy name="PrepareCiBuildsMetadataForPartitioningPrimaryKey", version=20220920081631, filename="/builds/gitlab-org/gitlab/db/post_migrate/20220920081631_prepare_ci_builds_metadata_for_partitioning_primary_key.rb", scope="">829 uses one of the allowed migration classes830 migration: #<struct ActiveRecord::MigrationProxy name="ScheduleIndexRemovalForCiBuildsMetadata", version=20220920122121, filename="/builds/gitlab-org/gitlab/db/post_migrate/20220920122121_schedule_index_removal_for_ci_builds_metadata.rb", scope="">831 uses one of the allowed migration classes832 migration: #<struct ActiveRecord::MigrationProxy name="BackfillInternalOnNotes", version=20220920124709, filename="/builds/gitlab-org/gitlab/db/post_migrate/20220920124709_backfill_internal_on_notes.rb", scope="">833 uses one of the allowed migration classes834 migration: #<struct ActiveRecord::MigrationProxy name="TiebreakUserTypeIndex", version=20220920135356, filename="/builds/gitlab-org/gitlab/db/post_migrate/20220920135356_tiebreak_user_type_index.rb", scope="">835 uses one of the allowed migration classes836 migration: #<struct ActiveRecord::MigrationProxy name="AddJiraConnectProxyUrlSetting", version=20220920135632, filename="db/migrate/20220920135632_add_jira_connect_proxy_url_setting.rb", scope="">837 uses one of the allowed migration classes838 migration: #<struct ActiveRecord::MigrationProxy name="AddTextlimitToJiraConnectProxyUrlSetting", version=20220920135717, filename="db/migrate/20220920135717_add_textlimit_to_jira_connect_proxy_url_setting.rb", scope="">839 uses one of the allowed migration classes840 migration: #<struct ActiveRecord::MigrationProxy name="AddIndexOnInternalNotes", version=20220920141001, filename="/builds/gitlab-org/gitlab/db/post_migrate/20220920141001_add_index_on_internal_notes.rb", scope="">841 uses one of the allowed migration classes842 migration: #<struct ActiveRecord::MigrationProxy name="FinalizeTaskSystemNoteRenaming", version=20220920213504, filename="/builds/gitlab-org/gitlab/db/post_migrate/20220920213504_finalize_task_system_note_renaming.rb", scope="">843 uses one of the allowed migration classes844 migration: #<struct ActiveRecord::MigrationProxy name="RemoveTaskSystemNoteRenameTempIndex", version=20220920214524, filename="/builds/gitlab-org/gitlab/db/post_migrate/20220920214524_remove_task_system_note_rename_temp_index.rb", scope="">845 uses one of the allowed migration classes846 migration: #<struct ActiveRecord::MigrationProxy name="ScheduleBackfillNamespaceDetails", version=20220921093355, filename="/builds/gitlab-org/gitlab/db/post_migrate/20220921093355_schedule_backfill_namespace_details.rb", scope="">847 uses one of the allowed migration classes848 migration: #<struct ActiveRecord::MigrationProxy name="RemoveAndAddCiPipelineVariablesRawWithNewDefault", version=20220921111823, filename="/builds/gitlab-org/gitlab/db/post_migrate/20220921111823_remove_and_add_ci_pipeline_variables_raw_with_new_default.rb", scope="">849 uses one of the allowed migration classes850 migration: #<struct ActiveRecord::MigrationProxy name="RemoveAndAddCiGroupVariablesRawWithNewDefault", version=20220921111831, filename="/builds/gitlab-org/gitlab/db/post_migrate/20220921111831_remove_and_add_ci_group_variables_raw_with_new_default.rb", scope="">851 uses one of the allowed migration classes852 migration: #<struct ActiveRecord::MigrationProxy name="RemoveAndAddCiInstanceVariablesRawWithNewDefault", version=20220921111840, filename="/builds/gitlab-org/gitlab/db/post_migrate/20220921111840_remove_and_add_ci_instance_variables_raw_with_new_default.rb", scope="">853 uses one of the allowed migration classes854 migration: #<struct ActiveRecord::MigrationProxy name="RemoveAndAddCiJobVariablesRawWithNewDefault", version=20220921111849, filename="/builds/gitlab-org/gitlab/db/post_migrate/20220921111849_remove_and_add_ci_job_variables_raw_with_new_default.rb", scope="">855 uses one of the allowed migration classes856 migration: #<struct ActiveRecord::MigrationProxy name="RemoveAndAddCiPipelineScheduleVariablesRawWithNewDefault", version=20220921111857, filename="/builds/gitlab-org/gitlab/db/post_migrate/20220921111857_remove_and_add_ci_pipeline_schedule_variables_raw_with_new_default.rb", scope="">857 uses one of the allowed migration classes858 migration: #<struct ActiveRecord::MigrationProxy name="RemoveAndAddCiVariablesRawWithNewDefault", version=20220921111907, filename="/builds/gitlab-org/gitlab/db/post_migrate/20220921111907_remove_and_add_ci_variables_raw_with_new_default.rb", scope="">859 uses one of the allowed migration classes860 migration: #<struct ActiveRecord::MigrationProxy name="RemoveOrphanGroupTokenUsers", version=20220921144258, filename="/builds/gitlab-org/gitlab/db/post_migrate/20220921144258_remove_orphan_group_token_users.rb", scope="">861 uses one of the allowed migration classes862 migration: #<struct ActiveRecord::MigrationProxy name="AddSecureFilesMetadata", version=20220921174815, filename="db/migrate/20220921174815_add_secure_files_metadata.rb", scope="">863 uses one of the allowed migration classes864 migration: #<struct ActiveRecord::MigrationProxy name="AddMavenPackageRequestsForwardingToNamespacePackageSettings", version=20220921201347, filename="db/migrate/20220921201347_add_maven_package_requests_forwarding_to_namespace_package_settings.rb", scope="">865 uses one of the allowed migration classes866 migration: #<struct ActiveRecord::MigrationProxy name="RemoveTraceColumnFromCiBuilds", version=20220922090236, filename="/builds/gitlab-org/gitlab/db/post_migrate/20220922090236_remove_trace_column_from_ci_builds.rb", scope="">867 uses one of the allowed migration classes868 migration: #<struct ActiveRecord::MigrationProxy name="ScheduleResetDuplicateCiRunnersTokenValues", version=20220922143143, filename="/builds/gitlab-org/gitlab/db/post_migrate/20220922143143_schedule_reset_duplicate_ci_runners_token_values.rb", scope="">869 uses one of the allowed migration classes870 migration: #<struct ActiveRecord::MigrationProxy name="AddInboundCiJobTokenProjectScopeLinks", version=20220922143612, filename="db/migrate/20220922143612_add_inbound_ci_job_token_project_scope_links.rb", scope="">871 uses one of the allowed migration classes872 migration: #<struct ActiveRecord::MigrationProxy name="ScheduleResetDuplicateCiRunnersTokenEncryptedValues", version=20220922143634, filename="/builds/gitlab-org/gitlab/db/post_migrate/20220922143634_schedule_reset_duplicate_ci_runners_token_encrypted_values.rb", scope="">873 uses one of the allowed migration classes874 migration: #<struct ActiveRecord::MigrationProxy name="RemoveIndexForRequestedNonInvitedAwaitingMembers", version=20220922204106, filename="/builds/gitlab-org/gitlab/db/post_migrate/20220922204106_remove_index_for_requested_non_invited_awaiting_members.rb", scope="">875 uses one of the allowed migration classes876 migration: #<struct ActiveRecord::MigrationProxy name="RemoveTmpIndexMergeRequestReviewersOnAttentionRequestedState", version=20220923052531, filename="/builds/gitlab-org/gitlab/db/post_migrate/20220923052531_remove_tmp_index_merge_request_reviewers_on_attention_requested_state.rb", scope="">877 uses one of the allowed migration classes878 migration: #<struct ActiveRecord::MigrationProxy name="RemoveTmpIndexSystemNoteMetadataOnAttentionRequestActions", version=20220923060226, filename="/builds/gitlab-org/gitlab/db/post_migrate/20220923060226_remove_tmp_index_system_note_metadata_on_attention_request_actions.rb", scope="">879 uses one of the allowed migration classes880 migration: #<struct ActiveRecord::MigrationProxy name="AddCiPipelineMetadataTitle", version=20220923103006, filename="db/migrate/20220923103006_add_ci_pipeline_metadata_title.rb", scope="">881 uses one of the allowed migration classes882 migration: #<struct ActiveRecord::MigrationProxy name="AddMirrorBranchRegexToProjectSettings", version=20220926023734, filename="db/migrate/20220926023734_add_mirror_branch_regex_to_project_settings.rb", scope="">883 uses one of the allowed migration classes884 migration: #<struct ActiveRecord::MigrationProxy name="AddColumnInboundJobTokenScopeEnabledToCiCdSetting", version=20220927155407, filename="db/migrate/20220927155407_add_column_inbound_job_token_scope_enabled_to_ci_cd_setting.rb", scope="">885 uses one of the allowed migration classes886 migration: #<struct ActiveRecord::MigrationProxy name="PrepareForVulnerabilityOccurrencesUuidTypeTransition", version=20220927171740, filename="/builds/gitlab-org/gitlab/db/post_migrate/20220927171740_prepare_for_vulnerability_occurrences_uuid_type_transition.rb", scope="">887 uses one of the allowed migration classes888 migration: #<struct ActiveRecord::MigrationProxy name="CreateProjectWikiRepositoryStates", version=20220928201920, filename="db/migrate/20220928201920_create_project_wiki_repository_states.rb", scope="">889 uses one of the allowed migration classes890 migration: #<struct ActiveRecord::MigrationProxy name="ScheduleUpdateCiPipelineArtifactsLockedStatus", version=20220928225711, filename="/builds/gitlab-org/gitlab/db/post_migrate/20220928225711_schedule_update_ci_pipeline_artifacts_locked_status.rb", scope="">891 uses one of the allowed migration classes892 migration: #<struct ActiveRecord::MigrationProxy name="TmpIdxNullMemberNamespaceId", version=20220929081645, filename="/builds/gitlab-org/gitlab/db/post_migrate/20220929081645_tmp_idx_null_member_namespace_id.rb", scope="">893 uses one of the allowed migration classes894 migration: #<struct ActiveRecord::MigrationProxy name="AddTmpIndexVulnsOnReportType", version=20220929091500, filename="/builds/gitlab-org/gitlab/db/post_migrate/20220929091500_add_tmp_index_vulns_on_report_type.rb", scope="">895 uses one of the allowed migration classes896 migration: #<struct ActiveRecord::MigrationProxy name="DeleteRemoveInvalidMemberMigration", version=20220929101947, filename="/builds/gitlab-org/gitlab/db/post_migrate/20220929101947_delete_remove_invalid_member_migration.rb", scope="">897 uses one of the allowed migration classes898 migration: #<struct ActiveRecord::MigrationProxy name="AddPypiPackageRequestsForwardingToNamespacePackageSettings", version=20220929171925, filename="db/migrate/20220929171925_add_pypi_package_requests_forwarding_to_namespace_package_settings.rb", scope="">899 uses one of the allowed migration classes900 migration: #<struct ActiveRecord::MigrationProxy name="AddNpmPackageRequestsForwardingToNamespacePackageSettings", version=20220929172356, filename="db/migrate/20220929172356_add_npm_package_requests_forwarding_to_namespace_package_settings.rb", scope="">901 uses one of the allowed migration classes902 migration: #<struct ActiveRecord::MigrationProxy name="AddIndexReleasesProjectIdId", version=20220929194453, filename="/builds/gitlab-org/gitlab/db/post_migrate/20220929194453_add_index_releases_project_id_id.rb", scope="">903 uses one of the allowed migration classes904 migration: #<struct ActiveRecord::MigrationProxy name="ScheduleDeleteOrphanedOperationalVulnerabilities", version=20220929213730, filename="/builds/gitlab-org/gitlab/db/post_migrate/20220929213730_schedule_delete_orphaned_operational_vulnerabilities.rb", scope="">905 uses one of the allowed migration classes906 migration: #<struct ActiveRecord::MigrationProxy name="RemoveUniqueIndexBuildIdToCiBuildsMetadata", version=20220930110127, filename="/builds/gitlab-org/gitlab/db/post_migrate/20220930110127_remove_unique_index_build_id_to_ci_builds_metadata.rb", scope="">907 uses one of the allowed migration classes908 migration: #<struct ActiveRecord::MigrationProxy name="AddMigratedToStateTransitionToVulnerabilityFeedback", version=20220930125609, filename="db/migrate/20220930125609_add_migrated_to_state_transition_to_vulnerability_feedback.rb", scope="">909 uses one of the allowed migration classes910 migration: #<struct ActiveRecord::MigrationProxy name="FinalizeGroupMemberNamespaceIdMigration", version=20221002234454, filename="/builds/gitlab-org/gitlab/db/post_migrate/20221002234454_finalize_group_member_namespace_id_migration.rb", scope="">911 uses one of the allowed migration classes912 migration: #<struct ActiveRecord::MigrationProxy name="CreateAuditEventsStreamingEventTypeFilters", version=20221003151747, filename="db/migrate/20221003151747_create_audit_events_streaming_event_type_filters.rb", scope="">913 uses one of the allowed migration classes914 migration: #<struct ActiveRecord::MigrationProxy name="AddIndexResolvedOnDefaultBranchToVulnerabilitiesRead", version=20221003192827, filename="/builds/gitlab-org/gitlab/db/post_migrate/20221003192827_add_index_resolved_on_default_branch_to_vulnerabilities_read.rb", scope="">915 uses one of the allowed migration classes916 migration: #<struct ActiveRecord::MigrationProxy name="RoutingTablePrepareConstraintForBuildsMetadata", version=20221004074910, filename="/builds/gitlab-org/gitlab/db/post_migrate/20221004074910_routing_table_prepare_constraint_for_builds_metadata.rb", scope="">917 uses one of the allowed migration classes918 migration: #<struct ActiveRecord::MigrationProxy name="CreateRoutingTableForBuildsMetadata", version=20221004074914, filename="/builds/gitlab-org/gitlab/db/post_migrate/20221004074914_create_routing_table_for_builds_metadata.rb", scope="">919 uses one of the allowed migration classes920 migration: #<struct ActiveRecord::MigrationProxy name="TmpIndexMembersOnIdWhereNamespaceIdNull", version=20221004092038, filename="/builds/gitlab-org/gitlab/db/post_migrate/20221004092038_tmp_index_members_on_id_where_namespace_id_null.rb", scope="">921 uses one of the allowed migration classes922 migration: #<struct ActiveRecord::MigrationProxy name="ScheduleDestroyInvalidMembers", version=20221004094814, filename="/builds/gitlab-org/gitlab/db/post_migrate/20221004094814_schedule_destroy_invalid_members.rb", scope="">923 uses one of the allowed migration classes924 migration: #<struct ActiveRecord::MigrationProxy name="CreateIncidentManagementTimelineEventTags", version=20221005072353, filename="db/migrate/20221005072353_create_incident_management_timeline_event_tags.rb", scope="">925 uses one of the allowed migration classes926 migration: #<struct ActiveRecord::MigrationProxy name="CreateIncidentManagementTimelineEventTagLinks", version=20221005094926, filename="db/migrate/20221005094926_create_incident_management_timeline_event_tag_links.rb", scope="">927 uses one of the allowed migration classes928 migration: #<struct ActiveRecord::MigrationProxy name="AddIndexMergeRequestIdOnScanFindingApprovalMergeRequestRules", version=20221005103000, filename="/builds/gitlab-org/gitlab/db/post_migrate/20221005103000_add_index_merge_request_id_on_scan_finding_approval_merge_request_rules.rb", scope="">929 uses one of the allowed migration classes930 migration: #<struct ActiveRecord::MigrationProxy name="AddIndexProjectIdOnScanFindingApprovalProjectRules", version=20221005103010, filename="db/migrate/20221005103010_add_index_project_id_on_scan_finding_approval_project_rules.rb", scope="">931 uses one of the allowed migration classes932 migration: #<struct ActiveRecord::MigrationProxy name="FinalizeInvalidMemberCleanup", version=20221006070927, filename="/builds/gitlab-org/gitlab/db/post_migrate/20221006070927_finalize_invalid_member_cleanup.rb", scope="">933 uses one of the allowed migration classes934 migration: #<struct ActiveRecord::MigrationProxy name="PreparePartialTrigramIndexesForIssuesAttempt2", version=20221006083240, filename="/builds/gitlab-org/gitlab/db/post_migrate/20221006083240_prepare_partial_trigram_indexes_for_issues_attempt_2.rb", scope="">935 uses one of the allowed migration classes936 migration: #<struct ActiveRecord::MigrationProxy name="AddFreeUserCapOverLimitNotifiedAtToNamespaceDetails", version=20221006131506, filename="db/migrate/20221006131506_add_free_user_cap_over_limit_notified_at_to_namespace_details.rb", scope="">937 uses one of the allowed migration classes938 migration: #<struct ActiveRecord::MigrationProxy name="AddTargetsToElasticReindexingTasks", version=20221006141145, filename="db/migrate/20221006141145_add_targets_to_elastic_reindexing_tasks.rb", scope="">939 uses one of the allowed migration classes940 migration: #<struct ActiveRecord::MigrationProxy name="AdjustTaskNoteRenameBackgroundMigrationValues", version=20221006172302, filename="/builds/gitlab-org/gitlab/db/post_migrate/20221006172302_adjust_task_note_rename_background_migration_values.rb", scope="">941 uses one of the allowed migration classes942 migration: #<struct ActiveRecord::MigrationProxy name="AddPasswordExpirationMigration", version=20221008032350, filename="db/migrate/20221008032350_add_password_expiration_migration.rb", scope="">943 uses one of the allowed migration classes944 migration: #<struct ActiveRecord::MigrationProxy name="AddMrChecksColumnsToNamespaceSettings", version=20221009085130, filename="db/migrate/20221009085130_add_mr_checks_columns_to_namespace_settings.rb", scope="">945 uses one of the allowed migration classes946 migration: #<struct ActiveRecord::MigrationProxy name="MigrateSecurityFindingsDeleteQueues", version=20221010074914, filename="/builds/gitlab-org/gitlab/db/post_migrate/20221010074914_migrate_security_findings_delete_queues.rb", scope="">947 uses one of the allowed migration classes948 migration: #<struct ActiveRecord::MigrationProxy name="AddProductAnalyticsEnabledToApplicationSettings", version=20221010103207, filename="db/migrate/20221010103207_add_product_analytics_enabled_to_application_settings.rb", scope="">949 uses one of the allowed migration classes950 migration: #<struct ActiveRecord::MigrationProxy name="PrepareAsyncIndexAuthorIdTargetProjectIdOnMergeRequests", version=20221010121510, filename="/builds/gitlab-org/gitlab/db/post_migrate/20221010121510_prepare_async_index_author_id_target_project_id_on_merge_requests.rb", scope="">951 uses one of the allowed migration classes952 migration: #<struct ActiveRecord::MigrationProxy name="AddComplianceFrameworkIdToNamespaceSettings", version=20221010121807, filename="db/migrate/20221010121807_add_compliance_framework_id_to_namespace_settings.rb", scope="">953 uses one of the allowed migration classes954 migration: #<struct ActiveRecord::MigrationProxy name="AddAsyncIndexAuthorIdTargetProjectIdOnMergeRequests", version=20221010122138, filename="/builds/gitlab-org/gitlab/db/post_migrate/20221010122138_add_async_index_author_id_target_project_id_on_merge_requests.rb", scope="">955 uses one of the allowed migration classes956 migration: #<struct ActiveRecord::MigrationProxy name="AddIndexToNamespaceSettingsOnDefaultComplianceFrameworkId", version=20221010122352, filename="/builds/gitlab-org/gitlab/db/post_migrate/20221010122352_add_index_to_namespace_settings_on_default_compliance_framework_id.rb", scope="">957 uses one of the allowed migration classes958 migration: #<struct ActiveRecord::MigrationProxy name="AddComplianceFrameworkFkToNamespaceSettings", version=20221010123040, filename="/builds/gitlab-org/gitlab/db/post_migrate/20221010123040_add_compliance_framework_fk_to_namespace_settings.rb", scope="">959 uses one of the allowed migration classes960 migration: #<struct ActiveRecord::MigrationProxy name="AddIndexAuthorIdTargetProjectIdOnMergeRequests", version=20221010141500, filename="/builds/gitlab-org/gitlab/db/post_migrate/20221010141500_add_index_author_id_target_project_id_on_merge_requests.rb", scope="">961 uses one of the allowed migration classes962 migration: #<struct ActiveRecord::MigrationProxy name="AddIndexAuthorIdAndIdOnMergeRequests", version=20221010162137, filename="/builds/gitlab-org/gitlab/db/post_migrate/20221010162137_add_index_author_id_and_id_on_merge_requests.rb", scope="">963 uses one of the allowed migration classes964 migration: #<struct ActiveRecord::MigrationProxy name="AddNewAmountUsedToCiProjectMonthlyUsages", version=20221010184839, filename="db/migrate/20221010184839_add_new_amount_used_to_ci_project_monthly_usages.rb", scope="">965 uses one of the allowed migration classes966 migration: #<struct ActiveRecord::MigrationProxy name="AddPurlTypeToSbomComponents", version=20221010201815, filename="db/migrate/20221010201815_add_purl_type_to_sbom_components.rb", scope="">967 uses one of the allowed migration classes968 migration: #<struct ActiveRecord::MigrationProxy name="RemoveUniqueIndexOnSbomComponentsTypeAndName", version=20221010202339, filename="db/migrate/20221010202339_remove_unique_index_on_sbom_components_type_and_name.rb", scope="">969 uses one of the allowed migration classes970 migration: #<struct ActiveRecord::MigrationProxy name="AddUniqueIndexOnSbomComponentsTypeNameAndPurlType", version=20221010202408, filename="db/migrate/20221010202408_add_unique_index_on_sbom_components_type_name_and_purl_type.rb", scope="">971 uses one of the allowed migration classes972 migration: #<struct ActiveRecord::MigrationProxy name="SyncNewAmountUsedForCiProjectMonthlyUsages", version=20221011062254, filename="/builds/gitlab-org/gitlab/db/post_migrate/20221011062254_sync_new_amount_used_for_ci_project_monthly_usages.rb", scope="">973 uses one of the allowed migration classes974 migration: #<struct ActiveRecord::MigrationProxy name="RedoRemoveAndAddCiJobVariablesRawWithNewDefault", version=20221011113928, filename="/builds/gitlab-org/gitlab/db/post_migrate/20221011113928_redo_remove_and_add_ci_job_variables_raw_with_new_default.rb", scope="">975 uses one of the allowed migration classes976 migration: #<struct ActiveRecord::MigrationProxy name="AddPartialIndexProjectIncidentManagementSettingsOnProjectIdAndSlaTimer", version=20221011162637, filename="db/migrate/20221011162637_add_partial_index_project_incident_management_settings_on_project_id_and_sla_timer.rb", scope="">977 uses one of the allowed migration classes978 migration: #<struct ActiveRecord::MigrationProxy name="AddUseLegacyWebIdeToUserPreferences", version=20221011210455, filename="db/migrate/20221011210455_add_use_legacy_web_ide_to_user_preferences.rb", scope="">979 uses one of the allowed migration classes980 migration: #<struct ActiveRecord::MigrationProxy name="AddPasswordLastChangedAtToUserDetails", version=20221012033107, filename="db/migrate/20221012033107_add_password_last_changed_at_to_user_details.rb", scope="">981 uses one of the allowed migration classes982 migration: #<struct ActiveRecord::MigrationProxy name="AddScanFilePathLimitForDastSiteProfile", version=20221012135524, filename="db/migrate/20221012135524_add_scan_file_path_limit_for_dast_site_profile.rb", scope="">983 uses one of the allowed migration classes984 migration: #<struct ActiveRecord::MigrationProxy name="RemoveNamespaceSettingsCohortFreeUserCapColumns", version=20221012182701, filename="/builds/gitlab-org/gitlab/db/post_migrate/20221012182701_remove_namespace_settings_cohort_free_user_cap_columns.rb", scope="">985 uses one of the allowed migration classes986 migration: #<struct ActiveRecord::MigrationProxy name="AddDisableAdminOauthScopes", version=20221013103738, filename="db/migrate/20221013103738_add_disable_admin_oauth_scopes.rb", scope="">987 uses one of the allowed migration classes988 migration: #<struct ActiveRecord::MigrationProxy name="UpdateInvalidDormantUserSetting", version=20221013154159, filename="/builds/gitlab-org/gitlab/db/post_migrate/20221013154159_update_invalid_dormant_user_setting.rb", scope="">989 uses one of the allowed migration classes990 migration: #<struct ActiveRecord::MigrationProxy name="CleanupVulnerabilityStateTransitionsWithSameFromStateToState", version=20221013215832, filename="/builds/gitlab-org/gitlab/db/post_migrate/20221013215832_cleanup_vulnerability_state_transitions_with_same_from_state_to_state.rb", scope="">991 uses one of the allowed migration classes992 migration: #<struct ActiveRecord::MigrationProxy name="AddTempIndexToProjectFeaturesWhereReleasesAccessLevelGtRepository", version=20221014031033, filename="db/migrate/20221014031033_add_temp_index_to_project_features_where_releases_access_level_gt_repository.rb", scope="">993 uses one of the allowed migration classes994 migration: #<struct ActiveRecord::MigrationProxy name="PopulateReleasesAccessLevelFromRepository", version=20221014034338, filename="db/migrate/20221014034338_populate_releases_access_level_from_repository.rb", scope="">995 uses one of the allowed migration classes996 migration: #<struct ActiveRecord::MigrationProxy name="DropNotesNoteTrigramIndex", version=20221014190040, filename="db/migrate/20221014190040_drop_notes_note_trigram_index.rb", scope="">997 uses one of the allowed migration classes998 migration: #<struct ActiveRecord::MigrationProxy name="AddEmailConfirmationSettingToApplicationSettings", version=20221015000511, filename="db/migrate/20221015000511_add_email_confirmation_setting_to_application_settings.rb", scope="">999 uses one of the allowed migration classes1000 migration: #<struct ActiveRecord::MigrationProxy name="RenameCiPipelineMetadataTitle", version=20221017084208, filename="db/migrate/20221017084208_rename_ci_pipeline_metadata_title.rb", scope="">1001 uses one of the allowed migration classes1002 migration: #<struct ActiveRecord::MigrationProxy name="CleanupRenameCiPipelineMetadataTitle", version=20221017084227, filename="/builds/gitlab-org/gitlab/db/post_migrate/20221017084227_cleanup_rename_ci_pipeline_metadata_title.rb", scope="">1003 uses one of the allowed migration classes1004 migration: #<struct ActiveRecord::MigrationProxy name="AddObjectiveAndKeyresultToWorkItemTypes", version=20221018050323, filename="db/migrate/20221018050323_add_objective_and_keyresult_to_work_item_types.rb", scope="">1005 uses one of the allowed migration classes1006 migration: #<struct ActiveRecord::MigrationProxy name="ScheduleBackfillProjectNamespaceDetails", version=20221018062308, filename="/builds/gitlab-org/gitlab/db/post_migrate/20221018062308_schedule_backfill_project_namespace_details.rb", scope="">1007 uses one of the allowed migration classes1008 migration: #<struct ActiveRecord::MigrationProxy name="MembersRemoveMemberNamespaceIdNotNullConstraint", version=20221018081416, filename="db/migrate/20221018081416_members_remove_member_namespace_id_not_null_constraint.rb", scope="">1009 uses one of the allowed migration classes1010 migration: #<struct ActiveRecord::MigrationProxy name="AddFileNameIndexToPackagesRpmRepositoryFiles", version=20221018092552, filename="db/migrate/20221018092552_add_file_name_index_to_packages_rpm_repository_files.rb", scope="">1011 uses one of the allowed migration classes1012 migration: #<struct ActiveRecord::MigrationProxy name="AddConsumeAfterToGhostUserMigrations", version=20221018124029, filename="db/migrate/20221018124029_add_consume_after_to_ghost_user_migrations.rb", scope="">1013 uses one of the allowed migration classes1014 migration: #<struct ActiveRecord::MigrationProxy name="AddConsumeAfterIndexToGhostUserMigrations", version=20221018124035, filename="db/migrate/20221018124035_add_consume_after_index_to_ghost_user_migrations.rb", scope="">1015 uses one of the allowed migration classes1016 migration: #<struct ActiveRecord::MigrationProxy name="EnsureTaskNoteRenamingBackgroundMigrationFinished", version=20221018193635, filename="/builds/gitlab-org/gitlab/db/post_migrate/20221018193635_ensure_task_note_renaming_background_migration_finished.rb", scope="">1017 uses one of the allowed migration classes1018 migration: #<struct ActiveRecord::MigrationProxy name="DropTmpIndexSystemNoteMetadataOnIdWhereTask", version=20221018193827, filename="/builds/gitlab-org/gitlab/db/post_migrate/20221018193827_drop_tmp_index_system_note_metadata_on_id_where_task.rb", scope="">1019 uses one of the allowed migration classes1020 migration: #<struct ActiveRecord::MigrationProxy name="CreateDependencyProxyBlobStates", version=20221018202524, filename="db/migrate/20221018202524_create_dependency_proxy_blob_states.rb", scope="">1021 uses one of the allowed migration classes1022 migration: #<struct ActiveRecord::MigrationProxy name="AddTempIndexForUserDetailsFields", version=20221018232820, filename="/builds/gitlab-org/gitlab/db/post_migrate/20221018232820_add_temp_index_for_user_details_fields.rb", scope="">1023 uses one of the allowed migration classes1024 migration: #<struct ActiveRecord::MigrationProxy name="QueueBackfillUserDetailsFields", version=20221019002459, filename="/builds/gitlab-org/gitlab/db/post_migrate/20221019002459_queue_backfill_user_details_fields.rb", scope="">1025 uses one of the allowed migration classes1026 migration: #<struct ActiveRecord::MigrationProxy name="RemoveTmpIndexApprovalMergeRequestRulesOnReportType", version=20221019102426, filename="/builds/gitlab-org/gitlab/db/post_migrate/20221019102426_remove_tmp_index_approval_merge_request_rules_on_report_type.rb", scope="">1027 uses one of the allowed migration classes1028 migration: #<struct ActiveRecord::MigrationProxy name="QueuePopulateProjectsStarCount", version=20221019105041, filename="/builds/gitlab-org/gitlab/db/post_migrate/20221019105041_queue_populate_projects_star_count.rb", scope="">1029 uses one of the allowed migration classes1030 migration: #<struct ActiveRecord::MigrationProxy name="AddIndexToTestReportsIssueIdCreatedAtAndId", version=20221019141508, filename="/builds/gitlab-org/gitlab/db/post_migrate/20221019141508_add_index_to_test_reports_issue_id_created_at_and_id.rb", scope="">1031 uses one of the allowed migration classes1032 migration: #<struct ActiveRecord::MigrationProxy name="DisableFastupdateOnIssuesTitleGinIndex", version=20221019194751, filename="/builds/gitlab-org/gitlab/db/post_migrate/20221019194751_disable_fastupdate_on_issues_title_gin_index.rb", scope="">1033 uses one of the allowed migration classes1034 migration: #<struct ActiveRecord::MigrationProxy name="DisableFastupdateOnIssuesDescriptionGinIndex", version=20221019195754, filename="/builds/gitlab-org/gitlab/db/post_migrate/20221019195754_disable_fastupdate_on_issues_description_gin_index.rb", scope="">1035 uses one of the allowed migration classes1036 migration: #<struct ActiveRecord::MigrationProxy name="DisableFastupdateOnMergeRequestsTitleGinIndex", version=20221019200033, filename="/builds/gitlab-org/gitlab/db/post_migrate/20221019200033_disable_fastupdate_on_merge_requests_title_gin_index.rb", scope="">1037 uses one of the allowed migration classes1038 migration: #<struct ActiveRecord::MigrationProxy name="DisableFastupdateOnMergeRequestsDescriptionGinIndex", version=20221019200206, filename="/builds/gitlab-org/gitlab/db/post_migrate/20221019200206_disable_fastupdate_on_merge_requests_description_gin_index.rb", scope="">1039 uses one of the allowed migration classes1040 migration: #<struct ActiveRecord::MigrationProxy name="AddDeleteStartedAtToContainerRepositories", version=20221020124018, filename="db/migrate/20221020124018_add_delete_started_at_to_container_repositories.rb", scope="">1041 uses one of the allowed migration classes1042 migration: #<struct ActiveRecord::MigrationProxy name="AddUniqueIndexOnCiRunnersToken", version=20221021082255, filename="/builds/gitlab-org/gitlab/db/post_migrate/20221021082255_add_unique_index_on_ci_runners_token.rb", scope="">1043 uses one of the allowed migration classes1044 migration: #<struct ActiveRecord::MigrationProxy name="AddUniqueIndexOnCiRunnersTokenEncrypted", version=20221021082312, filename="/builds/gitlab-org/gitlab/db/post_migrate/20221021082312_add_unique_index_on_ci_runners_token_encrypted.rb", scope="">1045 uses one of the allowed migration classes1046 migration: #<struct ActiveRecord::MigrationProxy name="DropIndexOnCiRunnersToken", version=20221021082720, filename="/builds/gitlab-org/gitlab/db/post_migrate/20221021082720_drop_index_on_ci_runners_token.rb", scope="">1047 uses one of the allowed migration classes1048 migration: #<struct ActiveRecord::MigrationProxy name="DropIndexOnCiRunnersTokenEncrypted", version=20221021082734, filename="/builds/gitlab-org/gitlab/db/post_migrate/20221021082734_drop_index_on_ci_runners_token_encrypted.rb", scope="">1049 uses one of the allowed migration classes1050 migration: #<struct ActiveRecord::MigrationProxy name="CreateRoutingTableForBuildsMetadataV2", version=20221021145820, filename="/builds/gitlab-org/gitlab/db/post_migrate/20221021145820_create_routing_table_for_builds_metadata_v2.rb", scope="">1051 uses one of the allowed migration classes1052 migration: #<struct ActiveRecord::MigrationProxy name="AddIndexForCommonFinderQueryDescWithNamespaceId", version=20221021160735, filename="/builds/gitlab-org/gitlab/db/post_migrate/20221021160735_add_index_for_common_finder_query_desc_with_namespace_id.rb", scope="">1053 uses one of the allowed migration classes1054 migration: #<struct ActiveRecord::MigrationProxy name="CreateNamespaceCommitEmails", version=20221021213216, filename="db/migrate/20221021213216_create_namespace_commit_emails.rb", scope="">1055 uses one of the allowed migration classes1056 migration: #<struct ActiveRecord::MigrationProxy name="AddNamespaceCommitEmailsNamespaceFk", version=20221022213505, filename="db/migrate/20221022213505_add_namespace_commit_emails_namespace_fk.rb", scope="">1057 uses one of the allowed migration classes1058 migration: #<struct ActiveRecord::MigrationProxy name="AddNamespaceCommitEmailsEmailFk", version=20221022213521, filename="db/migrate/20221022213521_add_namespace_commit_emails_email_fk.rb", scope="">1059 uses one of the allowed migration classes1060 migration: #<struct ActiveRecord::MigrationProxy name="RemoveSprintsProjectIdColumn", version=20221024034228, filename="/builds/gitlab-org/gitlab/db/post_migrate/20221024034228_remove_sprints_project_id_column.rb", scope="">1061 uses one of the allowed migration classes1062 migration: #<struct ActiveRecord::MigrationProxy name="DropFingerprintFromSbomSources", version=20221024121500, filename="/builds/gitlab-org/gitlab/db/post_migrate/20221024121500_drop_fingerprint_from_sbom_sources.rb", scope="">1063 uses one of the allowed migration classes1064 migration: #<struct ActiveRecord::MigrationProxy name="ChangeDefaultValueOnPasswordLastChangedAtToUserDetails", version=20221025043930, filename="db/migrate/20221025043930_change_default_value_on_password_last_changed_at_to_user_details.rb", scope="">1065 uses one of the allowed migration classes1066 migration: #<struct ActiveRecord::MigrationProxy name="AddStatusAndIdIndexToContainerRepositories", version=20221025105205, filename="db/migrate/20221025105205_add_status_and_id_index_to_container_repositories.rb", scope="">1067 uses one of the allowed migration classes1068 migration: #<struct ActiveRecord::MigrationProxy name="CheckVulnerabilitiesStateTransitionFromStateNotEqualToState", version=20221025115006, filename="/builds/gitlab-org/gitlab/db/post_migrate/20221025115006_check_vulnerabilities_state_transition_from_state_not_equal_to_state.rb", scope="">1069 uses one of the allowed migration classes1070 migration: #<struct ActiveRecord::MigrationProxy name="ChangeVulnerabilityFeedbackUniqueIdx", version=20221025145452, filename="db/migrate/20221025145452_change_vulnerability_feedback_unique_idx.rb", scope="">1071 uses one of the allowed migration classes1072 migration: #<struct ActiveRecord::MigrationProxy name="AddIndexForFindingUuidAndFeedbackTypeOnFeedback", version=20221025150202, filename="db/migrate/20221025150202_add_index_for_finding_uuid_and_feedback_type_on_feedback.rb", scope="">1073 uses one of the allowed migration classes1074 migration: #<struct ActiveRecord::MigrationProxy name="AddIndexIdOnScanFindingApprovalMergeRequestRules", version=20221025220607, filename="/builds/gitlab-org/gitlab/db/post_migrate/20221025220607_add_index_id_on_scan_finding_approval_merge_request_rules.rb", scope="">1075 uses one of the allowed migration classes1076 migration: #<struct ActiveRecord::MigrationProxy name="AddStatusUpdatedAtToContainerRepository", version=20221026095133, filename="db/migrate/20221026095133_add_status_updated_at_to_container_repository.rb", scope="">1077 uses one of the allowed migration classes1078 migration: #<struct ActiveRecord::MigrationProxy name="AddTextLimitToProjectSettingsMirrorBranchRegex", version=20221027124848, filename="db/migrate/20221027124848_add_text_limit_to_project_settings_mirror_branch_regex.rb", scope="">1079 uses one of the allowed migration classes1080 migration: #<struct ActiveRecord::MigrationProxy name="DeleteExperimentUserForeignKeys", version=20221027203556, filename="/builds/gitlab-org/gitlab/db/post_migrate/20221027203556_delete_experiment_user_foreign_keys.rb", scope="">1081 uses one of the allowed migration classes1082 migration: #<struct ActiveRecord::MigrationProxy name="DropExperimentUsersTable", version=20221027203951, filename="/builds/gitlab-org/gitlab/db/post_migrate/20221027203951_drop_experiment_users_table.rb", scope="">1083 uses one of the allowed migration classes1084 migration: #<struct ActiveRecord::MigrationProxy name="RemoveInvalidPartialTrigramIndexesForIssues", version=20221028000041, filename="/builds/gitlab-org/gitlab/db/post_migrate/20221028000041_remove_invalid_partial_trigram_indexes_for_issues.rb", scope="">1085 uses one of the allowed migration classes1086 migration: #<struct ActiveRecord::MigrationProxy name="PreparePartialTrigramIndexesForIssuesAttempt3", version=20221028000603, filename="/builds/gitlab-org/gitlab/db/post_migrate/20221028000603_prepare_partial_trigram_indexes_for_issues_attempt_3.rb", scope="">1087 uses one of the allowed migration classes1088 migration: #<struct ActiveRecord::MigrationProxy name="AddCommitCommitterNameCheckToPushRules", version=20221028015347, filename="db/migrate/20221028015347_add_commit_committer_name_check_to_push_rules.rb", scope="">1089 uses one of the allowed migration classes1090 migration: #<struct ActiveRecord::MigrationProxy name="AddIndexOnPasswordLastChangedAtToUserDetails", version=20221028022627, filename="/builds/gitlab-org/gitlab/db/post_migrate/20221028022627_add_index_on_password_last_changed_at_to_user_details.rb", scope="">1091 uses one of the allowed migration classes1092 migration: #<struct ActiveRecord::MigrationProxy name="AddFindingDataColumnToSecurityFindings", version=20221028152422, filename="db/migrate/20221028152422_add_finding_data_column_to_security_findings.rb", scope="">1093 uses one of the allowed migration classes1094 migration: #<struct ActiveRecord::MigrationProxy name="AddUsersForeignKeyToProjects", version=20221031102916, filename="db/migrate/20221031102916_add_users_foreign_key_to_projects.rb", scope="">1095 uses one of the allowed migration classes1096 migration: #<struct ActiveRecord::MigrationProxy name="AddDefaultPreferredLanguageToApplicationSettings", version=20221101032521, filename="db/migrate/20221101032521_add_default_preferred_language_to_application_settings.rb", scope="">1097 uses one of the allowed migration classes1098 migration: #<struct ActiveRecord::MigrationProxy name="AddTextLimitToDefaultPreferredLanguageOnApplicationSettings", version=20221101032600, filename="db/migrate/20221101032600_add_text_limit_to_default_preferred_language_on_application_settings.rb", scope="">1099 uses one of the allowed migration classes1100 migration: #<struct ActiveRecord::MigrationProxy name="CreatePackageMetadata", version=20221101174816, filename="db/migrate/20221101174816_create_package_metadata.rb", scope="">1101 uses one of the allowed migration classes1102 migration: #<struct ActiveRecord::MigrationProxy name="CreatePackageMetadataVersions", version=20221101194416, filename="db/migrate/20221101194416_create_package_metadata_versions.rb", scope="">1103 uses one of the allowed migration classes1104 migration: #<struct ActiveRecord::MigrationProxy name="CreatePackageMetadataLicenses", version=20221101195309, filename="db/migrate/20221101195309_create_package_metadata_licenses.rb", scope="">1105 uses one of the allowed migration classes1106 migration: #<struct ActiveRecord::MigrationProxy name="CreatePackageMetadataPackageVersionLicenses", version=20221101195543, filename="db/migrate/20221101195543_create_package_metadata_package_version_licenses.rb", scope="">1107 uses one of the allowed migration classes1108 migration: #<struct ActiveRecord::MigrationProxy name="ChangeEmailConfirmationSettingDefault", version=20221101195903, filename="db/migrate/20221101195903_change_email_confirmation_setting_default.rb", scope="">1109 uses one of the allowed migration classes1110 migration: #<struct ActiveRecord::MigrationProxy name="SetEmailConfirmationSettingFromSendUserConfirmationEmailSetting", version=20221101201031, filename="db/migrate/20221101201031_set_email_confirmation_setting_from_send_user_confirmation_email_setting.rb", scope="">1111 uses one of the allowed migration classes1112 migration: #<struct ActiveRecord::MigrationProxy name="CreateNextCiPartitionsRecord", version=20221102090940, filename="/builds/gitlab-org/gitlab/db/post_migrate/20221102090940_create_next_ci_partitions_record.rb", scope="">1113 uses one of the allowed migration classes1114 migration: #<struct ActiveRecord::MigrationProxy name="CreateSecondPartitionForBuildsMetadata", version=20221102090943, filename="/builds/gitlab-org/gitlab/db/post_migrate/20221102090943_create_second_partition_for_builds_metadata.rb", scope="">1115 uses one of the allowed migration classes1116 migration: #<struct ActiveRecord::MigrationProxy name="IndexEnvironmentsForNameSearchWithinFolder", version=20221102150737, filename="db/migrate/20221102150737_index_environments_for_name_search_within_folder.rb", scope="">1117 uses one of the allowed migration classes1118 migration: #<struct ActiveRecord::MigrationProxy name="CreateDependencyProxyManifestStates", version=20221102195642, filename="db/migrate/20221102195642_create_dependency_proxy_manifest_states.rb", scope="">1119 uses one of the allowed migration classes1120 migration: #<struct ActiveRecord::MigrationProxy name="ExtendX509SubjectLimit", version=20221102202130, filename="db/migrate/20221102202130_extend_x509_subject_limit.rb", scope="">1121 uses one of the allowed migration classes1122 migration: #<struct ActiveRecord::MigrationProxy name="AddMaxSeatsUsedChangedAtIndexToGitlabSubscriptions", version=20221102225800, filename="db/migrate/20221102225800_add_max_seats_used_changed_at_index_to_gitlab_subscriptions.rb", scope="">1123 uses one of the allowed migration classes1124 migration: #<struct ActiveRecord::MigrationProxy name="ChangeMemberNamespaceIdNotNull", version=20221103073328, filename="/builds/gitlab-org/gitlab/db/post_migrate/20221103073328_change_member_namespace_id_not_null.rb", scope="">1125 uses one of the allowed migration classes1126 migration: #<struct ActiveRecord::MigrationProxy name="RemoveTmpIndexMembersOnIdWhereNamespaceIdNull", version=20221103084213, filename="/builds/gitlab-org/gitlab/db/post_migrate/20221103084213_remove_tmp_index_members_on_id_where_namespace_id_null.rb", scope="">1127 uses one of the allowed migration classes1128 migration: #<struct ActiveRecord::MigrationProxy name="AddPartialIndexOnPrimaryKeyOfSecurityScans", version=20221103131409, filename="db/migrate/20221103131409_add_partial_index_on_primary_key_of_security_scans.rb", scope="">1129 uses one of the allowed migration classes1130 migration: #<struct ActiveRecord::MigrationProxy name="MigrateSidekiqQueuedJobs", version=20221103150250, filename="/builds/gitlab-org/gitlab/db/post_migrate/20221103150250_migrate_sidekiq_queued_jobs.rb", scope="">1131 uses one of the allowed migration classes1132 migration: #<struct ActiveRecord::MigrationProxy name="CreateDastPreScanVerification", version=20221103205317, filename="db/migrate/20221103205317_create_dast_pre_scan_verification.rb", scope="">1133 uses one of the allowed migration classes1134 migration: #<struct ActiveRecord::MigrationProxy name="AddPartialTrigramIndexForIssueTitleAttempt2", version=20221104042137, filename="/builds/gitlab-org/gitlab/db/post_migrate/20221104042137_add_partial_trigram_index_for_issue_title_attempt_2.rb", scope="">1135 uses one of the allowed migration classes1136 migration: #<struct ActiveRecord::MigrationProxy name="AddPartialTrigramIndexForIssueDescriptionAttempt2", version=20221104042159, filename="/builds/gitlab-org/gitlab/db/post_migrate/20221104042159_add_partial_trigram_index_for_issue_description_attempt_2.rb", scope="">1137 uses one of the allowed migration classes1138 migration: #<struct ActiveRecord::MigrationProxy name="AddDisableDownloadButtonIntoApplicationSettings", version=20221104061320, filename="db/migrate/20221104061320_add_disable_download_button_into_application_settings.rb", scope="">1139 uses one of the allowed migration classes1140 migration: #<struct ActiveRecord::MigrationProxy name="AddTempIndexForProjectStatisticsUploadSizeMigration", version=20221104074652, filename="/builds/gitlab-org/gitlab/db/post_migrate/20221104074652_add_temp_index_for_project_statistics_upload_size_migration.rb", scope="">1141 uses one of the allowed migration classes1142 migration: #<struct ActiveRecord::MigrationProxy name="RemoveUsersForeignKeyToProjects", version=20221104094042, filename="db/migrate/20221104094042_remove_users_foreign_key_to_projects.rb", scope="">1143 uses one of the allowed migration classes1144 migration: #<struct ActiveRecord::MigrationProxy name="RecreateAsyncTrigramIndexForVulnerabilityReadsContainerImages", version=20221104100203, filename="/builds/gitlab-org/gitlab/db/post_migrate/20221104100203_recreate_async_trigram_index_for_vulnerability_reads_container_images.rb", scope="">1145 uses one of the allowed migration classes1146 migration: #<struct ActiveRecord::MigrationProxy name="AddIndexForNonPublicTopLevelGroupsToNamespaces", version=20221104141647, filename="/builds/gitlab-org/gitlab/db/post_migrate/20221104141647_add_index_for_non_public_top_level_groups_to_namespaces.rb", scope="">1147 uses one of the allowed migration classes1148 migration: #<struct ActiveRecord::MigrationProxy name="AddVulnerabilityReadsAllStatusIndex", version=20221104170500, filename="/builds/gitlab-org/gitlab/db/post_migrate/20221104170500_add_vulnerability_reads_all_status_index.rb", scope="">1149 uses one of the allowed migration classes1150 migration: #<struct ActiveRecord::MigrationProxy name="ValidateEnvironmentIdOnDeployments", version=20221104190203, filename="/builds/gitlab-org/gitlab/db/post_migrate/20221104190203_validate_environment_id_on_deployments.rb", scope="">1151 uses one of the allowed migration classes1152 migration: #<struct ActiveRecord::MigrationProxy name="AddAcceptedReviewersToMergeRequestPredictions", version=20221107013943, filename="db/migrate/20221107013943_add_accepted_reviewers_to_merge_request_predictions.rb", scope="">1153 uses one of the allowed migration classes1154 migration: #<struct ActiveRecord::MigrationProxy name="RecountEpicCacheCounts", version=20221107094359, filename="/builds/gitlab-org/gitlab/db/post_migrate/20221107094359_recount_epic_cache_counts.rb", scope="">1155 uses one of the allowed migration classes1156 migration: #<struct ActiveRecord::MigrationProxy name="ChangeScimIdentityGroupIdRemoveNull", version=20221107115247, filename="db/migrate/20221107115247_change_scim_identity_group_id_remove_null.rb", scope="">1157 uses one of the allowed migration classes1158 migration: #<struct ActiveRecord::MigrationProxy name="ChangeScimOauthAccessTokenGroupIdRemoveNull", version=20221107115413, filename="db/migrate/20221107115413_change_scim_oauth_access_token_group_id_remove_null.rb", scope="">1159 uses one of the allowed migration classes1160 migration: #<struct ActiveRecord::MigrationProxy name="CreateProjectWikiRepositories", version=20221107183222, filename="db/migrate/20221107183222_create_project_wiki_repositories.rb", scope="">1161 uses one of the allowed migration classes1162 migration: #<struct ActiveRecord::MigrationProxy name="AddNewAmountUsedToCiNamespaceMonthlyUsages", version=20221107184542, filename="db/migrate/20221107184542_add_new_amount_used_to_ci_namespace_monthly_usages.rb", scope="">1163 uses one of the allowed migration classes1164 migration: #<struct ActiveRecord::MigrationProxy name="SyncNewAmountUsedForCiNamespaceMonthlyUsages", version=20221107184758, filename="/builds/gitlab-org/gitlab/db/post_migrate/20221107184758_sync_new_amount_used_for_ci_namespace_monthly_usages.rb", scope="">1165 uses one of the allowed migration classes1166 migration: #<struct ActiveRecord::MigrationProxy name="ValidateNotNullConstraintOnMemberNamespaceId", version=20221107220420, filename="/builds/gitlab-org/gitlab/db/post_migrate/20221107220420_validate_not_null_constraint_on_member_namespace_id.rb", scope="">1167 uses one of the allowed migration classes1168 migration: #<struct ActiveRecord::MigrationProxy name="ValidateFkMemberNamespaceId", version=20221107220526, filename="/builds/gitlab-org/gitlab/db/post_migrate/20221107220526_validate_fk_member_namespace_id.rb", scope="">1169 uses one of the allowed migration classes1170 migration: #<struct ActiveRecord::MigrationProxy name="RemoveOldMemberNamespaceIdFk", version=20221107222213, filename="/builds/gitlab-org/gitlab/db/post_migrate/20221107222213_remove_old_member_namespace_id_fk.rb", scope="">1171 uses one of the allowed migration classes1172 migration: #<struct ActiveRecord::MigrationProxy name="AddTelesignToApplicationSettings", version=20221108015813, filename="db/migrate/20221108015813_add_telesign_to_application_settings.rb", scope="">1173 uses one of the allowed migration classes1174 migration: #<struct ActiveRecord::MigrationProxy name="TruncateTimelineEventTagsTable", version=20221108045019, filename="/builds/gitlab-org/gitlab/db/post_migrate/20221108045019_truncate_timeline_event_tags_table.rb", scope="">1175 uses one of the allowed migration classes1176 migration: #<struct ActiveRecord::MigrationProxy name="AddSupportingIndexForVulnerabilitiesFeedbackMigration", version=20221108121322, filename="/builds/gitlab-org/gitlab/db/post_migrate/20221108121322_add_supporting_index_for_vulnerabilities_feedback_migration.rb", scope="">1177 uses one of the allowed migration classes1178 migration: #<struct ActiveRecord::MigrationProxy name="AddProjectWikiRepositoryIdToProjectWikiRepositoryStates", version=20221108185442, filename="db/migrate/20221108185442_add_project_wiki_repository_id_to_project_wiki_repository_states.rb", scope="">1179 uses one of the allowed migration classes1180 migration: #<struct ActiveRecord::MigrationProxy name="RemoveTempIndexOnProjectFeaturesWhereReleasesAccessLevelGtRepository", version=20221108222015, filename="/builds/gitlab-org/gitlab/db/post_migrate/20221108222015_remove_temp_index_on_project_features_where_releases_access_level_gt_repository.rb", scope="">1181 uses one of the allowed migration classes1182 migration: #<struct ActiveRecord::MigrationProxy name="AddDefaultForApprovalProjectRulesScanners", version=20221109160052, filename="/builds/gitlab-org/gitlab/db/post_migrate/20221109160052_add_default_for_approval_project_rules_scanners.rb", scope="">1183 uses one of the allowed migration classes1184 migration: #<struct ActiveRecord::MigrationProxy name="SanitizeConfidentialNoteTodos", version=20221110045406, filename="/builds/gitlab-org/gitlab/db/post_migrate/20221110045406_sanitize_confidential_note_todos.rb", scope="">1185 uses one of the allowed migration classes1186 migration: #<struct ActiveRecord::MigrationProxy name="AddPartitionIdToCiUnitTestFailures", version=20221110080508, filename="db/migrate/20221110080508_add_partition_id_to_ci_unit_test_failures.rb", scope="">1187 uses one of the allowed migration classes1188 migration: #<struct ActiveRecord::MigrationProxy name="AddPartitionIdToCiSourcesPipelines", version=20221110080636, filename="db/migrate/20221110080636_add_partition_id_to_ci_sources_pipelines.rb", scope="">1189 uses one of the allowed migration classes1190 migration: #<struct ActiveRecord::MigrationProxy name="AddPartitionIdToCiBuildPendingStates", version=20221110080748, filename="db/migrate/20221110080748_add_partition_id_to_ci_build_pending_states.rb", scope="">1191 uses one of the allowed migration classes1192 migration: #<struct ActiveRecord::MigrationProxy name="AddPartitionIdToCiBuildTraceChunks", version=20221110080822, filename="db/migrate/20221110080822_add_partition_id_to_ci_build_trace_chunks.rb", scope="">1193 uses one of the allowed migration classes1194 migration: #<struct ActiveRecord::MigrationProxy name="AddPartitionIdToCiBuildReportResults", version=20221110080913, filename="db/migrate/20221110080913_add_partition_id_to_ci_build_report_results.rb", scope="">1195 uses one of the allowed migration classes1196 migration: #<struct ActiveRecord::MigrationProxy name="AddPartitionIdToCiBuildNeeds", version=20221110080956, filename="db/migrate/20221110080956_add_partition_id_to_ci_build_needs.rb", scope="">1197 uses one of the allowed migration classes1198 migration: #<struct ActiveRecord::MigrationProxy name="AddPartitionIdToCiBuildsRunnerSession", version=20221110081037, filename="db/migrate/20221110081037_add_partition_id_to_ci_builds_runner_session.rb", scope="">1199 uses one of the allowed migration classes1200 migration: #<struct ActiveRecord::MigrationProxy name="AddPartitionIdToCiPendingBuilds", version=20221110081115, filename="db/migrate/20221110081115_add_partition_id_to_ci_pending_builds.rb", scope="">1201 uses one of the allowed migration classes1202 migration: #<struct ActiveRecord::MigrationProxy name="AddPartitionIdToCiBuildTraceMetadata", version=20221110081207, filename="db/migrate/20221110081207_add_partition_id_to_ci_build_trace_metadata.rb", scope="">1203 uses one of the allowed migration classes1204 migration: #<struct ActiveRecord::MigrationProxy name="AddPartitionIdToCiRunningBuilds", version=20221110081348, filename="db/migrate/20221110081348_add_partition_id_to_ci_running_builds.rb", scope="">1205 uses one of the allowed migration classes1206 migration: #<struct ActiveRecord::MigrationProxy name="AddPartitionIdToCiJobVariables", version=20221110081448, filename="db/migrate/20221110081448_add_partition_id_to_ci_job_variables.rb", scope="">1207 uses one of the allowed migration classes1208 migration: #<struct ActiveRecord::MigrationProxy name="AddIndexForInProductMarketingEmailMetrics", version=20221110105857, filename="db/migrate/20221110105857_add_index_for_in_product_marketing_email_metrics.rb", scope="">1209 uses one of the allowed migration classes1210 migration: #<struct ActiveRecord::MigrationProxy name="AddProjectIdLowerNameIndexRemoveOldIndex", version=20221110150942, filename="db/migrate/20221110150942_add_project_id_lower_name_index_remove_old_index.rb", scope="">1211 uses one of the allowed migration classes1212 migration: #<struct ActiveRecord::MigrationProxy name="DeleteOrphansApprovalRules", version=20221110152133, filename="/builds/gitlab-org/gitlab/db/post_migrate/20221110152133_delete_orphans_approval_rules.rb", scope="">1213 uses one of the allowed migration classes1214 migration: #<struct ActiveRecord::MigrationProxy name="AddDashboardFieldsToNamespaceDetails", version=20221110183103, filename="db/migrate/20221110183103_add_dashboard_fields_to_namespace_details.rb", scope="">1215 uses one of the allowed migration classes1216 migration: #<struct ActiveRecord::MigrationProxy name="AddPartialLegacyOpenSourceLicenseAvailableProjectIdIndex", version=20221110190340, filename="/builds/gitlab-org/gitlab/db/post_migrate/20221110190340_add_partial_legacy_open_source_license_available_project_id_index.rb", scope="">1217 uses one of the allowed migration classes1218 migration: #<struct ActiveRecord::MigrationProxy name="PrepareRemovalOfIssueTrigramIndexes", version=20221111070314, filename="/builds/gitlab-org/gitlab/db/post_migrate/20221111070314_prepare_removal_of_issue_trigram_indexes.rb", scope="">1219 uses one of the allowed migration classes1220 migration: #<struct ActiveRecord::MigrationProxy name="AddOnboardingInProgressToUsers", version=20221111123146, filename="db/migrate/20221111123146_add_onboarding_in_progress_to_users.rb", scope="">1221 uses one of the allowed migration classes1222 migration: #<struct ActiveRecord::MigrationProxy name="AddOnboardingStepUrlToUserDetails", version=20221111123147, filename="db/migrate/20221111123147_add_onboarding_step_url_to_user_details.rb", scope="">1223 uses one of the allowed migration classes1224 migration: #<struct ActiveRecord::MigrationProxy name="AddTextLimitToOnboardingStepUrl", version=20221111123148, filename="db/migrate/20221111123148_add_text_limit_to_onboarding_step_url.rb", scope="">1225 uses one of the allowed migration classes1226 migration: #<struct ActiveRecord::MigrationProxy name="CreateDependencyListExportsTable", version=20221111135238, filename="db/migrate/20221111135238_create_dependency_list_exports_table.rb", scope="">1227 uses one of the allowed migration classes1228 migration: #<struct ActiveRecord::MigrationProxy name="AddHierarchyRestrictions", version=20221111142921, filename="db/migrate/20221111142921_add_hierarchy_restrictions.rb", scope="">1229 uses one of the allowed migration classes1230 migration: #<struct ActiveRecord::MigrationProxy name="DeleteExperimentsForeignKeys", version=20221114142044, filename="/builds/gitlab-org/gitlab/db/post_migrate/20221114142044_delete_experiments_foreign_keys.rb", scope="">1231 uses one of the allowed migration classes1232 migration: #<struct ActiveRecord::MigrationProxy name="DropExperimentSubjectsTable", version=20221114142602, filename="/builds/gitlab-org/gitlab/db/post_migrate/20221114142602_drop_experiment_subjects_table.rb", scope="">1233 uses one of the allowed migration classes1234 migration: #<struct ActiveRecord::MigrationProxy name="DropExperimentsTable", version=20221114142616, filename="/builds/gitlab-org/gitlab/db/post_migrate/20221114142616_drop_experiments_table.rb", scope="">1235 uses one of the allowed migration classes1236 migration: #<struct ActiveRecord::MigrationProxy name="AddLastSeatRefreshAtToGitlabSubscriptions", version=20221114145103, filename="db/migrate/20221114145103_add_last_seat_refresh_at_to_gitlab_subscriptions.rb", scope="">1237 uses one of the allowed migration classes1238 migration: #<struct ActiveRecord::MigrationProxy name="AddDebugTraceToCiBuildsMetadata", version=20221114212908, filename="db/migrate/20221114212908_add_debug_trace_to_ci_builds_metadata.rb", scope="">1239 uses one of the allowed migration classes1240 migration: #<struct ActiveRecord::MigrationProxy name="AddIndexForIssuesHealthStatusOrdering", version=20221115120602, filename="/builds/gitlab-org/gitlab/db/post_migrate/20221115120602_add_index_for_issues_health_status_ordering.rb", scope="">1241 uses one of the allowed migration classes1242 migration: #<struct ActiveRecord::MigrationProxy name="EnsureWorkItemTypeBackfillMigrationFinished", version=20221115173607, filename="/builds/gitlab-org/gitlab/db/post_migrate/20221115173607_ensure_work_item_type_backfill_migration_finished.rb", scope="">1243 uses one of the allowed migration classes1244 migration: #<struct ActiveRecord::MigrationProxy name="RemoveNamespacesTmpProjectIdColumn", version=20221115184525, filename="/builds/gitlab-org/gitlab/db/post_migrate/20221115184525_remove_namespaces_tmp_project_id_column.rb", scope="">1245 uses one of the allowed migration classes1246 migration: #<struct ActiveRecord::MigrationProxy name="AddForeignKeyToDependencyListExports", version=20221116100056, filename="db/migrate/20221116100056_add_foreign_key_to_dependency_list_exports.rb", scope="">1247 uses one of the allowed migration classes1248 migration: #<struct ActiveRecord::MigrationProxy name="RemoveIndexProjectSettingsOnLegacyOpenSourceLicenseAvailable", version=20221116105434, filename="/builds/gitlab-org/gitlab/db/post_migrate/20221116105434_remove_index_project_settings_on_legacy_open_source_license_available.rb", scope="">1249 uses one of the allowed migration classes1250 migration: #<struct ActiveRecord::MigrationProxy name="AddIndexOnTeamIdAndChatId", version=20221116113323, filename="db/migrate/20221116113323_add_index_on_team_id_and_chat_id.rb", scope="">1251 uses one of the allowed migration classes1252 migration: #<struct ActiveRecord::MigrationProxy name="AddEnterpriseBooleanToBulkImports", version=20221116124821, filename="db/migrate/20221116124821_add_enterprise_boolean_to_bulk_imports.rb", scope="">1253 uses one of the allowed migration classes1254 migration: #<struct ActiveRecord::MigrationProxy name="AddOkrHierarchyRestrictions", version=20221116143854, filename="/builds/gitlab-org/gitlab/db/post_migrate/20221116143854_add_okr_hierarchy_restrictions.rb", scope="">1255 uses one of the allowed migration classes1256 migration: #<struct ActiveRecord::MigrationProxy name="CreateMlExperimentMetadataAndMlCandidateMetadata", version=20221116160204, filename="db/migrate/20221116160204_create_ml_experiment_metadata_and_ml_candidate_metadata.rb", scope="">1257 uses one of the allowed migration classes1258 migration: #<struct ActiveRecord::MigrationProxy name="AddAuthSigningTypeToKeys", version=20221116161126, filename="db/migrate/20221116161126_add_auth_signing_type_to_keys.rb", scope="">1259 uses one of the allowed migration classes1260 migration: #<struct ActiveRecord::MigrationProxy name="AddAsyncIndexAuthorIdCreatedAtOnMergeRequests", version=20221117103015, filename="/builds/gitlab-org/gitlab/db/post_migrate/20221117103015_add_async_index_author_id_created_at_on_merge_requests.rb", scope="">1261 uses one of the allowed migration classes1262 migration: #<struct ActiveRecord::MigrationProxy name="RemoveClustersApplicationsJobInstances", version=20221117135032, filename="/builds/gitlab-org/gitlab/db/post_migrate/20221117135032_remove_clusters_applications_job_instances.rb", scope="">1263 uses one of the allowed migration classes1264 migration: #<struct ActiveRecord::MigrationProxy name="AddIndexMergeRequestIdCreatedAtOnScanFindingApprovalMergeRequestRules", version=20221117153015, filename="/builds/gitlab-org/gitlab/db/post_migrate/20221117153015_add_index_merge_request_id_created_at_on_scan_finding_approval_merge_request_rules.rb", scope="">1265 uses one of the allowed migration classes1266 migration: #<struct ActiveRecord::MigrationProxy name="FinalizeIssuesNamespaceIdBackfilling", version=20221118103152, filename="/builds/gitlab-org/gitlab/db/post_migrate/20221118103152_finalize_issues_namespace_id_backfilling.rb", scope="">1267 uses one of the allowed migration classes1268 migration: #<struct ActiveRecord::MigrationProxy name="AddCascadeDeleteFkOnIssuesNamespaceId", version=20221118103352, filename="/builds/gitlab-org/gitlab/db/post_migrate/20221118103352_add_cascade_delete_fk_on_issues_namespace_id.rb", scope="">1269 uses one of the allowed migration classes1270 migration: #<struct ActiveRecord::MigrationProxy name="AddNotNullContraintToIssuesNamespaceId", version=20221118103752, filename="/builds/gitlab-org/gitlab/db/post_migrate/20221118103752_add_not_null_contraint_to_issues_namespace_id.rb", scope="">1271 uses one of the allowed migration classes1272 migration: #<struct ActiveRecord::MigrationProxy name="ValidateNotNullContraintToIssuesNamespaceId", version=20221118104752, filename="/builds/gitlab-org/gitlab/db/post_migrate/20221118104752_validate_not_null_contraint_to_issues_namespace_id.rb", scope="">1273 uses one of the allowed migration classes1274 migration: #<struct ActiveRecord::MigrationProxy name="IndexSecurityScansOnCreatedAtAndIdForNonPurgedRecords", version=20221121000127, filename="/builds/gitlab-org/gitlab/db/post_migrate/20221121000127_index_security_scans_on_created_at_and_id_for_non_purged_records.rb", scope="">1275 uses one of the allowed migration classes1276 migration: #<struct ActiveRecord::MigrationProxy name="DropIndexSecurityScansOnIdForNonPurgedRecords", version=20221121000451, filename="/builds/gitlab-org/gitlab/db/post_migrate/20221121000451_drop_index_security_scans_on_id_for_non_purged_records.rb", scope="">1277 uses one of the allowed migration classes1278 migration: #<struct ActiveRecord::MigrationProxy name="AddWorkItemProgress", version=20221121091238, filename="db/migrate/20221121091238_add_work_item_progress.rb", scope="">1279 uses one of the allowed migration classes1280 migration: #<struct ActiveRecord::MigrationProxy name="AddPartitionIdToCiResources", version=20221121100431, filename="db/migrate/20221121100431_add_partition_id_to_ci_resources.rb", scope="">1281 uses one of the allowed migration classes1282 migration: #<struct ActiveRecord::MigrationProxy name="RemoveUnusedFeedbackMigrationIndex", version=20221121152048, filename="/builds/gitlab-org/gitlab/db/post_migrate/20221121152048_remove_unused_feedback_migration_index.rb", scope="">1283 uses one of the allowed migration classes1284 migration: #<struct ActiveRecord::MigrationProxy name="AddSupportingIndexForVulnerabilitiesFeedbackMigration2", version=20221121152515, filename="/builds/gitlab-org/gitlab/db/post_migrate/20221121152515_add_supporting_index_for_vulnerabilities_feedback_migration2.rb", scope="">1285 uses one of the allowed migration classes1286 migration: #<struct ActiveRecord::MigrationProxy name="ChangeVulnerabilitiesStateTransitionsCommentLimit", version=20221121155850, filename="/builds/gitlab-org/gitlab/db/post_migrate/20221121155850_change_vulnerabilities_state_transitions_comment_limit.rb", scope="">1287 uses one of the allowed migration classes1288 migration: #<struct ActiveRecord::MigrationProxy name="DropIndexOnVulnerabilitiesStateCaseId", version=20221121180138, filename="/builds/gitlab-org/gitlab/db/post_migrate/20221121180138_drop_index_on_vulnerabilities_state_case_id.rb", scope="">1289 uses one of the allowed migration classes1290 migration: #<struct ActiveRecord::MigrationProxy name="DropIndexOnVulnerabilitiesStateCaseIdDesc", version=20221121181627, filename="/builds/gitlab-org/gitlab/db/post_migrate/20221121181627_drop_index_on_vulnerabilities_state_case_id_desc.rb", scope="">1291 uses one of the allowed migration classes1292 migration: #<struct ActiveRecord::MigrationProxy name="ValidateNotNullContraintOnIssuesWorkItemTypeId", version=20221121184931, filename="/builds/gitlab-org/gitlab/db/post_migrate/20221121184931_validate_not_null_contraint_on_issues_work_item_type_id.rb", scope="">1293 uses one of the allowed migration classes1294 migration: #<struct ActiveRecord::MigrationProxy name="RemoveIssueTitleTrigramIndex", version=20221122063922, filename="/builds/gitlab-org/gitlab/db/post_migrate/20221122063922_remove_issue_title_trigram_index.rb", scope="">1295 uses one of the allowed migration classes1296 migration: #<struct ActiveRecord::MigrationProxy name="RemoveIssueDescriptionTrigramIndex", version=20221122064537, filename="/builds/gitlab-org/gitlab/db/post_migrate/20221122064537_remove_issue_description_trigram_index.rb", scope="">1297 uses one of the allowed migration classes1298 migration: #<struct ActiveRecord::MigrationProxy name="SchedulePruneStaleProjectExportJobs", version=20221122132812, filename="/builds/gitlab-org/gitlab/db/post_migrate/20221122132812_schedule_prune_stale_project_export_jobs.rb", scope="">1299 uses one of the allowed migration classes1300 migration: #<struct ActiveRecord::MigrationProxy name="AddAllowPipelineTriggerApproveDeploymentToProjectSettings", version=20221122141046, filename="db/migrate/20221122141046_add_allow_pipeline_trigger_approve_deployment_to_project_settings.rb", scope="">1301 uses one of the allowed migration classes1302 migration: #<struct ActiveRecord::MigrationProxy name="AddIndexForPathsOnNonProjects", version=20221122155149, filename="/builds/gitlab-org/gitlab/db/post_migrate/20221122155149_add_index_for_paths_on_non_projects.rb", scope="">1303 uses one of the allowed migration classes1304 migration: #<struct ActiveRecord::MigrationProxy name="QueueResetStatusOnContainerRepositories", version=20221123133054, filename="/builds/gitlab-org/gitlab/db/post_migrate/20221123133054_queue_reset_status_on_container_repositories.rb", scope="">1305 uses one of the allowed migration classes1306 migration: #<struct ActiveRecord::MigrationProxy name="AddSupportingIndexForVulnerabilitiesFeedbackCommentProccessing", version=20221124153602, filename="/builds/gitlab-org/gitlab/db/post_migrate/20221124153602_add_supporting_index_for_vulnerabilities_feedback_comment_proccessing.rb", scope="">1307 uses one of the allowed migration classes1308 migration: #<struct ActiveRecord::MigrationProxy name="AddMetricsIndexToAuthenticationEvents", version=20221125222221, filename="/builds/gitlab-org/gitlab/db/post_migrate/20221125222221_add_metrics_index_to_authentication_events.rb", scope="">1309 uses one of the allowed migration classes1310 migration: #<struct ActiveRecord::MigrationProxy name="RemoveResultIndexFromAuthenticationEvents", version=20221125222341, filename="/builds/gitlab-org/gitlab/db/post_migrate/20221125222341_remove_result_index_from_authentication_events.rb", scope="">1311 uses one of the allowed migration classes1312 migration: #<struct ActiveRecord::MigrationProxy name="ScheduleFixingSecurityScanStatuses", version=20221128120634, filename="/builds/gitlab-org/gitlab/db/post_migrate/20221128120634_schedule_fixing_security_scan_statuses.rb", scope="">1313 uses one of the allowed migration classes1314 migration: #<struct ActiveRecord::MigrationProxy name="AddSourcePartitionIdToCiSourcesPipeline", version=20221128123514, filename="db/migrate/20221128123514_add_source_partition_id_to_ci_sources_pipeline.rb", scope="">1315 uses one of the allowed migration classes1316 migration: #<struct ActiveRecord::MigrationProxy name="DropTempWorkItemTypeIdBackfillIndex", version=20221128220043, filename="/builds/gitlab-org/gitlab/db/post_migrate/20221128220043_drop_temp_work_item_type_id_backfill_index.rb", scope="">1317 uses one of the allowed migration classes1318 migration: #<struct ActiveRecord::MigrationProxy name="AddBackIssuesWorkItemTypeIdIndex", version=20221128222417, filename="/builds/gitlab-org/gitlab/db/post_migrate/20221128222417_add_back_issues_work_item_type_id_index.rb", scope="">1319 uses one of the allowed migration classes1320 migration: #<struct ActiveRecord::MigrationProxy name="RemoveFlowdockIntegrationRecords", version=20221129124240, filename="/builds/gitlab-org/gitlab/db/post_migrate/20221129124240_remove_flowdock_integration_records.rb", scope="">1321 uses one of the allowed migration classes1322 migration: #<struct ActiveRecord::MigrationProxy name="AddIndexAuthorIdCreatedAtOnMergeRequests", version=20221206012013, filename="/builds/gitlab-org/gitlab/db/post_migrate/20221206012013_add_index_author_id_created_at_on_merge_requests.rb", scope="">1323 uses one of the allowed migration classes1324 migration: #<struct ActiveRecord::MigrationProxy name="AddUniqueIdPartitionIdIndexToCiBuild", version=20221206075631, filename="/builds/gitlab-org/gitlab/db/post_migrate/20221206075631_add_unique_id_partition_id_index_to_ci_build.rb", scope="">1325 uses one of the allowed migration classes1326 migration: #<struct ActiveRecord::MigrationProxy name="AddUniqueTokenEncryptedPartitionIdIndexToCiBuild", version=20221206132610, filename="/builds/gitlab-org/gitlab/db/post_migrate/20221206132610_add_unique_token_encrypted_partition_id_index_to_ci_build.rb", scope="">1327 uses one of the allowed migration classes1328 migration: #<struct ActiveRecord::MigrationProxy name="CreateProjectRegistry", version=20170206203234, filename="ee/db/geo/migrate/20170206203234_create_project_registry.rb", scope="">1329 uses one of the allowed migration classes1330 migration: #<struct ActiveRecord::MigrationProxy name="CreateFileRegistry", version=20170223033541, filename="ee/db/geo/migrate/20170223033541_create_file_registry.rb", scope="">1331 uses one of the allowed migration classes1332 migration: #<struct ActiveRecord::MigrationProxy name="AddIndexToProjectIdOnProjectRegistry", version=20170302005747, filename="ee/db/geo/migrate/20170302005747_add_index_to_project_id_on_project_registry.rb", scope="">1333 uses one of the allowed migration classes1334 migration: #<struct ActiveRecord::MigrationProxy name="ConvertFileBytesToInt64", version=20170526214010, filename="ee/db/geo/migrate/20170526214010_convert_file_bytes_to_int64.rb", scope="">1335 uses one of the allowed migration classes1336 migration: #<struct ActiveRecord::MigrationProxy name="CreateEventLogState", version=20170605154253, filename="ee/db/geo/migrate/20170605154253_create_event_log_state.rb", scope="">1337 uses one of the allowed migration classes1338 migration: #<struct ActiveRecord::MigrationProxy name="AddNeedsResyncToProjectRegistry", version=20170606155045, filename="ee/db/geo/migrate/20170606155045_add_needs_resync_to_project_registry.rb", scope="">1339 uses one of the allowed migration classes1340 migration: #<struct ActiveRecord::MigrationProxy name="AddLastWikiSyncedAtToProjectRegistry", version=20170614201943, filename="ee/db/geo/migrate/20170614201943_add_last_wiki_synced_at_to_project_registry.rb", scope="">1341 uses one of the allowed migration classes1342 migration: #<struct ActiveRecord::MigrationProxy name="AddIndexToProjectRegistry", version=20170627195211, filename="ee/db/geo/migrate/20170627195211_add_index_to_project_registry.rb", scope="">1343 uses one of the allowed migration classes1344 migration: #<struct ActiveRecord::MigrationProxy name="RemoveDuplicatesFromProjectRegistry", version=20170906174622, filename="ee/db/geo/migrate/20170906174622_remove_duplicates_from_project_registry.rb", scope="">1345 uses one of the allowed migration classes1346 migration: #<struct ActiveRecord::MigrationProxy name="AddUniqueIndexToProjectIdOnProjectRegistry", version=20170906182752, filename="ee/db/geo/migrate/20170906182752_add_unique_index_to_project_id_on_project_registry.rb", scope="">1347 uses one of the allowed migration classes1348 migration: #<struct ActiveRecord::MigrationProxy name="RemoveFileUploadsFromRegistry", version=20171005045404, filename="ee/db/geo/migrate/20171005045404_remove_file_uploads_from_registry.rb", scope="">1349 uses one of the allowed migration classes1350 migration: #<struct ActiveRecord::MigrationProxy name="AddFileRegistrySuccess", version=20171009162208, filename="ee/db/geo/migrate/20171009162208_add_file_registry_success.rb", scope="">1351 uses one of the allowed migration classes1352 migration: #<struct ActiveRecord::MigrationProxy name="AddFileRegistrySuccessIndex", version=20171009162209, filename="ee/db/geo/migrate/20171009162209_add_file_registry_success_index.rb", scope="">1353 uses one of the allowed migration classes1354 migration: #<struct ActiveRecord::MigrationProxy name="AddRetryCountFieldsToRegistries", version=20171101105200, filename="ee/db/geo/migrate/20171101105200_add_retry_count_fields_to_registries.rb", scope="">1355 uses one of the allowed migration classes1356 migration: #<struct ActiveRecord::MigrationProxy name="AddLastSyncFailureToProjectRegistry", version=20171115143841, filename="ee/db/geo/migrate/20171115143841_add_last_sync_failure_to_project_registry.rb", scope="">1357 uses one of the allowed migration classes1358 migration: #<struct ActiveRecord::MigrationProxy name="AddRepositoryVerificationToProjectRegistry", version=20180201154345, filename="ee/db/geo/migrate/20180201154345_add_repository_verification_to_project_registry.rb", scope="">1359 uses one of the allowed migration classes1360 migration: #<struct ActiveRecord::MigrationProxy name="AddPartialIndexToProjectRegistyVerificationFailureColumns", version=20180314175612, filename="ee/db/geo/migrate/20180314175612_add_partial_index_to_project_registy_verification_failure_columns.rb", scope="">1361 uses one of the allowed migration classes1362 migration: #<struct ActiveRecord::MigrationProxy name="AddPartialIndexToProjectRegistyChecksumColumns", version=20180315222132, filename="ee/db/geo/migrate/20180315222132_add_partial_index_to_project_registy_checksum_columns.rb", scope="">1363 uses one of the allowed migration classes1364 migration: #<struct ActiveRecord::MigrationProxy name="RemoveLastVerificationFailedColumnsFromGeoProjectRegistry", version=20180320011914, filename="ee/db/geo/post_migrate/20180320011914_remove_last_verification_failed_columns_from_geo_project_registry.rb", scope="">1365 uses one of the allowed migration classes1366 migration: #<struct ActiveRecord::MigrationProxy name="RemoveLastVerificationAtColumnsFromGeoProjectRegistry", version=20180320013929, filename="ee/db/geo/post_migrate/20180320013929_remove_last_verification_at_columns_from_geo_project_registry.rb", scope="">1367 uses one of the allowed migration classes1368 migration: #<struct ActiveRecord::MigrationProxy name="ChangeRepositoryVerificationChecksumToSha", version=20180321144947, filename="ee/db/geo/migrate/20180321144947_change_repository_verification_checksum_to_sha.rb", scope="">1369 uses one of the allowed migration classes1370 migration: #<struct ActiveRecord::MigrationProxy name="MigrateCiJobArtifactsToSeparateRegistry", version=20180322062741, filename="ee/db/geo/migrate/20180322062741_migrate_ci_job_artifacts_to_separate_registry.rb", scope="">1371 uses one of the allowed migration classes1372 migration: #<struct ActiveRecord::MigrationProxy name="AddMissingOnPrimaryToFileRegistry", version=20180323182105, filename="ee/db/geo/migrate/20180323182105_add_missing_on_primary_to_file_registry.rb", scope="">1373 uses one of the allowed migration classes1374 migration: #<struct ActiveRecord::MigrationProxy name="RemoveOldRepositoryVerificationChecksumFromGeoProjectRegistry", version=20180326171626, filename="ee/db/geo/post_migrate/20180326171626_remove_old_repository_verification_checksum_from_geo_project_registry.rb", scope="">1375 uses one of the allowed migration classes1376 migration: #<struct ActiveRecord::MigrationProxy name="AddPartialIndexToProjectRegistyChecksumShaColumns", version=20180327071612, filename="ee/db/geo/migrate/20180327071612_add_partial_index_to_project_registy_checksum_sha_columns.rb", scope="">1377 uses one of the allowed migration classes1378 migration: #<struct ActiveRecord::MigrationProxy name="DeleteJobArtifactsFromFileRegistry", version=20180331055706, filename="ee/db/geo/post_migrate/20180331055706_delete_job_artifacts_from_file_registry.rb", scope="">1379 uses one of the allowed migration classes1380 migration: #<struct ActiveRecord::MigrationProxy name="AddMissingOnPrimaryToJobArtifactRegistry", version=20180402170913, filename="ee/db/geo/migrate/20180402170913_add_missing_on_primary_to_job_artifact_registry..rb", scope="">1381 uses one of the allowed migration classes1382 migration: #<struct ActiveRecord::MigrationProxy name="AddPartialIndexProjectRepositoryVerification", version=20180405074130, filename="ee/db/geo/migrate/20180405074130_add_partial_index_project_repository_verification.rb", scope="">1383 uses one of the allowed migration classes1384 migration: #<struct ActiveRecord::MigrationProxy name="AddIndexToArtifactIdOnJobArtifactRegistry", version=20180412213305, filename="ee/db/geo/migrate/20180412213305_add_index_to_artifact_id_on_job_artifact_registry.rb", scope="">1385 uses one of the allowed migration classes1386 migration: #<struct ActiveRecord::MigrationProxy name="AddChecksumMismatchFieldsToProjectRegistry", version=20180419174834, filename="ee/db/geo/migrate/20180419174834_add_checksum_mismatch_fields_to_project_registry.rb", scope="">1387 uses one of the allowed migration classes1388 migration: #<struct ActiveRecord::MigrationProxy name="AddIndexesToChecksumMismatchFieldsOnProjectRegistry", version=20180419192603, filename="ee/db/geo/migrate/20180419192603_add_indexes_to_checksum_mismatch_fields_on_project_registry.rb", scope="">1389 uses one of the allowed migration classes1390 migration: #<struct ActiveRecord::MigrationProxy name="AddRepositoryCheckToGeoProjectRegistry", version=20180427114641, filename="ee/db/geo/migrate/20180427114641_add_repository_check_to_geo_project_registry.rb", scope="">1391 uses one of the allowed migration classes1392 migration: #<struct ActiveRecord::MigrationProxy name="SetResyncFlagForRetriedProjects", version=20180510223634, filename="ee/db/geo/migrate/20180510223634_set_resync_flag_for_retried_projects.rb", scope="">1393 uses one of the allowed migration classes1394 migration: #<struct ActiveRecord::MigrationProxy name="AddResyncWasScheduledAtToProjectRegistry", version=20180613184349, filename="ee/db/geo/migrate/20180613184349_add_resync_was_scheduled_at_to_project_registry.rb", scope="">1395 uses one of the allowed migration classes1396 migration: #<struct ActiveRecord::MigrationProxy name="AddMissingOnPrimaryToProjectRegistry", version=20180727221937, filename="ee/db/geo/migrate/20180727221937_add_missing_on_primary_to_project_registry.rb", scope="">1397 uses one of the allowed migration classes1398 migration: #<struct ActiveRecord::MigrationProxy name="AddRetryVerificationFieldsToProjectRegistry", version=20180802215313, filename="ee/db/geo/migrate/20180802215313_add_retry_verification_fields_to_project_registry.rb", scope="">1399 uses one of the allowed migration classes1400 migration: #<struct ActiveRecord::MigrationProxy name="AddSyncedRepositoriesPartialIndex", version=20180803160048, filename="ee/db/geo/migrate/20180803160048_add_synced_repositories_partial_index.rb", scope="">1401 uses one of the allowed migration classes1402 migration: #<struct ActiveRecord::MigrationProxy name="AddFailedSynchronizationsPartialIndex", version=20180806011909, filename="ee/db/geo/migrate/20180806011909_add_failed_synchronizations_partial_index.rb", scope="">1403 uses one of the allowed migration classes1404 migration: #<struct ActiveRecord::MigrationProxy name="AddPendingSynchronizationsPartialIndex", version=20180806020615, filename="ee/db/geo/migrate/20180806020615_add_pending_synchronizations_partial_index.rb", scope="">1405 uses one of the allowed migration classes1406 migration: #<struct ActiveRecord::MigrationProxy name="AddLastVerificationColumnsToProjectRegistry", version=20181213184140, filename="ee/db/geo/migrate/20181213184140_add_last_verification_columns_to_project_registry.rb", scope="">1407 uses one of the allowed migration classes1408 migration: #<struct ActiveRecord::MigrationProxy name="AddChecksumMismatchedColumndsToProjectRegistry", version=20190314201959, filename="ee/db/geo/migrate/20190314201959_add_checksum_mismatched_columnds_to_project_registry.rb", scope="">1409 uses one of the allowed migration classes1410 migration: #<struct ActiveRecord::MigrationProxy name="AddContainerRepositoryRegistry", version=20190612211021, filename="ee/db/geo/migrate/20190612211021_add_container_repository_registry.rb", scope="">1411 uses one of the allowed migration classes1412 migration: #<struct ActiveRecord::MigrationProxy name="AddCreatedAtToEventLogStates", version=20190802200655, filename="ee/db/geo/migrate/20190802200655_add_created_at_to_event_log_states.rb", scope="">1413 uses one of the allowed migration classes1414 migration: #<struct ActiveRecord::MigrationProxy name="AddDesignRegistry", version=20190923111102, filename="ee/db/geo/migrate/20190923111102_add_design_registry.rb", scope="">1415 uses one of the allowed migration classes1416 migration: #<struct ActiveRecord::MigrationProxy name="AddUniqueConstraintOnDesignRegistryProjectId", version=20191007122326, filename="ee/db/geo/migrate/20191007122326_add_unique_constraint_on_design_registry_project_id.rb", scope="">1417 uses one of the allowed migration classes1418 migration: #<struct ActiveRecord::MigrationProxy name="CreateLfsObjectRegistry", version=20191010203257, filename="ee/db/geo/migrate/20191010203257_create_lfs_object_registry.rb", scope="">1419 uses one of the allowed migration classes1420 migration: #<struct ActiveRecord::MigrationProxy name="MigrateLfsObjectsToSeparateRegistry", version=20191010204941, filename="ee/db/geo/migrate/20191010204941_migrate_lfs_objects_to_separate_registry.rb", scope="">1421 uses one of the allowed migration classes1422 migration: #<struct ActiveRecord::MigrationProxy name="DeleteLfsObjectsFromFileRegistry", version=20191025194337, filename="ee/db/geo/post_migrate/20191025194337_delete_lfs_objects_from_file_registry.rb", scope="">1423 uses one of the allowed migration classes1424 migration: #<struct ActiveRecord::MigrationProxy name="CreatePackageFileRegistry", version=20200121194300, filename="ee/db/geo/migrate/20200121194300_create_package_file_registry.rb", scope="">1425 uses one of the allowed migration classes1426 migration: #<struct ActiveRecord::MigrationProxy name="AddVerificationFieldsToPackageFileOnSecondary", version=20200407120740, filename="ee/db/geo/migrate/20200407120740_add_verification_fields_to_package_file_on_secondary.rb", scope="">1427 uses one of the allowed migration classes1428 migration: #<struct ActiveRecord::MigrationProxy name="AddVerifiedOnPrimaryColumnsToProjectRegistry", version=20200707011052, filename="ee/db/geo/migrate/20200707011052_add_verified_on_primary_columns_to_project_registry.rb", scope="">1429 uses one of the allowed migration classes1430 migration: #<struct ActiveRecord::MigrationProxy name="CreateTerraformStateRegistry", version=20200707210300, filename="ee/db/geo/migrate/20200707210300_create_terraform_state_registry.rb", scope="">1431 uses one of the allowed migration classes1432 migration: #<struct ActiveRecord::MigrationProxy name="CreateVulnerabilityExportRegistry", version=20200710194046, filename="ee/db/geo/migrate/20200710194046_create_vulnerability_export_registry.rb", scope="">1433 uses one of the allowed migration classes1434 migration: #<struct ActiveRecord::MigrationProxy name="RemoveTableVulnerabilityExportRegistry", version=20200730133800, filename="ee/db/geo/post_migrate/20200730133800_remove_table_vulnerability_export_registry.rb", scope="">1435 uses one of the allowed migration classes1436 migration: #<struct ActiveRecord::MigrationProxy name="CreateSnippetRepositoryRegistry", version=20200811171011, filename="ee/db/geo/migrate/20200811171011_create_snippet_repository_registry.rb", scope="">1437 uses one of the allowed migration classes1438 migration: #<struct ActiveRecord::MigrationProxy name="CreateMergeRequestDiffRegistry", version=20200827120552, filename="ee/db/geo/migrate/20200827120552_create_merge_request_diff_registry.rb", scope="">1439 uses one of the allowed migration classes1440 migration: #<struct ActiveRecord::MigrationProxy name="CreateTerraformStateVersionRegistry", version=20200915152620, filename="ee/db/geo/migrate/20200915152620_create_terraform_state_version_registry.rb", scope="">1441 uses one of the allowed migration classes1442 migration: #<struct ActiveRecord::MigrationProxy name="RemoveNonVersionedTerraformStateRegistry", version=20200924184638, filename="ee/db/geo/post_migrate/20200924184638_remove_non_versioned_terraform_state_registry.rb", scope="">1443 uses one of the allowed migration classes1444 migration: #<struct ActiveRecord::MigrationProxy name="AddVerificationFieldsToPackageFileRegistry", version=20201208025254, filename="ee/db/geo/migrate/20201208025254_add_verification_fields_to_package_file_registry.rb", scope="">1445 uses one of the allowed migration classes1446 migration: #<struct ActiveRecord::MigrationProxy name="AddVerificationIndexesToPackageFileRegistry", version=20201208031224, filename="ee/db/geo/migrate/20201208031224_add_verification_indexes_to_package_file_registry.rb", scope="">1447 uses one of the allowed migration classes1448 migration: #<struct ActiveRecord::MigrationProxy name="PrepareJobArtifactRegistryForSsf", version=20210111911002, filename="ee/db/geo/migrate/20210111911002_prepare_job_artifact_registry_for_ssf.rb", scope="">1449 uses one of the allowed migration classes1450 migration: #<struct ActiveRecord::MigrationProxy name="PrepareJobArtifactRegistryForSsfIndecies", version=20210111912220, filename="ee/db/geo/migrate/20210111912220_prepare_job_artifact_registry_for_ssf_indecies.rb", scope="">1451 uses one of the allowed migration classes1452 migration: #<struct ActiveRecord::MigrationProxy name="MigrateLfsObjectRegistry", version=20210120225014, filename="ee/db/geo/post_migrate/20210120225014_migrate_lfs_object_registry.rb", scope="">1453 uses one of the allowed migration classes1454 migration: #<struct ActiveRecord::MigrationProxy name="AddLfsObjectStateIndex", version=20210125222907, filename="ee/db/geo/post_migrate/20210125222907_add_lfs_object_state_index.rb", scope="">1455 uses one of the allowed migration classes1456 migration: #<struct ActiveRecord::MigrationProxy name="CreateGeoSecondaryUsageData", version=20210208175408, filename="ee/db/geo/migrate/20210208175408_create_geo_secondary_usage_data.rb", scope="">1457 uses one of the allowed migration classes1458 migration: #<struct ActiveRecord::MigrationProxy name="AddUniqueIndexOnContainerRepositoryRegistry", version=20210217020154, filename="ee/db/geo/post_migrate/20210217020154_add_unique_index_on_container_repository_registry.rb", scope="">1459 uses one of the allowed migration classes1460 migration: #<struct ActiveRecord::MigrationProxy name="AddUniqueIndexOnTerraformStateVersionRegistry", version=20210217020156, filename="ee/db/geo/post_migrate/20210217020156_add_unique_index_on_terraform_state_version_registry.rb", scope="">1461 uses one of the allowed migration classes1462 migration: #<struct ActiveRecord::MigrationProxy name="CreateGroupWikiRepositoryRegistry", version=20210223111722, filename="ee/db/geo/migrate/20210223111722_create_group_wiki_repository_registry.rb", scope="">1463 uses one of the allowed migration classes1464 migration: #<struct ActiveRecord::MigrationProxy name="AddTextLimitToLfsObjectRegistryLastSyncFailure", version=20210225200858, filename="ee/db/geo/post_migrate/20210225200858_add_text_limit_to_lfs_object_registry_last_sync_failure.rb", scope="">1465 uses one of the allowed migration classes1466 migration: #<struct ActiveRecord::MigrationProxy name="AddVerificationToSnippetRepositoryRegistry", version=20210313050709, filename="ee/db/geo/migrate/20210313050709_add_verification_to_snippet_repository_registry.rb", scope="">1467 uses one of the allowed migration classes1468 migration: #<struct ActiveRecord::MigrationProxy name="AddVerificationIndexesToSnippetRepositoryRegistry", version=20210313051642, filename="ee/db/geo/migrate/20210313051642_add_verification_indexes_to_snippet_repository_registry.rb", scope="">1469 uses one of the allowed migration classes1470 migration: #<struct ActiveRecord::MigrationProxy name="CreatePipelineArtifactRegistry", version=20210325150435, filename="ee/db/geo/migrate/20210325150435_create_pipeline_artifact_registry.rb", scope="">1471 uses one of the allowed migration classes1472 migration: #<struct ActiveRecord::MigrationProxy name="AddVerificationToTerraformStateVersionRegistry", version=20210407140527, filename="ee/db/geo/migrate/20210407140527_add_verification_to_terraform_state_version_registry.rb", scope="">1473 uses one of the allowed migration classes1474 migration: #<struct ActiveRecord::MigrationProxy name="AddIndexesToTerraformStateVersionRegistry", version=20210420180119, filename="ee/db/geo/migrate/20210420180119_add_indexes_to_terraform_state_version_registry.rb", scope="">1475 uses one of the allowed migration classes1476 migration: #<struct ActiveRecord::MigrationProxy name="AddVerificationToMergeRequestDiffRegistry", version=20210504143244, filename="ee/db/geo/migrate/20210504143244_add_verification_to_merge_request_diff_registry.rb", scope="">1477 uses one of the allowed migration classes1478 migration: #<struct ActiveRecord::MigrationProxy name="AddIndexesToMergeRequestDiffRegistryTable", version=20210505170208, filename="ee/db/geo/migrate/20210505170208_add_indexes_to_merge_request_diff_registry_table.rb", scope="">1479 uses one of the allowed migration classes1480 migration: #<struct ActiveRecord::MigrationProxy name="FixStateColumnInLfsObjectRegistry", version=20210624160455, filename="ee/db/geo/migrate/20210624160455_fix_state_column_in_lfs_object_registry.rb", scope="">1481 uses one of the allowed migration classes1482 migration: #<struct ActiveRecord::MigrationProxy name="PrepareFileRegistryForSsf", version=20210706120644, filename="ee/db/geo/migrate/20210706120644_prepare_file_registry_for_ssf.rb", scope="">1483 uses one of the allowed migration classes1484 migration: #<struct ActiveRecord::MigrationProxy name="FixStateColumnInFileRegistry", version=20210818111211, filename="ee/db/geo/migrate/20210818111211_fix_state_column_in_file_registry.rb", scope="">1485 uses one of the allowed migration classes1486 migration: #<struct ActiveRecord::MigrationProxy name="CreatePagesDeploymentRegistry", version=20210820152707, filename="ee/db/geo/migrate/20210820152707_create_pages_deployment_registry.rb", scope="">1487 uses one of the allowed migration classes1488 migration: #<struct ActiveRecord::MigrationProxy name="RemoveUploadLegacyFields", version=20211021112221, filename="ee/db/geo/post_migrate/20211021112221_remove_upload_legacy_fields.rb", scope="">1489 uses one of the allowed migration classes1490 migration: #<struct ActiveRecord::MigrationProxy name="PrepareFileRegistryForVerification", version=20211101113611, filename="ee/db/geo/migrate/20211101113611_prepare_file_registry_for_verification.rb", scope="">1491 uses one of the allowed migration classes1492 migration: #<struct ActiveRecord::MigrationProxy name="CreateFileRegistryVerificationIndexies", version=20211102121712, filename="ee/db/geo/migrate/20211102121712_create_file_registry_verification_indexies.rb", scope="">1493 uses one of the allowed migration classes1494 migration: #<struct ActiveRecord::MigrationProxy name="AddVerificationToPagesDeploymentRegistry", version=20211119152539, filename="ee/db/geo/migrate/20211119152539_add_verification_to_pages_deployment_registry.rb", scope="">1495 uses one of the allowed migration classes1496 migration: #<struct ActiveRecord::MigrationProxy name="AddVerificationToLfsObjectRegistry", version=20211124000000, filename="ee/db/geo/migrate/20211124000000_add_verification_to_lfs_object_registry.rb", scope="">1497 uses one of the allowed migration classes1498 migration: #<struct ActiveRecord::MigrationProxy name="AddTextLimitToLfsObjectRegistryVerificationFailure", version=20211124000001, filename="ee/db/geo/migrate/20211124000001_add_text_limit_to_lfs_object_registry_verification_failure.rb", scope="">1499 uses one of the allowed migration classes1500 migration: #<struct ActiveRecord::MigrationProxy name="AddIndexesToLfsObjectRegistry", version=20211124000002, filename="ee/db/geo/migrate/20211124000002_add_indexes_to_lfs_object_registry.rb", scope="">1501 uses one of the allowed migration classes1502 migration: #<struct ActiveRecord::MigrationProxy name="AddTextLimitToFileRegistryVerificationFailure", version=20211126312431, filename="ee/db/geo/migrate/20211126312431_add_text_limit_to_file_registry_verification_failure.rb", scope="">1503 uses one of the allowed migration classes1504 migration: #<struct ActiveRecord::MigrationProxy name="AddIndexesToPagesDeploymentRegistry", version=20211207162157, filename="ee/db/geo/migrate/20211207162157_add_indexes_to_pages_deployment_registry.rb", scope="">1505 uses one of the allowed migration classes1506 migration: #<struct ActiveRecord::MigrationProxy name="AddTextLimitToPagesDeploymentRegistryVerificationFailure", version=20211207175940, filename="ee/db/geo/migrate/20211207175940_add_text_limit_to_pages_deployment_registry_verification_failure.rb", scope="">1507 uses one of the allowed migration classes1508 migration: #<struct ActiveRecord::MigrationProxy name="MigrateJobArtifactRegistry", version=20220202101354, filename="ee/db/geo/post_migrate/20220202101354_migrate_job_artifact_registry.rb", scope="">1509 uses one of the allowed migration classes1510 migration: #<struct ActiveRecord::MigrationProxy name="CreateCiSecureFileRegistry", version=20220617125507, filename="ee/db/geo/migrate/20220617125507_create_ci_secure_file_registry.rb", scope="">1511 uses one of the allowed migration classes1512 migration: #<struct ActiveRecord::MigrationProxy name="CreateProjectWikiRepositoryRegistry", version=20221017195204, filename="ee/db/geo/migrate/20221017195204_create_project_wiki_repository_registry.rb", scope="">1513 uses one of the allowed migration classes1514 migration: #<struct ActiveRecord::MigrationProxy name="CreateDependencyProxyBlobRegistry", version=20221018201808, filename="ee/db/geo/migrate/20221018201808_create_dependency_proxy_blob_registry.rb", scope="">1515 uses one of the allowed migration classes1516 migration: #<struct ActiveRecord::MigrationProxy name="CreateDependencyProxyManifestRegistry", version=20221102195145, filename="ee/db/geo/migrate/20221102195145_create_dependency_proxy_manifest_registry.rb", scope="">1517 uses one of the allowed migration classes1518 migration: #<struct ActiveRecord::MigrationProxy name="RemoveJobArtifactRegistrySuccessColumn", version=20221107151025, filename="ee/db/geo/post_migrate/20221107151025_remove_job_artifact_registry_success_column.rb", scope="">1519 uses one of the allowed migration classes1520Groups::DestroyService1521 asynchronous delete1522 behaves like group destruction1523 database records1524 is expected not to include #<Group id:2 @group1>1525 is expected not to include #<Group id:9 @group3/group4>1526 is expected not to include #<Project id:3 group5/project3>>1527 is expected not to include #<NotificationSetting id: 10, user_id: 12, source_id: 20, source_type: "Namespace", level: "global", ...: nil, moved_project: true, change_reviewer_merge_request: nil, merge_when_pipeline_succeeds: false>1528 bot tokens1529 initiates group bot removal1530 mattermost team1531 destroys the team too1532 file system1533 Sidekiq inline1534 verifies that paths have been deleted1535 event store1536 publishes a GroupDeletedEvent1537 Sidekiq fake1538 verifies original paths and projects still exist1539 synchronous delete1540 behaves like group destruction1541 database records1542 is expected not to include #<Group id:57 @group19>1543 is expected not to include #<Group id:64 @group21/group22>1544 is expected not to include #<Project id:12 group23/project12>>1545 is expected not to include #<NotificationSetting id: 38, user_id: 40, source_id: 75, source_type: "Namespace", level: "global", ...: nil, moved_project: true, change_reviewer_merge_request: nil, merge_when_pipeline_succeeds: false>1546 bot tokens1547 initiates group bot removal1548 mattermost team1549 destroys the team too1550 file system1551 Sidekiq inline1552 verifies that paths have been deleted1553 event store1554 publishes a GroupDeletedEvent1555 projects in pending_delete1556 behaves like group destruction1557 database records1558 is expected not to include #<Group id:106 @group35>1559 is expected not to include #<Group id:113 @group37/group38>1560 is expected not to include #<Project id:20 group39/project20>>1561 is expected not to include #<NotificationSetting id: 63, user_id: 65, source_id: 124, source_type: "Namespace", level: "global",...: nil, moved_project: true, change_reviewer_merge_request: nil, merge_when_pipeline_succeeds: false>1562 bot tokens1563 initiates group bot removal1564 mattermost team1565 destroys the team too1566 file system1567 Sidekiq inline1568 verifies that paths have been deleted1569 event store1570 publishes a GroupDeletedEvent1571 repository removal status is taken into account1572 raises exception1573 when group owner is blocked1574 returns a more descriptive error message1575 repository removal1576 legacy storage1577 removes repository1578 hashed storage1579 removes repository1580 authorization updates1581 for solo groups1582 group is deleted1583 updates project authorization1584 does not make use of a specific service to update project_authorizations records1585 for shared groups within different hierarchies1586 when a project is shared with a group1587 and the shared group is deleted1588 updates project authorizations so group2 users no longer have access1589 calls the service to update project authorizations only with necessary user ids1590 and the group is shared with another group1591 updates project authorizations so group2 and group3 users no longer have access1592 calls the service to update project authorizations only with necessary user ids1593 when a group is shared with a group1594 and the shared group is deleted1595 updates project authorizations since the project has been deleted with the group1596 does not call the service to update project authorizations1597 the shared_with group is deleted1598 updates project authorizations so users of both groups lose access1599 calls the service to update project authorizations only with necessary user ids1600 for shared groups in the same group hierarchy1601 the shared group is deleted1602 updates project authorization1603 does not make use of a specific service to update project authorizations1604 the shared_with group is deleted1605 updates project authorization1606 makes use of a specific service to update project authorizations1607Ci::CreatePipelineService1608 #execute1609 skips creating pipeline for refs without .gitlab-ci.yml1610 performance1611 behaves like pipelines are created without N+1 SQL queries1612 avoids N+1 queries1613 valid params1614 responds with success1615 creates a pipeline1616 increments the prometheus counter1617 records pipeline size in a prometheus histogram1618 tracks included template usage1619 when merge requests already exist for this source branch1620 when the head pipeline sha equals merge request sha1621 updates head pipeline of each merge request1622 auto-cancel enabled1623 does not cancel HEAD pipeline1624 auto cancel pending non-HEAD pipelines1625 cancels running outdated pipelines1626 cancel created outdated pipelines1627 does not cancel pipelines from the other branches1628 when the interruptible attribute is1629 not defined1630 is cancelable1631 set to true1632 is cancelable1633 set to false1634 is not cancelable1635 interruptible builds1636 properly configures interruptible status1637 when only interruptible builds are running1638 when build marked explicitly by interruptible is running1639 cancels running outdated pipelines1640 when build that is not marked as interruptible is running1641 cancels running outdated pipelines1642 when an uninterruptible build is running1643 does not cancel running outdated pipelines1644 when an build is waiting on an interruptible scheduled task1645 cancels running outdated pipelines1646 when a uninterruptible build has finished1647 does not cancel running outdated pipelines1648 auto-cancel disabled1649 does not auto cancel created non-HEAD pipelines1650 skip tag if there is no build for it1651 creates commit if there is appropriate job1652 creates commit if there is no appropriate job but deploy job has right ref setting1653 config evaluation1654 when config is in a file in repository1655 pull it from the repository1656 when config is from Auto-DevOps1657 pull it from Auto-DevOps1658 when config is not found1659 responds with error message1660 when an unexpected error is raised1661 saves error in pipeline1662 logs error1663 when yaml is invalid1664 increments the error metric1665 behaves like a failed pipeline1666 creates failed pipeline1667 when receive git commit1668 behaves like a failed pipeline1669 creates failed pipeline1670 when config has ports1671 in the main image1672 behaves like a failed pipeline1673 creates failed pipeline1674 in the job image1675 behaves like a failed pipeline1676 creates failed pipeline1677 in the service1678 behaves like a failed pipeline1679 creates failed pipeline1680 when an unexpected error is raised1681 saves error in pipeline1682 logs error1683 when commit contains a [ci skip] directive1684 when the commit message is some message[ci skip]1685 behaves like skipping a pipeline1686 skips pipeline creation1687 when the commit message is some message[skip ci]1688 behaves like skipping a pipeline1689 skips pipeline creation1690 when the commit message is some message[CI SKIP]1691 behaves like skipping a pipeline1692 skips pipeline creation1693 when the commit message is some message[SKIP CI]1694 behaves like skipping a pipeline1695 skips pipeline creation1696 when the commit message is some message[ci_skip]1697 behaves like skipping a pipeline1698 skips pipeline creation1699 when the commit message is some message[skip_ci]1700 behaves like skipping a pipeline1701 skips pipeline creation1702 when the commit message is some message[ci-skip]1703 behaves like skipping a pipeline1704 skips pipeline creation1705 when the commit message is some message[skip-ci]1706 behaves like skipping a pipeline1707 skips pipeline creation1708 when commit message does not contain [ci skip] nor [skip ci]1709 behaves like creating a pipeline1710 does not skip pipeline creation1711 when commit message is nil1712 behaves like creating a pipeline1713 does not skip pipeline creation1714 when there is [ci skip] tag in commit message and yaml is invalid1715 behaves like skipping a pipeline1716 skips pipeline creation1717 when push options contain ci.skip1718 creates a pipline in the skipped state1719 when there are no jobs for this pipeline1720 does not create a new pipeline1721 #iid1722 rewinds iid1723 when the configuration includes ID tokens1724 creates variables for the ID tokens1725 with manual actions1726 does not create a new pipeline1727 with environment1728 creates the environment with tags1729 with environment with auto_stop_in1730 creates the environment with auto stop in1731 with environment name including persisted variables1732 skipps persisted variables in environment name1733 environment with Kubernetes configuration1734 stores the requested namespace1735 when environment with invalid name1736 does not create an environment1737 when environment with duplicate names1738 creates a pipeline with the environment1739 when builds with auto-retries are configured1740 as an integer1741 correctly creates builds with auto-retry value configured1742 as hash1743 correctly creates builds with auto-retry value configured1744 with resource group1745 when resource group is defined1746 persists the association correctly1747 when resource group key includes predefined variables1748 interpolates the variables into the key correctly1749 when resource group is defined for review app deployment1750 persists the association correctly1751 initializes scoped variables only once for each build1752 with timeout1753 when builds with custom timeouts are configured1754 correctly creates builds with custom timeout value configured1755 with release1756 simple example1757 behaves like a successful release pipeline1758 is valid config1759 example with all release metadata1760 behaves like a successful release pipeline1761 is valid config1762 when ref is a protected branch1763 behaves like when ref is protected1764 when user is developer1765 does not create a pipeline1766 when user is maintainer1767 creates a protected pipeline1768 when trigger belongs to no one1769 does not create a pipeline1770 when trigger belongs to a developer1771 does not create a pipeline1772 when trigger belongs to a maintainer1773 creates a pipeline1774 when ref is a protected tag1775 behaves like when ref is protected1776 when user is developer1777 does not create a pipeline1778 when user is maintainer1779 creates a protected pipeline1780 when trigger belongs to no one1781 does not create a pipeline1782 when trigger belongs to a developer1783 does not create a pipeline1784 when trigger belongs to a maintainer1785 creates a pipeline1786 when pipeline is running for a tag1787 creates a tagged pipeline1788 when pipeline is running for a nonexistant-branch1789 does not create the pipeline1790 when there is a tag with that nonexistant-branch1791 does not create the pipeline1792 when pipeline is running for a branch with the name of both a branch and a tag1793 creates the pipeline for the branch1794 when pipeline is running for a tag with the name of both a branch and a tag1795 creates the pipeline for the tag1796 when pipeline is running for an ambiguous ref1797 does not create the pipeline1798 when pipeline variables are specified1799 with valid pipeline variables1800 creates a pipeline with specified variables1801 with duplicate pipeline variables1802 fails to create the pipeline1803 with more than one duplicate pipeline variable1804 fails to create the pipeline1805 when pipeline has a job with environment1806 when environment name is valid1807 has a job with environment1808 when environment name is invalid1809 has a job without environment1810 Pipeline for external pull requests1811 when source is external pull request1812 when config has external_pull_requests keywords1813 when external pull request is specified1814 creates an external pull request pipeline1815 when ref is tag1816 does not create an extrnal pull request pipeline1817 when pull request is created from fork1818 does not create an external pull request pipeline (PENDING: Not yet implemented)1819 when there are no matched jobs1820 does not create a detached merge request pipeline1821 when external pull request is not specified1822 does not create an external pull request pipeline1823 when config does not have external_pull_requests keywords1824 when external pull request is specified1825 creates an external pull request pipeline1826 when external pull request is not specified1827 does not create an external pull request pipeline1828 Pipelines for merge requests1829 when source is merge request1830 when config has merge_requests keywords1831 when merge request is specified1832 creates a detached merge request pipeline1833 persists the specified source sha1834 does not persist target sha for detached merge request pipeline1835 schedules update for the head pipeline of the merge request1836 schedules a namespace onboarding create action worker1837 when target sha is specified1838 persists the target sha1839 when ref is tag1840 does not create a merge request pipeline1841 when merge request is created from a forked project1842 creates a legacy detached merge request pipeline in the forked project1843 when there are no matched jobs1844 does not create a detached merge request pipeline1845 when config does not have merge_requests keywords1846 when merge request is specified1847 does not create a detached merge request pipeline1848 when config uses regular expression for only keyword1849 when merge request is specified1850 does not create a detached merge request pipeline1851 when config uses variables for only keyword1852 when merge request is specified1853 does not create a detached merge request pipeline1854 when config has 'except: [tags]'1855 when merge request is specified1856 does not create a detached merge request pipeline1857 when source is web1858 when config has merge_requests keywords1859 creates a branch pipeline1860 when needs is used1861 when pipeline on master is created1862 creates a pipeline with build_a and test_a1863 bulk inserts all needs1864 when pipeline on feature is created1865 when save_on_errors is enabled1866 does create a pipeline as test_a depends on build_a1867 behaves like has errors1868 contains the expected errors1869 when save_on_errors is disabled1870 does not create a pipeline as test_a depends on build_a1871 behaves like has errors1872 contains the expected errors1873 when pipeline on v1.0.0 is created1874 does create a pipeline only with deploy1875Banzai::Filter::References::ExternalIssueReferenceFilter1876 redmine project1877 with a hash prefix1878 behaves like external issue tracker1879 requires project context1880 ignores valid references contained inside 'pre' element1881 ignores valid references contained inside 'code' element1882 ignores valid references contained inside 'a' element1883 ignores valid references contained inside 'style' element1884 ignores valid references when using default tracker1885 links to a valid reference1886 links to the external tracker1887 links with adjacent text1888 includes a title attribute1889 escapes the title attribute1890 includes default classes1891 supports an :only_path context1892 has an empty link if issue_url is invalid1893 has an empty link if issue_path is invalid1894 behaves like a reference containing an element node1895 does not escape inner html1896 with RequestStore enabled1897 queries the collection on the first call1898 with a single-letter prefix1899 behaves like external issue tracker1900 requires project context1901 ignores valid references contained inside 'pre' element1902 ignores valid references contained inside 'code' element1903 ignores valid references contained inside 'a' element1904 ignores valid references contained inside 'style' element1905 ignores valid references when using default tracker1906 links to a valid reference1907 links to the external tracker1908 links with adjacent text1909 includes a title attribute1910 escapes the title attribute1911 includes default classes1912 supports an :only_path context1913 has an empty link if issue_url is invalid1914 has an empty link if issue_path is invalid1915 behaves like a reference containing an element node1916 does not escape inner html1917 with RequestStore enabled1918 queries the collection on the first call1919 youtrack project1920 with right markdown1921 behaves like external issue tracker1922 requires project context1923 ignores valid references contained inside 'pre' element1924 ignores valid references contained inside 'code' element1925 ignores valid references contained inside 'a' element1926 ignores valid references contained inside 'style' element1927 ignores valid references when using default tracker1928 links to a valid reference1929 links to the external tracker1930 links with adjacent text1931 includes a title attribute1932 escapes the title attribute1933 includes default classes1934 supports an :only_path context1935 has an empty link if issue_url is invalid1936 has an empty link if issue_path is invalid1937 behaves like a reference containing an element node1938 does not escape inner html1939 with RequestStore enabled1940 queries the collection on the first call1941 with underscores in the prefix1942 behaves like external issue tracker1943 requires project context1944 ignores valid references contained inside 'pre' element1945 ignores valid references contained inside 'code' element1946 ignores valid references contained inside 'a' element1947 ignores valid references contained inside 'style' element1948 ignores valid references when using default tracker1949 links to a valid reference1950 links to the external tracker1951 links with adjacent text1952 includes a title attribute1953 escapes the title attribute1954 includes default classes1955 supports an :only_path context1956 has an empty link if issue_url is invalid1957 has an empty link if issue_path is invalid1958 behaves like a reference containing an element node1959 does not escape inner html1960 with RequestStore enabled1961 queries the collection on the first call1962 with lowercase letters in the prefix1963 behaves like external issue tracker1964 requires project context1965 ignores valid references contained inside 'pre' element1966 ignores valid references contained inside 'code' element1967 ignores valid references contained inside 'a' element1968 ignores valid references contained inside 'style' element1969 ignores valid references when using default tracker1970 links to a valid reference1971 links to the external tracker1972 links with adjacent text1973 includes a title attribute1974 escapes the title attribute1975 includes default classes1976 supports an :only_path context1977 has an empty link if issue_url is invalid1978 has an empty link if issue_path is invalid1979 behaves like a reference containing an element node1980 does not escape inner html1981 with RequestStore enabled1982 queries the collection on the first call1983 with a single-letter prefix1984 behaves like external issue tracker1985 requires project context1986 ignores valid references contained inside 'pre' element1987 ignores valid references contained inside 'code' element1988 ignores valid references contained inside 'a' element1989 ignores valid references contained inside 'style' element1990 ignores valid references when using default tracker1991 links to a valid reference1992 links to the external tracker1993 links with adjacent text1994 includes a title attribute1995 escapes the title attribute1996 includes default classes1997 supports an :only_path context1998 has an empty link if issue_url is invalid1999 has an empty link if issue_path is invalid2000 behaves like a reference containing an element node2001 does not escape inner html2002 with RequestStore enabled2003 queries the collection on the first call2004 with a lowercase prefix2005 behaves like external issue tracker2006 requires project context2007 ignores valid references contained inside 'pre' element2008 ignores valid references contained inside 'code' element2009 ignores valid references contained inside 'a' element2010 ignores valid references contained inside 'style' element2011 ignores valid references when using default tracker2012 links to a valid reference2013 links to the external tracker2014 links with adjacent text2015 includes a title attribute2016 escapes the title attribute2017 includes default classes2018 supports an :only_path context2019 has an empty link if issue_url is invalid2020 has an empty link if issue_path is invalid2021 behaves like a reference containing an element node2022 does not escape inner html2023 with RequestStore enabled2024 queries the collection on the first call2025 jira project2026 with right markdown2027 behaves like external issue tracker2028 requires project context2029 ignores valid references contained inside 'pre' element2030 ignores valid references contained inside 'code' element2031 ignores valid references contained inside 'a' element2032 ignores valid references contained inside 'style' element2033 ignores valid references when using default tracker2034 links to a valid reference2035 links to the external tracker2036 links with adjacent text2037 includes a title attribute2038 escapes the title attribute2039 includes default classes2040 supports an :only_path context2041 has an empty link if issue_url is invalid2042 has an empty link if issue_path is invalid2043 behaves like a reference containing an element node2044 does not escape inner html2045 with RequestStore enabled2046 queries the collection on the first call2047 with a single-letter prefix2048 ignores reference2049 with wrong markdown2050 ignores reference2051 ewm project2052 rtcwi keyword2053 behaves like external issue tracker2054 requires project context2055 ignores valid references contained inside 'pre' element2056 ignores valid references contained inside 'code' element2057 ignores valid references contained inside 'a' element2058 ignores valid references contained inside 'style' element2059 ignores valid references when using default tracker2060 links to a valid reference2061 links to the external tracker2062 links with adjacent text2063 includes a title attribute2064 escapes the title attribute2065 includes default classes2066 supports an :only_path context2067 has an empty link if issue_url is invalid2068 has an empty link if issue_path is invalid2069 behaves like a reference containing an element node2070 does not escape inner html2071 with RequestStore enabled2072 queries the collection on the first call2073 workitem keyword2074 behaves like external issue tracker2075 requires project context2076 ignores valid references contained inside 'pre' element2077 ignores valid references contained inside 'code' element2078 ignores valid references contained inside 'a' element2079 ignores valid references contained inside 'style' element2080 ignores valid references when using default tracker2081 links to a valid reference2082 links to the external tracker2083 links with adjacent text2084 includes a title attribute2085 escapes the title attribute2086 includes default classes2087 supports an :only_path context2088 has an empty link if issue_url is invalid2089 has an empty link if issue_path is invalid2090 behaves like a reference containing an element node2091 does not escape inner html2092 with RequestStore enabled2093 queries the collection on the first call2094 defect keyword2095 behaves like external issue tracker2096 requires project context2097 ignores valid references contained inside 'pre' element2098 ignores valid references contained inside 'code' element2099 ignores valid references contained inside 'a' element2100 ignores valid references contained inside 'style' element2101 ignores valid references when using default tracker2102 links to a valid reference2103 links to the external tracker2104 links with adjacent text2105 includes a title attribute2106 escapes the title attribute2107 includes default classes2108 supports an :only_path context2109 has an empty link if issue_url is invalid2110 has an empty link if issue_path is invalid2111 behaves like a reference containing an element node2112 does not escape inner html2113 with RequestStore enabled2114 queries the collection on the first call2115 task keyword2116 behaves like external issue tracker2117 requires project context2118 ignores valid references contained inside 'pre' element2119 ignores valid references contained inside 'code' element2120 ignores valid references contained inside 'a' element2121 ignores valid references contained inside 'style' element2122 ignores valid references when using default tracker2123 links to a valid reference2124 links to the external tracker2125 links with adjacent text2126 includes a title attribute2127 escapes the title attribute2128 includes default classes2129 supports an :only_path context2130 has an empty link if issue_url is invalid2131 has an empty link if issue_path is invalid2132 behaves like a reference containing an element node2133 does not escape inner html2134 with RequestStore enabled2135 queries the collection on the first call2136 bug keyword2137 behaves like external issue tracker2138 requires project context2139 ignores valid references contained inside 'pre' element2140 ignores valid references contained inside 'code' element2141 ignores valid references contained inside 'a' element2142 ignores valid references contained inside 'style' element2143 ignores valid references when using default tracker2144 links to a valid reference2145 links to the external tracker2146 links with adjacent text2147 includes a title attribute2148 escapes the title attribute2149 includes default classes2150 supports an :only_path context2151 has an empty link if issue_url is invalid2152 has an empty link if issue_path is invalid2153 behaves like a reference containing an element node2154 does not escape inner html2155 with RequestStore enabled2156 queries the collection on the first call2157 checking N+12158 does not have N+1 per multiple references per project2159Ci::BuildPolicy2160 #rules2161 when user does not have access to the project2162 when public builds are enabled2163 does not include ability to read build2164 when public builds are disabled2165 does not include ability to read build2166 when anonymous user has access to the project2167 when public builds are enabled2168 includes ability to read build2169 when public builds are disabled2170 does not include ability to read build2171 when team member has access to the project2172 team member is a guest2173 when public builds are enabled2174 includes ability to read build2175 when public builds are disabled2176 does not include ability to read build2177 team member is a reporter2178 when public builds are enabled2179 includes ability to read build2180 when public builds are disabled2181 does not include ability to read build2182 when maintainer is allowed to push to pipeline branch2183 enables update_build if user is maintainer2184 rules for protected ref2185 when no one can push or merge to the branch2186 does not include ability to update build2187 when developers can push to the branch2188 includes ability to update build2189 when no one can create the tag2190 does not include ability to update build2191 when no one can create the tag but it is not a tag2192 includes ability to update build2193 rules for erase build2194 when a developer erases a build2195 when developers can push to the branch2196 when the build was created by the developer2197 when the build was created for a protected ref2198 is expected to be disallowed :erase_build2199 when the build was created for an unprotected ref2200 is expected to be allowed :erase_build2201 when the build was created by the other2202 is expected to be disallowed :erase_build2203 when no one can push or merge to the branch2204 is expected to be disallowed :erase_build2205 when a maintainer erases a build2206 when maintainers can push to the branch2207 when the build was created by the maintainer2208 is expected to be allowed :erase_build2209 when the build was created by the other2210 is expected to be allowed :erase_build2211 when no one can push or merge to the branch2212 is expected to be disallowed :erase_build2213 when an admin erases a build2214 when the build was created for a protected branch2215 is expected to be allowed :erase_build2216 when the build was created for a protected tag2217 is expected to be allowed :erase_build2218 when the build was created for an unprotected ref2219 is expected to be allowed :erase_build2220 manage a web ide terminal2221 when create_web_ide_terminal access enabled2222 with admin2223 when admin mode enabled2224 is expected to be allowed :create_build_service_proxy2225 when admin mode disabled2226 is expected not to be allowed :create_build_service_proxy2227 when build is not from a webide pipeline2228 is expected not to be allowed :create_build_service_proxy2229 when build has no runner terminal2230 when admin mode enabled2231 is expected to be allowed :update_web_ide_terminal2232 is expected not to be allowed :create_build_service_proxy2233 when admin mode disabled2234 is expected not to be allowed :update_web_ide_terminal2235 is expected not to be allowed :create_build_service_proxy2236 feature flag "build_service_proxy" is disabled2237 is expected not to be allowed :create_build_service_proxy2238 with owner2239 behaves like allowed build owner access2240 is expected not to be allowed :create_build_service_proxy2241 when user is the owner of the job2242 is expected to be allowed :create_build_service_proxy2243 with maintainer2244 behaves like allowed build owner access2245 is expected not to be allowed :create_build_service_proxy2246 when user is the owner of the job2247 is expected to be allowed :create_build_service_proxy2248 with developer2249 behaves like forbidden access2250 is expected not to be allowed :create_build_service_proxy2251 when user is the owner of the job2252 is expected not to be allowed :create_build_service_proxy2253 with reporter2254 behaves like forbidden access2255 is expected not to be allowed :create_build_service_proxy2256 when user is the owner of the job2257 is expected not to be allowed :create_build_service_proxy2258 with guest2259 behaves like forbidden access2260 is expected not to be allowed :create_build_service_proxy2261 when user is the owner of the job2262 is expected not to be allowed :create_build_service_proxy2263 with non member2264 behaves like forbidden access2265 is expected not to be allowed :create_build_service_proxy2266 when user is the owner of the job2267 is expected not to be allowed :create_build_service_proxy2268 ability :create_build_terminal2269 when user can update_build2270 when job has terminal2271 when current user is the job owner2272 is expected to be allowed :create_build_terminal2273 when current user is not the job owner2274 is expected not to be allowed :create_build_terminal2275 when job does not have terminal2276 is expected not to be allowed :create_build_terminal2277 when user cannot update build2278 is expected not to be allowed :create_build_terminal2279DesignManagement::Design2280 behaves like AtomicInternalId2281 .has_internal_id2282 Module inclusion2283 is expected to includes the AtomicInternalId module2284 Validation2285 when presence validation is required2286 when creating an object2287 raises an error if the internal id is blank2288 when updating an object2289 raises an error if the internal id is blank2290 when presence validation is not required2291 when creating an object2292 does not raise an error if the internal id is blank (PENDING: No reason given)2293 when updating an object2294 does not raise an error if the internal id is blank (PENDING: No reason given)2295 Creating an instance2296 saves a new instance properly2297 internal id generation2298 calls InternalId.generate_next and sets internal id attribute2299 does not overwrite an existing internal id2300 when the instance has an internal ID set2301 calls InternalId.update_last_value and sets the `last_value` to that of the instance2302 unsetting the instance internal id on rollback2303 when the internal id has been changed2304 when the internal id is automatically set2305 clears it on the instance2306 when the internal id is manually set2307 does not clear it on the instance2308 when the internal id has not been changed2309 preserves the value on the instance2310 supply of internal ids2311Skipping ./spec/models/design_management/design_spec.rb[1:1:1:6:1] 'DesignManagement::Design behaves like AtomicInternalId .has_internal_id supply of internal ids provides a persistent supply of IID values, sensitive to the current state' because it's flaky.2312 provides a persistent supply of IID values, sensitive to the current state (PENDING: around hook at ./spec/support/flaky_tests.rb:21 did not execute the example)2313 #reset_scope_internal_id_attribute2314 rewinds the allocated IID2315 allocates the same IID2316 behaves like a class that supports relative positioning2317 #scoped_items2318 includes all items with the same scope2319 #relative_siblings2320 includes all items with the same scope, except self2321 .move_nulls_to_end2322 moves items with null relative_position to the end2323 preserves relative position2324 moves the item near the start position when there are no existing positions2325 does not perform any moves if all items have their relative_position set2326 manages to move nulls to the end even if there is a sequence at the end2327 manages to move nulls to the end even if there is not enough space2328 manages to move nulls to the end, stacking if we cannot create enough space2329 manages to move nulls found in the relative scope2330 can move many nulls2331 does not have an N+1 issue2332 .move_nulls_to_start2333 moves items with null relative_position to the start2334 moves the item near the start position when there are no existing positions2335 preserves relative position2336 does not perform any moves if all items have their relative_position set2337 manages to move nulls to the start even if there is not enough space2338 manages to move nulls to the end, stacking if we cannot create enough space2339 #move_before2340 moves item before2341 can move the item before an item at the start2342 can move the item before an item at MIN_POSITION2343 can move the item before an item bunched up at MIN_POSITION2344 when there is no space2345 moves items correctly2346 leap-frogging to the left2347 can leap-frog STEPS times before needing to rebalance2348 there is no space to the left after moving STEPS times2349 rebalances to the right2350 #move_after2351 moves item after2352 can move the item after an item bunched up at MAX_POSITION2353 when there is no space2354 can move the item after an item at MAX_POSITION2355 moves items correctly2356 leap-frogging2357 rebalances after STEPS jumps2358 #move_to_start2359 places items at most IDEAL_DISTANCE from the start when the range is open2360 moves item to the end2361 positions the item at MIN_POSITION when there is only one space left2362 rebalances when there is already an item at the MIN_POSITION2363 deals with a run of elements at the start2364 #move_to_end2365 places items at most IDEAL_DISTANCE from the start when the range is open2366 moves item to the end2367 positions the item at MAX_POSITION when there is only one space left2368 rebalances when there is already an item at the MAX_POSITION2369 deals with a run of elements at the end2370 #move_between2371 positions item between two other2372 positions item between on top2373 positions item between to end2374 positions items even when after and before positions are the same2375 positions item in the middle of other two if distance is big enough2376 positions item closer to the middle if we are at the very top2377 positions item closer to the middle if we are at the very bottom2378 positions item in the middle of other two2379 positions item right if we pass non-sequential parameters2380 avoids N+1 queries when rebalancing other items2381 the two items are next to each other2382 behaves like moves item between2383 moves the middle item to between left and right2384 there is no space2385 behaves like moves item between2386 moves the middle item to between left and right2387 there is a bunch of items2388 handles bunches correctly2389 behaves like moves item between2390 moves the middle item to between left and right2391 relations2392 is expected to belong to project required: false2393 is expected to belong to issue required: false2394 is expected to have many actions2395 is expected to have many versions2396 is expected to have many authors2397 is expected to have many notes dependent => delete_all2398 is expected to have many user_mentions2399 #authors2400 returns unique version authors2401 validations2402 is expected to be valid2403 is expected to validate that :project cannot be empty/falsy2404 is expected to validate that :issue cannot be empty/falsy2405 is expected to validate that :filename cannot be empty/falsy2406 is expected to validate that the length of :filename is at most 2552407 is expected to validate that :filename is case-sensitively unique within the scope of :issue_id2408 validates that the extension is an image2409 validating files with .svg extension2410 allows .svg files when feature flag is enabled2411 does not allow .svg files when feature flag is disabled2412 scopes2413 .visible_at_version2414 at oldest version2415 finds the first design only2416 at version 22417 finds the first and second designs2418 at latest version2419 finds designs2420 when the argument is nil2421 finds all undeleted designs2422 one of the designs was deleted before the given version2423 is not returned2424 a re-created history2425 is returned, though other deleted events are not2426 dead or alive2427 can establish the history at any point2428 .ordered2429 sorts by relative position and ID in ascending order2430 .in_creation_order2431 sorts by ID in ascending order2432 .with_filename2433 returns correct design when passed a single filename2434 returns correct designs when passed an Array of filenames2435 .on_issue2436 returns correct designs when passed a single issue2437 returns correct designs when passed an Array of issues2438 .current2439 returns just the undeleted designs2440 .build_full_path2441 builds the full path for a design2442 #visible_in?2443 tells us when a design is visible2444 #to_ability_name2445 is expected to eq "design"2446 #status2447 the design is new2448 is expected to have attributes {:status => :new}2449 the design is current2450 is expected to have attributes {:status => :current}2451 the design has been deleted2452 is expected to have attributes {:status => :deleted}2453 #deleted?2454 the design is new2455 is falsy2456 the design is current2457 is falsy2458 the design has been deleted2459 is truthy2460 the design has been deleted, but was then re-created2461 is falsy2462 #participants2463 is expected to be empty2464 when participants can read the project2465 is expected to contain exactly #<User id:367 @user322>, #<User id:368 @user323>, and #<User id:369 @user324>2466 #new_design?2467 is false when there are versions2468 is true when there are no versions2469 is false for deleted designs2470 does not cause extra queries when actions are loaded2471 implicitly caches values2472 queries again when the clear_version_cache trigger has been called2473 causes a single query when there versions are not loaded2474 #full_path2475 builds the full path for a design2476 #diff_refs2477 has no diff ref if new2478 there are several versions2479 builds diff refs based on the first commit and it's for the design2480 there is just one version2481 builds diff refs based on the empty tree if there was only one version2482 #repository2483 is a design repository2484 #note_etag_key2485 returns a correct etag key2486 #user_notes_count2487 returns a count of user-generated notes2488 #after_note_changed2489 calls #delete_cache on DesignUserNotesCountService for non-system notes2490 .for_reference2491 avoids extra queries when calling to_reference2492 #to_reference2493 when nil argument2494 uses the simple format2495 when full is true2496 returns complete path to the issue2497 when full is false2498 returns complete path to the issue2499 when same project argument2500 returns bare reference2501 reference_pattern2502 is nil2503 link_reference_pattern2504 is not nil2505 does not match the designs tab2506 intentionally ignores filenames with any special character2507 ext: "png"2508 matches the URL2509 the file is all upper case2510 extracts the encoded filename2511 ext: "PNG"2512 matches the URL2513 the file is all upper case2514 extracts the encoded filename2515 ext: "jpg"2516 matches the URL2517 the file is all upper case2518 extracts the encoded filename2519 ext: "JPG"2520 matches the URL2521 the file is all upper case2522 extracts the encoded filename2523 ext: "jpeg"2524 matches the URL2525 the file is all upper case2526 extracts the encoded filename2527 ext: "JPEG"2528 matches the URL2529 the file is all upper case2530 extracts the encoded filename2531 ext: "gif"2532 matches the URL2533 the file is all upper case2534 extracts the encoded filename2535 ext: "GIF"2536 matches the URL2537 the file is all upper case2538 extracts the encoded filename2539 ext: "bmp"2540 matches the URL2541 the file is all upper case2542 extracts the encoded filename2543 ext: "BMP"2544 matches the URL2545 the file is all upper case2546 extracts the encoded filename2547 ext: "tiff"2548 matches the URL2549 the file is all upper case2550 extracts the encoded filename2551 ext: "TIFF"2552 matches the URL2553 the file is all upper case2554 extracts the encoded filename2555 ext: "ico"2556 matches the URL2557 the file is all upper case2558 extracts the encoded filename2559 ext: "ICO"2560 matches the URL2561 the file is all upper case2562 extracts the encoded filename2563 ext: "webp"2564 matches the URL2565 the file is all upper case2566 extracts the encoded filename2567 ext: "WEBP"2568 matches the URL2569 the file is all upper case2570 extracts the encoded filename2571 ext: "svg"2572 matches the URL2573 the file is all upper case2574 extracts the encoded filename2575 ext: "SVG"2576 matches the URL2577 the file is all upper case2578 extracts the encoded filename2579 .by_issue_id_and_filename2580 behaves like a where_composite scope2581 we pass an empty array2582 returns a null relation2583 we pass nil2584 returns a null relation2585 we pass a singleton composite id2586 finds the first result2587 we pass group of ids2588 finds all the results2589 performance2590 is not O(N)2591NotePolicy2592 #rules2593 when the noteable is a deleted commit2594 allows to read2595 when the noteable is a commit2596 when the project is private2597 behaves like a discussion with a private noteable2598 when the note author can no longer see the noteable2599 behaves like user cannot read or act on the note2600 is expected to be disallowed :admin_note, :reposition_note, :resolve_note, :read_note, and :award_emoji2601 when the note author can still see the noteable2602 can edit the note2603 when the project is public2604 when repository access level is private2605 behaves like a discussion with a private noteable2606 when the note author can no longer see the noteable2607 behaves like user cannot read or act on the note2608 is expected to be disallowed :admin_note, :reposition_note, :resolve_note, :read_note, and :award_emoji2609 when the note author can still see the noteable2610 can edit the note2611 when the noteable is a Design2612 can read, award emoji and reposition the note2613 when project is private2614 behaves like user cannot read or act on the note2615 is expected to be disallowed :admin_note, :reposition_note, :resolve_note, :read_note, and :award_emoji2616 when the noteable is a personal snippet2617 behaves like a note on a public noteable2618 can only read and award emoji on the note2619 when user is the author of the personal snippet2620 can edit note2621 when it is private2622 behaves like user cannot read or act on the note2623 is expected to be disallowed :admin_note, :reposition_note, :resolve_note, :read_note, and :award_emoji2624 when the project is public2625 when user is not the author of the note2626 behaves like a note on a public noteable2627 can only read and award emoji on the note2628 when the note author is not a project member2629 can edit a note2630 when the noteable is a project snippet2631 can edit note2632 when it is private2633 behaves like a discussion with a private noteable2634 when the note author can no longer see the noteable2635 behaves like user cannot read or act on the note2636 is expected to be disallowed :admin_note, :reposition_note, :resolve_note, :read_note, and :award_emoji2637 when the note author can still see the noteable2638 can edit the note2639 when a discussion is confidential2640 behaves like a discussion with a private noteable2641 when the note author can no longer see the noteable2642 behaves like user cannot read or act on the note2643 is expected to be disallowed :admin_note, :reposition_note, :resolve_note, :read_note, and :award_emoji2644 when the note author can still see the noteable2645 can edit the note2646 when a discussion is locked2647 when the note author is a project member2648 can edit a note2649 when the note author is not a project member2650 can not edit a note2651 can read a note2652 for discussions2653 allows the author to manage the discussion2654 when the user does not have access to the noteable2655 behaves like a discussion with a private noteable2656 when the note author can no longer see the noteable2657 behaves like user cannot read or act on the note2658 is expected to be disallowed :admin_note, :reposition_note, :resolve_note, :read_note, and :award_emoji2659 when the note author can still see the noteable2660 can edit the note2661 when it is a system note2662 when noteable is a public issue2663 when user is project member2664 behaves like user can read the note2665 allows the user to read the note2666 behaves like user can act on the note2667 allows the user to read the note2668 when user is not project member2669 behaves like user can read the note2670 allows the user to read the note2671 when user is anonymous2672 behaves like user can read the note2673 allows the user to read the note2674 when it is a system note referencing a confidential issue2675 when user is project member2676 behaves like user can read the note2677 allows the user to read the note2678 behaves like user can act on the note2679 allows the user to read the note2680 when user is not project member2681 behaves like user cannot read or act on the note2682 is expected to be disallowed :admin_note, :reposition_note, :resolve_note, :read_note, and :award_emoji2683 when user is anonymous2684 behaves like user cannot read or act on the note2685 is expected to be disallowed :admin_note, :reposition_note, :resolve_note, :read_note, and :award_emoji2686 with confidential notes2687 for issues2688 disallows noteable assignees to read all notes2689 behaves like confidential notes permissions2690 does not allow non members to read confidential notes and replies2691 does not allow guests to read confidential notes and replies2692 allows reporter to read all notes but not resolve and admin them2693 allows developer to read and resolve all notes2694 allows maintainers to read all notes and admin them2695 disallows noteable author to read and resolve all notes2696 when admin mode is enabled2697 allows admins to read all notes and admin them2698 when admin mode is disabled2699 does not allow non members to read confidential notes and replies2700Groups::UpdateService2701 #execute2702 with project2703 behaves like with packages2704 with npm packages2705 does not allow a path update2706 allows name update2707 located in a subgroup2708 does allow a path update if there is not a root namespace change2709 behaves like with packages2710 with npm packages2711 does not allow a path update2712 allows name update2713 project visibility_level validation2714 public group with public projects2715 does not change permission level2716 returns false if save failed2717 when a project has container images2718 within group2719 with path updates2720 does not allow the update2721 with name updates2722 allows the update2723 when the path does not change2724 allows the update2725 within subgroup2726 does not allow path updates2727 internal group with internal project2728 does not change permission level2729 internal group with private project2730 changes permission level to private2731 with parent_id user doesn't have permissions for2732 does not update parent_id2733 crm_enabled param2734 when no existing crm_settings2735 when param not present, leave crm disabled2736 when param set true, enables crm2737 with existing crm_settings2738 when param set true, enables crm2739 when param set false, disables crm2740 when param not present, crm remains disabled2741 when param not present, crm remains enabled2742 unauthorized visibility_level validation2743 does not change permission level2744 when user is not group owner2745 when group is private2746 does not update the group to public2747 does not update the group to public with tricky value2748 when group is public2749 does not update the group to private2750 does not update the group to private with invalid string value2751 does not update the group to private with valid string value2752 does not update the group to private because of Active Record typecasting2753 when updating #emails_disabled2754 updates the attribute2755 does not update when not group owner2756 updating default_branch_protection2757 for users who have the ability to update default_branch_protection2758 updates the attribute2759 for users who do not have the ability to update default_branch_protection2760 does not update the attribute2761 EventStore2762 when changing a group path2763 publishes a GroupPathChangedEvent2764 when not changing a group path2765 does not publish a GroupPathChangedEvent2766 rename group2767 returns true2768 error moving group2769 does not raise an error2770 returns false2771 has the right error2772 hasn't changed the path2773 for a subgroup2774 when the parent group share_with_group_lock is enabled2775 for the parent group owner2776 allows disabling share_with_group_lock2777 for a subgroup owner (who does not own the parent)2778 does not allow disabling share_with_group_lock2779 change shared Runners config2780 calls the shared runners update service2781 handles errors in the shared runners update service2782 changes allowing subgroups to establish own 2FA2783 changes settings2784 enqueues update subgroups and its members2785Integrations::Mattermost2786 behaves like Integrations::SlackMattermostNotifier2787 Associations2788 is expected to belong to project required: false2789 Validations2790 when integration is active2791 is expected to validate that :webhook cannot be empty/falsy2792 behaves like issue tracker integration URL attribute2793 is expected to allow :webhook to be ‹"https://example.com"›2794 is expected not to allow :webhook to be ‹"example.com"›2795 is expected not to allow :webhook to be ‹"ftp://example.com"›2796 is expected not to allow :webhook to be ‹"herp-and-derp"›2797 when integration is inactive2798 is expected not to validate that :webhook cannot be empty/falsy2799 #execute2800 with username for slack configured2801 uses the username as an option2802 push events2803 behaves like calls the integration API with the event message2804 is expected to request POST https://8.8.8.9/ 1 time2805 with event channel2806 uses the right channel for push event2807 tag_push events2808 behaves like calls the integration API with the event message2809 is expected to request POST https://8.8.8.9/ 1 time2810 issue events2811 behaves like calls the integration API with the event message2812 is expected to request POST https://8.8.8.9/ 1 time2813 whith event channel2814 uses the right channel for issue event2815 for confidential issues2816 falls back to issue channel2817 and confidential_issue_channel is defined2818 uses the confidential issue channel when it is defined2819 merge request events2820 behaves like calls the integration API with the event message2821 is expected to request POST https://8.8.8.9/ 1 time2822 with event channel2823 uses the right channel for merge request event2824 wiki page events2825 behaves like calls the integration API with the event message2826 is expected to request POST https://8.8.8.9/ 1 time2827 with event channel2828 uses the right channel for wiki event2829 deployment events2830 behaves like calls the integration API with the event message2831 is expected to request POST https://8.8.8.9/ 1 time2832 note event2833 behaves like calls the integration API with the event message2834 is expected to request POST https://8.8.8.9/ 1 time2835 with event channel2836 uses the right channel2837 for confidential notes2838 falls back to note channel2839 and confidential_note_channel is defined2840 uses confidential channel2841 Push events2842 on default branch2843 pushing tags2844 behaves like triggered Mattermost integration2845 notifies about push events2846 when the response is not successful2847 logs an error2848 notification enabled only for default branch2849 behaves like triggered Mattermost integration2850 notifies about push events2851 when the response is not successful2852 logs an error2853 notification enabled only for protected branches2854 behaves like untriggered Mattermost integration2855 does not notify about push events2856 notification enabled only for default and protected branches2857 behaves like triggered Mattermost integration2858 notifies about push events2859 when the response is not successful2860 logs an error2861 notification enabled for all branches2862 behaves like triggered Mattermost integration2863 notifies about push events2864 when the response is not successful2865 logs an error2866 on a protected branch2867 pushing tags2868 behaves like triggered Mattermost integration2869 notifies about push events2870 when the response is not successful2871 logs an error2872 notification enabled only for default branch2873 behaves like untriggered Mattermost integration2874 does not notify about push events2875 notification enabled only for protected branches2876 behaves like triggered Mattermost integration2877 notifies about push events2878 when the response is not successful2879 logs an error2880 notification enabled only for default and protected branches2881 behaves like triggered Mattermost integration2882 notifies about push events2883 when the response is not successful2884 logs an error2885 notification enabled for all branches2886 behaves like triggered Mattermost integration2887 notifies about push events2888 when the response is not successful2889 logs an error2890 on a protected branch with protected branches defined using wildcards2891 pushing tags2892 behaves like triggered Mattermost integration2893 notifies about push events2894 when the response is not successful2895 logs an error2896 notification enabled only for default branch2897 behaves like untriggered Mattermost integration2898 does not notify about push events2899 notification enabled only for protected branches2900 behaves like triggered Mattermost integration2901 notifies about push events2902 when the response is not successful2903 logs an error2904 notification enabled only for default and protected branches2905 behaves like triggered Mattermost integration2906 notifies about push events2907 when the response is not successful2908 logs an error2909 notification enabled for all branches2910 behaves like triggered Mattermost integration2911 notifies about push events2912 when the response is not successful2913 logs an error2914 on a neither protected nor default branch2915 pushing tags2916 behaves like triggered Mattermost integration2917 notifies about push events2918 when the response is not successful2919 logs an error2920 notification enabled only for default branch2921 behaves like untriggered Mattermost integration2922 does not notify about push events2923 notification enabled only for protected branches2924 behaves like untriggered Mattermost integration2925 does not notify about push events2926 notification enabled only for default and protected branches2927 behaves like untriggered Mattermost integration2928 does not notify about push events2929 notification enabled for all branches2930 behaves like triggered Mattermost integration2931 notifies about push events2932 when the response is not successful2933 logs an error2934 Note events2935 when commit comment event executed2936 behaves like triggered Mattermost integration2937 notifies about commit comment events2938 when the response is not successful2939 logs an error2940 when merge request comment event executed2941 behaves like triggered Mattermost integration2942 notifies about merge request comment events2943 when the response is not successful2944 logs an error2945 when issue comment event executed2946 behaves like triggered Mattermost integration2947 notifies about issue comment events2948 when the response is not successful2949 logs an error2950 when snippet comment event executed2951 behaves like triggered Mattermost integration2952 notifies about snippet comment events2953 when the response is not successful2954 logs an error2955 Pipeline events2956 with succeeded pipeline2957 with default to notify_only_broken_pipelines2958 behaves like untriggered Mattermost integration2959 does not notify about pipeline events2960 with setting notify_only_broken_pipelines to false2961 behaves like triggered Mattermost integration2962 notifies about pipeline events2963 when the response is not successful2964 logs an error2965 with failed pipeline2966 on default branch2967 notification enabled only for default branch2968 behaves like triggered Mattermost integration2969 notifies about pipeline events2970 when the response is not successful2971 logs an error2972 notification enabled only for protected branches2973 behaves like untriggered Mattermost integration2974 does not notify about pipeline events2975 notification enabled only for default and protected branches2976 behaves like triggered Mattermost integration2977 notifies about pipeline events2978 when the response is not successful2979 logs an error2980 notification enabled for all branches2981 behaves like triggered Mattermost integration2982 notifies about pipeline events2983 when the response is not successful2984 logs an error2985 on a protected branch2986 notification enabled only for default branch2987 behaves like untriggered Mattermost integration2988 does not notify about pipeline events2989 notification enabled only for protected branches2990 behaves like triggered Mattermost integration2991 notifies about pipeline events2992 when the response is not successful2993 logs an error2994 notification enabled only for default and protected branches2995 behaves like triggered Mattermost integration2996 notifies about pipeline events2997 when the response is not successful2998 logs an error2999 notification enabled for all branches3000 behaves like triggered Mattermost integration3001 notifies about pipeline events3002 when the response is not successful3003 logs an error3004 on a protected branch with protected branches defined usin wildcards3005 notification enabled only for default branch3006 behaves like untriggered Mattermost integration3007 does not notify about pipeline events3008 notification enabled only for protected branches3009 behaves like triggered Mattermost integration3010 notifies about pipeline events3011 when the response is not successful3012 logs an error3013 notification enabled only for default and protected branches3014 behaves like triggered Mattermost integration3015 notifies about pipeline events3016 when the response is not successful3017 logs an error3018 notification enabled for all branches3019 behaves like triggered Mattermost integration3020 notifies about pipeline events3021 when the response is not successful3022 logs an error3023 on a neither protected nor default branch3024 notification enabled only for default branch3025 behaves like untriggered Mattermost integration3026 does not notify about pipeline events3027 notification enabled only for protected branches3028 behaves like untriggered Mattermost integration3029 does not notify about pipeline events3030 notification enabled only for default and protected branches3031 behaves like untriggered Mattermost integration3032 does not notify about pipeline events3033 notification enabled for all branches3034 behaves like triggered Mattermost integration3035 notifies about pipeline events3036 when the response is not successful3037 logs an error3038 Deployment events3039 behaves like triggered Mattermost integration3040 notifies about deployment events3041 when the response is not successful3042 logs an error3043 on a protected branch3044 notification enabled only for default branch3045 behaves like untriggered Mattermost integration3046 does not notify about pipeline events3047 notification enabled only for protected branches3048 behaves like triggered Mattermost integration3049 notifies about pipeline events3050 when the response is not successful3051 logs an error3052 notification enabled only for default and protected branches3053 behaves like triggered Mattermost integration3054 notifies about pipeline events3055 when the response is not successful3056 logs an error3057 notification enabled for all branches3058 behaves like triggered Mattermost integration3059 notifies about pipeline events3060 when the response is not successful3061 logs an error3062UsersController routing3063 to #show3064 to #gpg_keys3065 to #groups3066 to #projects3067 to #contributed3068 to #snippets3069 to #ssh_keys3070 to #calendar3071 to #calendar_activities3072SearchController routing3073 to #show3074Mounted Apps routing3075 to API3076SnippetsController routing3077 to #raw3078 to #index3079 to #new3080 to #edit3081 to #show3082 to #raw from unscoped routing3083 behaves like redirecting a legacy path3084 redirects /snippets/1 to /-/snippets/13085HelpController routing3086 to #index3087 to #show3088ProfilesController routing3089 to #account3090 to #audit_log3091 to #reset_feed_token3092 to #show3093Profiles::PreferencesController routing3094 to #show3095 to #update3096Profiles::KeysController routing3097 to #index3098 to #create3099 to #show3100 to #destroy3101Profiles::GpgKeysController routing3102 to #index3103 to #create3104 to #destroy3105Profiles::EmailsController routing3106 to #index3107 to #create3108 to #destroy3109Profiles::AvatarsController routing3110 to #destroy3111DashboardController routing3112 to #index3113 to #issues3114 to #calendar_issues3115 to #merge_requests3116RootController routing3117 to #index3118Authentication routing3119 GET /users/sign_in3120 POST /users/sign_in3121 POST /users/sign_out3122 POST /users/password3123 GET /users/password/new3124 GET /users/password/edit3125 PUT /users/password3126 with LDAP configured3127 POST /users/auth/ldapmain/callback3128 with LDAP sign-in disabled3129 prevents POST /users/auth/ldapmain/callback3130 with multiple LDAP providers configured3131 POST /users/auth/ldapmain/callback3132 POST /users/auth/ldapsecondary/callback3133HealthCheckController routing3134 to #index3135 also supports passing checks in the url3136InvitesController routing3137 to #show3138AbuseReportsController routing3139 to #new3140SentNotificationsController routing3141 to #unsubscribe3142AutocompleteController routing3143 to #users3144 to #projects3145 to #award_emojis3146 to #merge_request_target_branches3147SandboxController routing3148 to #mermaid3149Snippets::BlobsController routing3150 to #raw3151RunnerSetupController routing3152 to #platforms3153JwksController routing3154 to #index3155Import/Export Project configuration3156 relation_path: "project", relation_name: :project3157 where relation project3158 does not have prohibited keys3159 relation_path: "project.labels", relation_name: :labels3160 where relation project.labels3161 does not have prohibited keys3162 relation_path: "project.labels.priorities", relation_name: :priorities3163 where relation project.labels.priorities3164 does not have prohibited keys3165 relation_path: "project.milestones", relation_name: :milestones3166 where relation project.milestones3167 does not have prohibited keys3168 relation_path: "project.milestones.events", relation_name: :events3169 where relation project.milestones.events3170 does not have prohibited keys3171 relation_path: "project.milestones.events.push_event_payload", relation_name: :push_event_payload3172 where relation project.milestones.events.push_event_payload3173 does not have prohibited keys3174 relation_path: "project.issues", relation_name: :issues3175 where relation project.issues3176 does not have prohibited keys3177 relation_path: "project.issues.events", relation_name: :events3178 where relation project.issues.events3179 does not have prohibited keys3180 relation_path: "project.issues.events.push_event_payload", relation_name: :push_event_payload3181 where relation project.issues.events.push_event_payload3182 does not have prohibited keys3183 relation_path: "project.issues.timelogs", relation_name: :timelogs3184 where relation project.issues.timelogs3185 does not have prohibited keys3186 relation_path: "project.issues.notes", relation_name: :notes3187 where relation project.issues.notes3188 does not have prohibited keys3189 relation_path: "project.issues.notes.award_emoji", relation_name: :award_emoji3190 where relation project.issues.notes.award_emoji3191 does not have prohibited keys3192 relation_path: "project.issues.notes.system_note_metadata", relation_name: :system_note_metadata3193 where relation project.issues.notes.system_note_metadata3194 does not have prohibited keys3195 relation_path: "project.issues.notes.events", relation_name: :events3196 where relation project.issues.notes.events3197 does not have prohibited keys3198 relation_path: "project.issues.notes.events.push_event_payload", relation_name: :push_event_payload3199 where relation project.issues.notes.events.push_event_payload3200 does not have prohibited keys3201 relation_path: "project.issues.label_links", relation_name: :label_links3202 where relation project.issues.label_links3203 does not have prohibited keys3204 relation_path: "project.issues.label_links.label", relation_name: :label3205 where relation project.issues.label_links.label3206 does not have prohibited keys3207 relation_path: "project.issues.label_links.label.priorities", relation_name: :priorities3208 where relation project.issues.label_links.label.priorities3209 does not have prohibited keys3210 relation_path: "project.issues.milestone", relation_name: :milestone3211 where relation project.issues.milestone3212 does not have prohibited keys3213 relation_path: "project.issues.milestone.events", relation_name: :events3214 where relation project.issues.milestone.events3215 does not have prohibited keys3216 relation_path: "project.issues.milestone.events.push_event_payload", relation_name: :push_event_payload3217 where relation project.issues.milestone.events.push_event_payload3218 does not have prohibited keys3219 relation_path: "project.issues.resource_label_events", relation_name: :resource_label_events3220 where relation project.issues.resource_label_events3221 does not have prohibited keys3222 relation_path: "project.issues.resource_label_events.label", relation_name: :label3223 where relation project.issues.resource_label_events.label3224 does not have prohibited keys3225 relation_path: "project.issues.resource_label_events.label.priorities", relation_name: :priorities3226 where relation project.issues.resource_label_events.label.priorities3227 does not have prohibited keys3228 relation_path: "project.issues.resource_milestone_events", relation_name: :resource_milestone_events3229 where relation project.issues.resource_milestone_events3230 does not have prohibited keys3231 relation_path: "project.issues.resource_milestone_events.milestone", relation_name: :milestone3232 where relation project.issues.resource_milestone_events.milestone3233 does not have prohibited keys3234 relation_path: "project.issues.resource_state_events", relation_name: :resource_state_events3235 where relation project.issues.resource_state_events3236 does not have prohibited keys3237 relation_path: "project.issues.designs", relation_name: :designs3238 where relation project.issues.designs3239 does not have prohibited keys3240 relation_path: "project.issues.designs.notes", relation_name: :notes3241 where relation project.issues.designs.notes3242 does not have prohibited keys3243 relation_path: "project.issues.designs.notes.events", relation_name: :events3244 where relation project.issues.designs.notes.events3245 does not have prohibited keys3246 relation_path: "project.issues.designs.notes.events.push_event_payload", relation_name: :push_event_payload3247 where relation project.issues.designs.notes.events.push_event_payload3248 does not have prohibited keys3249 relation_path: "project.issues.design_versions", relation_name: :design_versions3250 where relation project.issues.design_versions3251 does not have prohibited keys3252 relation_path: "project.issues.design_versions.actions", relation_name: :actions3253 where relation project.issues.design_versions.actions3254 does not have prohibited keys3255 relation_path: "project.issues.design_versions.actions.design", relation_name: :design3256 where relation project.issues.design_versions.actions.design3257 does not have prohibited keys3258 relation_path: "project.issues.issue_assignees", relation_name: :issue_assignees3259 where relation project.issues.issue_assignees3260 does not have prohibited keys3261 relation_path: "project.issues.zoom_meetings", relation_name: :zoom_meetings3262 where relation project.issues.zoom_meetings3263 does not have prohibited keys3264 relation_path: "project.issues.sentry_issue", relation_name: :sentry_issue3265 where relation project.issues.sentry_issue3266 does not have prohibited keys3267 relation_path: "project.issues.award_emoji", relation_name: :award_emoji3268 where relation project.issues.award_emoji3269 does not have prohibited keys3270 relation_path: "project.issues.epic_issue", relation_name: :epic_issue3271 where relation project.issues.epic_issue3272 does not have prohibited keys3273 relation_path: "project.issues.epic_issue.epic", relation_name: :epic3274 where relation project.issues.epic_issue.epic3275 does not have prohibited keys3276 relation_path: "project.issues.issuable_sla", relation_name: :issuable_sla3277 where relation project.issues.issuable_sla3278 does not have prohibited keys3279 relation_path: "project.issues.iteration", relation_name: :iteration3280 where relation project.issues.iteration3281 does not have prohibited keys3282 relation_path: "project.issues.iteration.iterations_cadence", relation_name: :iterations_cadence3283 where relation project.issues.iteration.iterations_cadence3284 does not have prohibited keys3285 relation_path: "project.issues.resource_iteration_events", relation_name: :resource_iteration_events3286 where relation project.issues.resource_iteration_events3287 does not have prohibited keys3288 relation_path: "project.issues.resource_iteration_events.iteration", relation_name: :iteration3289 where relation project.issues.resource_iteration_events.iteration3290 does not have prohibited keys3291 relation_path: "project.issues.resource_iteration_events.iteration.iterations_cadence", relation_name: :iterations_cadence3292 where relation project.issues.resource_iteration_events.iteration.iterations_cadence3293 does not have prohibited keys3294 relation_path: "project.snippets", relation_name: :snippets3295 where relation project.snippets3296 does not have prohibited keys3297 relation_path: "project.snippets.award_emoji", relation_name: :award_emoji3298 where relation project.snippets.award_emoji3299 does not have prohibited keys3300 relation_path: "project.snippets.notes", relation_name: :notes3301 where relation project.snippets.notes3302 does not have prohibited keys3303 relation_path: "project.snippets.notes.award_emoji", relation_name: :award_emoji3304 where relation project.snippets.notes.award_emoji3305 does not have prohibited keys3306 relation_path: "project.releases", relation_name: :releases3307 where relation project.releases3308 does not have prohibited keys3309 relation_path: "project.releases.links", relation_name: :links3310 where relation project.releases.links3311 does not have prohibited keys3312 relation_path: "project.releases.milestone_releases", relation_name: :milestone_releases3313 where relation project.releases.milestone_releases3314 does not have prohibited keys3315 relation_path: "project.releases.milestone_releases.milestone", relation_name: :milestone3316 where relation project.releases.milestone_releases.milestone3317 does not have prohibited keys3318 relation_path: "project.project_members", relation_name: :project_members3319 where relation project.project_members3320 does not have prohibited keys3321 relation_path: "project.project_members.user", relation_name: :user3322 where relation project.project_members.user3323 does not have prohibited keys3324 relation_path: "project.merge_requests", relation_name: :merge_requests3325 where relation project.merge_requests3326 does not have prohibited keys3327 relation_path: "project.merge_requests.approvals", relation_name: :approvals3328 where relation project.merge_requests.approvals3329 does not have prohibited keys3330 relation_path: "project.merge_requests.metrics", relation_name: :metrics3331 where relation project.merge_requests.metrics3332 does not have prohibited keys3333 relation_path: "project.merge_requests.award_emoji", relation_name: :award_emoji3334 where relation project.merge_requests.award_emoji3335 does not have prohibited keys3336 relation_path: "project.merge_requests.merge_request_assignees", relation_name: :merge_request_assignees3337 where relation project.merge_requests.merge_request_assignees3338 does not have prohibited keys3339 relation_path: "project.merge_requests.merge_request_reviewers", relation_name: :merge_request_reviewers3340 where relation project.merge_requests.merge_request_reviewers3341 does not have prohibited keys3342 relation_path: "project.merge_requests.notes", relation_name: :notes3343 where relation project.merge_requests.notes3344 does not have prohibited keys3345 relation_path: "project.merge_requests.notes.award_emoji", relation_name: :award_emoji3346 where relation project.merge_requests.notes.award_emoji3347 does not have prohibited keys3348 relation_path: "project.merge_requests.notes.system_note_metadata", relation_name: :system_note_metadata3349 where relation project.merge_requests.notes.system_note_metadata3350 does not have prohibited keys3351 relation_path: "project.merge_requests.notes.events", relation_name: :events3352 where relation project.merge_requests.notes.events3353 does not have prohibited keys3354 relation_path: "project.merge_requests.notes.events.push_event_payload", relation_name: :push_event_payload3355 where relation project.merge_requests.notes.events.push_event_payload3356 does not have prohibited keys3357 relation_path: "project.merge_requests.notes.suggestions", relation_name: :suggestions3358 where relation project.merge_requests.notes.suggestions3359 does not have prohibited keys3360 relation_path: "project.merge_requests.merge_request_diff", relation_name: :merge_request_diff3361 where relation project.merge_requests.merge_request_diff3362 does not have prohibited keys3363 relation_path: "project.merge_requests.merge_request_diff.merge_request_diff_commits", relation_name: :merge_request_diff_commits3364 where relation project.merge_requests.merge_request_diff.merge_request_diff_commits3365 does not have prohibited keys3366 relation_path: "project.merge_requests.merge_request_diff.merge_request_diff_commits.commit_author", relation_name: :commit_author3367 where relation project.merge_requests.merge_request_diff.merge_request_diff_commits.commit_author3368 does not have prohibited keys3369 relation_path: "project.merge_requests.merge_request_diff.merge_request_diff_commits.committer", relation_name: :committer3370 where relation project.merge_requests.merge_request_diff.merge_request_diff_commits.committer3371 does not have prohibited keys3372 relation_path: "project.merge_requests.merge_request_diff.merge_request_diff_files", relation_name: :merge_request_diff_files3373 where relation project.merge_requests.merge_request_diff.merge_request_diff_files3374 does not have prohibited keys3375 relation_path: "project.merge_requests.events", relation_name: :events3376 where relation project.merge_requests.events3377 does not have prohibited keys3378 relation_path: "project.merge_requests.events.push_event_payload", relation_name: :push_event_payload3379 where relation project.merge_requests.events.push_event_payload3380 does not have prohibited keys3381 relation_path: "project.merge_requests.timelogs", relation_name: :timelogs3382 where relation project.merge_requests.timelogs3383 does not have prohibited keys3384 relation_path: "project.merge_requests.label_links", relation_name: :label_links3385 where relation project.merge_requests.label_links3386 does not have prohibited keys3387 relation_path: "project.merge_requests.label_links.label", relation_name: :label3388 where relation project.merge_requests.label_links.label3389 does not have prohibited keys3390 relation_path: "project.merge_requests.label_links.label.priorities", relation_name: :priorities3391 where relation project.merge_requests.label_links.label.priorities3392 does not have prohibited keys3393 relation_path: "project.merge_requests.milestone", relation_name: :milestone3394 where relation project.merge_requests.milestone3395 does not have prohibited keys3396 relation_path: "project.merge_requests.milestone.events", relation_name: :events3397 where relation project.merge_requests.milestone.events3398 does not have prohibited keys3399 relation_path: "project.merge_requests.milestone.events.push_event_payload", relation_name: :push_event_payload3400 where relation project.merge_requests.milestone.events.push_event_payload3401 does not have prohibited keys3402 relation_path: "project.merge_requests.resource_label_events", relation_name: :resource_label_events3403 where relation project.merge_requests.resource_label_events3404 does not have prohibited keys3405 relation_path: "project.merge_requests.resource_label_events.label", relation_name: :label3406 where relation project.merge_requests.resource_label_events.label3407 does not have prohibited keys3408 relation_path: "project.merge_requests.resource_label_events.label.priorities", relation_name: :priorities3409 where relation project.merge_requests.resource_label_events.label.priorities3410 does not have prohibited keys3411 relation_path: "project.merge_requests.resource_milestone_events", relation_name: :resource_milestone_events3412 where relation project.merge_requests.resource_milestone_events3413 does not have prohibited keys3414 relation_path: "project.merge_requests.resource_milestone_events.milestone", relation_name: :milestone3415 where relation project.merge_requests.resource_milestone_events.milestone3416 does not have prohibited keys3417 relation_path: "project.merge_requests.resource_state_events", relation_name: :resource_state_events3418 where relation project.merge_requests.resource_state_events3419 does not have prohibited keys3420 relation_path: "project.external_pull_requests", relation_name: :external_pull_requests3421 where relation project.external_pull_requests3422 does not have prohibited keys3423 relation_path: "project.ci_pipelines", relation_name: :ci_pipelines3424 where relation project.ci_pipelines3425 does not have prohibited keys3426 relation_path: "project.ci_pipelines.notes", relation_name: :notes3427 where relation project.ci_pipelines.notes3428 does not have prohibited keys3429 relation_path: "project.ci_pipelines.notes.events", relation_name: :events3430 where relation project.ci_pipelines.notes.events3431 does not have prohibited keys3432 relation_path: "project.ci_pipelines.notes.events.push_event_payload", relation_name: :push_event_payload3433 where relation project.ci_pipelines.notes.events.push_event_payload3434 does not have prohibited keys3435 relation_path: "project.ci_pipelines.stages", relation_name: :stages3436 where relation project.ci_pipelines.stages3437 does not have prohibited keys3438 relation_path: "project.ci_pipelines.stages.statuses", relation_name: :statuses3439 where relation project.ci_pipelines.stages.statuses3440 does not have prohibited keys3441 relation_path: "project.ci_pipelines.external_pull_request", relation_name: :external_pull_request3442 where relation project.ci_pipelines.external_pull_request3443 does not have prohibited keys3444 relation_path: "project.ci_pipelines.merge_request", relation_name: :merge_request3445 where relation project.ci_pipelines.merge_request3446 does not have prohibited keys3447 relation_path: "project.ci_pipelines.pipeline_metadata", relation_name: :pipeline_metadata3448 where relation project.ci_pipelines.pipeline_metadata3449 does not have prohibited keys3450 relation_path: "project.auto_devops", relation_name: :auto_devops3451 where relation project.auto_devops3452 does not have prohibited keys3453 relation_path: "project.pipeline_schedules", relation_name: :pipeline_schedules3454 where relation project.pipeline_schedules3455 does not have prohibited keys3456 relation_path: "project.container_expiration_policy", relation_name: :container_expiration_policy3457 where relation project.container_expiration_policy3458 does not have prohibited keys3459 relation_path: "project.protected_branches", relation_name: :protected_branches3460 where relation project.protected_branches3461 does not have prohibited keys3462 relation_path: "project.protected_branches.merge_access_levels", relation_name: :merge_access_levels3463 where relation project.protected_branches.merge_access_levels3464 does not have prohibited keys3465 relation_path: "project.protected_branches.push_access_levels", relation_name: :push_access_levels3466 where relation project.protected_branches.push_access_levels3467 does not have prohibited keys3468 relation_path: "project.protected_branches.unprotect_access_levels", relation_name: :unprotect_access_levels3469 where relation project.protected_branches.unprotect_access_levels3470 does not have prohibited keys3471 relation_path: "project.protected_tags", relation_name: :protected_tags3472 where relation project.protected_tags3473 does not have prohibited keys3474 relation_path: "project.protected_tags.create_access_levels", relation_name: :create_access_levels3475 where relation project.protected_tags.create_access_levels3476 does not have prohibited keys3477 relation_path: "project.project_feature", relation_name: :project_feature3478 where relation project.project_feature3479 does not have prohibited keys3480 relation_path: "project.custom_attributes", relation_name: :custom_attributes3481 where relation project.custom_attributes3482 does not have prohibited keys3483 relation_path: "project.prometheus_metrics", relation_name: :prometheus_metrics3484 where relation project.prometheus_metrics3485 does not have prohibited keys3486 relation_path: "project.project_badges", relation_name: :project_badges3487 where relation project.project_badges3488 does not have prohibited keys3489 relation_path: "project.ci_cd_settings", relation_name: :ci_cd_settings3490 where relation project.ci_cd_settings3491 does not have prohibited keys3492 relation_path: "project.error_tracking_setting", relation_name: :error_tracking_setting3493 where relation project.error_tracking_setting3494 does not have prohibited keys3495 relation_path: "project.metrics_setting", relation_name: :metrics_setting3496 where relation project.metrics_setting3497 does not have prohibited keys3498 relation_path: "project.boards", relation_name: :boards3499 where relation project.boards3500 does not have prohibited keys3501 relation_path: "project.boards.lists", relation_name: :lists3502 where relation project.boards.lists3503 does not have prohibited keys3504 relation_path: "project.boards.lists.label", relation_name: :label3505 where relation project.boards.lists.label3506 does not have prohibited keys3507 relation_path: "project.boards.lists.label.priorities", relation_name: :priorities3508 where relation project.boards.lists.label.priorities3509 does not have prohibited keys3510 relation_path: "project.boards.lists.milestone", relation_name: :milestone3511 where relation project.boards.lists.milestone3512 does not have prohibited keys3513 relation_path: "project.boards.milestone", relation_name: :milestone3514 where relation project.boards.milestone3515 does not have prohibited keys3516 relation_path: "project.service_desk_setting", relation_name: :service_desk_setting3517 where relation project.service_desk_setting3518 does not have prohibited keys3519 relation_path: "project.protected_environments", relation_name: :protected_environments3520 where relation project.protected_environments3521 does not have prohibited keys3522 relation_path: "project.protected_environments.deploy_access_levels", relation_name: :deploy_access_levels3523 where relation project.protected_environments.deploy_access_levels3524 does not have prohibited keys3525 relation_path: "project.security_setting", relation_name: :security_setting3526 where relation project.security_setting3527 does not have prohibited keys3528 relation_path: "project.push_rule", relation_name: :push_rule3529 where relation project.push_rule3530 does not have prohibited keys3531Environments::StopService3532 #execute3533 with a deployment3534 plays the stop action3535 without stop action3536 stops the environment3537 force option3538 does not play the stop action when forced3539 when an environment has already been stopped3540 does not play the stop action3541 without a deployment3542 stops the environment3543 when the actor is a reporter3544 does not stop the environment3545 #execute_for_branch3546 when environment with review app exists3547 when user has permission to stop environment3548 when environment is associated with removed branch3549 stops environment3550 when environment is associated with different branch3551 does not stop environment3552 when specified branch does not exist3553 does not stop environment3554 when no branch not specified3555 does not stop environment3556 when environment is not stopped3557 does not stop environment3558 when user does not have permission to stop environment3559 when user has no access to manage deployments3560 does not stop environment3561 when branch for stop action is protected3562 does not stop environment3563 when there is no environment associated with review app3564 when user has permission to stop environments3565 does not stop environment3566 when environment does not exist3567 does not raise error3568 #execute_for_merge_request_pipeline3569 has active environment at first3570 when user is a developer3571 stops the active environment3572 and merge request has associated created_environments3573 stops the associated created_environments3574 does not affect environments that are not associated to the merge request3575 when pipeline is a branch pipeline for merge request3576 does not stop the active environment3577 with environment related jobs3578 does not stop environments that was not started by the merge request3579 when user is a reporter3580 does not stop the active environment3581 when pipeline is not associated with environments3582 does not raise exception3583 when pipeline is not a pipeline for merge request3584 does not stop the active environment3585MergeRequests::RebaseService3586 #execute3587 behaves like sequence of failure and success3588 properly clears the error message3589 when unexpected error occurs3590 saves a generic error message3591 returns an error3592 logs the error3593 with a pre-receive failure3594 saves a specific message3595 returns an error3596 with git command failure3597 saves a generic error message3598 returns an error3599 valid params3600 clears rebase_jid3601 behaves like a service that can execute a successful rebase3602 rebases source branch3603 records the new SHA on the merge request3604 logs correct author and committer3605 when skip_ci flag is set3606 behaves like a service that can execute a successful rebase3607 rebases source branch3608 records the new SHA on the merge request3609 logs correct author and committer3610 fork3611 successful fork rebase3612 rebases source branch3613NamespacesHelper3614 #namespaces_options3615 returns only allowed namespaces for user3616 avoids duplicate groups when extra_group is used3617 selects the new group by default3618 falls back to current user selection3619 returns only groups if groups_only option is true3620 when admin mode is enabled3621 returns groups without being a member for admin3622 when admin mode is disabled3623 returns only allowed namespaces for admin3624 when admin mode is disabled3625 selects existing group3626 when nested groups are available3627 includes groups nested in groups the user can administer3628 orders the groups correctly3629 #cascading_namespace_settings_popover_data3630 when locked by an application setting3631 returns expected hash3632 when locked by an ancestor namespace3633 returns expected hash3634 #cascading_namespace_setting_locked?3635 when `group` argument is `nil`3636 returns `false`3637 when `*_locked?` method does not exist3638 returns `false`3639 when `*_locked?` method does exist3640 calls corresponding `*_locked?` method3641 #pipeline_usage_app_data3642 returns a hash with necessary data for the frontend3643Projects::MoveForksService3644 #execute3645 rollbacks changes if transaction fails3646 when moving a root forked project3647 moves the descendant forks3648 updates the fork network3649 when moving a intermediate forked project3650 moves the descendant forks3651 moves the ascendant fork3652 does not update fork network3653 when moving a leaf forked project3654 moves the ascendant fork3655 does not update fork network3656Operations::FeatureFlag3657 behaves like includes Limitable concern3658 #exceeds_limits?3659 without plan limits configured3660 is expected to eq false3661 without plan limits configured3662 is expected to eq false3663 with an existing model3664 is expected to eq true3665 validations3666 is expected to be a kind of Limitable3667 without plan limits configured3668 can create new models3669 with plan limits configured3670 can create new models3671 with an existing model3672 cannot create new models exceeding the plan limits3673 associations3674 is expected to belong to project required: false3675 is expected to have many strategies3676 default values3677 is expected to be active3678 is expected to eq "new_version_flag"3679 .reference_pattern3680 is expected to match "[feature_flag:123]"3681 is expected to match "[feature_flag:gitlab-org/gitlab/123]"3682 .link_reference_pattern3683 is expected to match "http://localhost/gitlab-org/gitlab/-/feature_flags/123/edit"3684 is expected not to match "http://localhost/gitlab-org/gitlab/issues/123/edit"3685 is expected not to match "gitlab-org/gitlab/-/feature_flags/123/edit"3686 #to_reference3687 returns feature flag id3688 returns complete path to the feature flag with full: true3689 validations3690 is expected to validate that :project cannot be empty/falsy3691 is expected to validate that :name cannot be empty/falsy3692 is expected to validate that :name is case-sensitively unique within the scope of :project_id3693 is expected to define :version as an enum backed by an integer with values ‹{new_version_flag: 2}›3694 a version 2 feature flag3695 is valid if associated with Operations::FeatureFlags::Strategy models3696 behaves like AtomicInternalId3697 .has_internal_id3698 Module inclusion3699 is expected to includes the AtomicInternalId module3700 Validation3701 when presence validation is required3702 when creating an object3703 raises an error if the internal id is blank3704 when updating an object3705 raises an error if the internal id is blank3706 when presence validation is not required3707 when creating an object3708 does not raise an error if the internal id is blank (PENDING: No reason given)3709 when updating an object3710 does not raise an error if the internal id is blank (PENDING: No reason given)3711 Creating an instance3712 saves a new instance properly3713 internal id generation3714 calls InternalId.generate_next and sets internal id attribute3715 does not overwrite an existing internal id3716 when the instance has an internal ID set3717 calls InternalId.update_last_value and sets the `last_value` to that of the instance3718 unsetting the instance internal id on rollback3719 when the internal id has been changed3720 when the internal id is automatically set3721 clears it on the instance3722 when the internal id is manually set3723 does not clear it on the instance3724 when the internal id has not been changed3725 preserves the value on the instance3726 supply of internal ids3727 provides a persistent supply of IID values, sensitive to the current state3728 #reset_scope_internal_id_attribute3729 rewinds the allocated IID3730 allocates the same IID3731 .enabled3732 when the feature flag is active3733 returns the flag3734 when the feature flag is inactive3735 does not return the flag3736 .disabled3737 when the feature flag is active3738 does not return the flag3739 when the feature flag is inactive3740 returns the flag3741 .for_unleash_client3742 matches wild cards in the scope3743 matches wild cards case sensitively3744 returns feature flags ordered by id3745 #hook_attrs3746 includes expected attributes3747ContainerRegistry::Tag3748 is expected to respond to #repository3749 is expected to delegate #registry to the #repository object3750 is expected to delegate #client to the #repository object3751 #path3752 when tag belongs to zero-level repository3753 returns path to the image3754 when tag belongs to first-level repository3755 returns path to the image3756 #location3757 returns a full location of the tag3758 manifest processing3759 schema v13760 #layers3761 is expected to eq 13762 #total_size3763 is expected to be nil3764 config processing3765 #config3766 is expected to be nil3767 #created_at3768 is expected to be nil3769 behaves like using the value manually set on created_at3770 does not use the config3771 image is a helm chart3772 #created_at3773 is expected to be nil3774 behaves like using the value manually set on created_at3775 does not use the config3776 schema v23777 #layers3778 is expected to eq 13779 #total_size3780 is expected to eq 23198703781 config processing3782 when locally stored3783 behaves like a processable3784 #config3785 is expected not to be nil3786 #created_at3787 is expected not to be nil3788 behaves like using the value manually set on created_at3789 does not use the config3790 when externally stored3791 behaves like a processable3792 #config3793 is expected not to be nil3794 #created_at3795 is expected not to be nil3796 behaves like using the value manually set on created_at3797 does not use the config3798 #force_created_at_from_iso86013799 with a valid input3800 behaves like setting and caching the created_at value3801 sets and caches the created_at value3802 with a nil input3803 behaves like setting and caching the created_at value3804 sets and caches the created_at value3805 with an invalid input3806 behaves like setting and caching the created_at value3807 sets and caches the created_at value3808 updated_at=3809 with a valid input3810 is expected to eq Tue, 06 Dec 2022 10:55:38.000000000 +00003811 with a nil input3812 is expected to eq nil3813 with an invalid input3814 is expected to eq nil3815 with stubbed digest3816 #digest3817 returns a correct tag digest3818 #unsafe_delete3819 correctly deletes the tag3820Gitlab::Ci::Config::Entry::Reports3821 validates ALLOWED_KEYS3822 expects ALLOWED_KEYS to be an artifact file_type or coverage_report3823 validation3824 when entry config value is correct3825 keyword: :junit, file: "junit.xml"3826 when value is an array3827 behaves like a valid entry3828 #value3829 returns artifacts configuration3830 #valid?3831 is valid3832 when value is not array3833 behaves like a valid entry3834 #value3835 returns artifacts configuration3836 #valid?3837 is valid3838 keyword: :codequality, file: "gl-code-quality-report.json"3839 when value is an array3840 behaves like a valid entry3841 #value3842 returns artifacts configuration3843 #valid?3844 is valid3845 when value is not array3846 behaves like a valid entry3847 #value3848 returns artifacts configuration3849 #valid?3850 is valid3851 keyword: :sast, file: "gl-sast-report.json"3852 when value is an array3853 behaves like a valid entry3854 #value3855 returns artifacts configuration3856 #valid?3857 is valid3858 when value is not array3859 behaves like a valid entry3860 #value3861 returns artifacts configuration3862 #valid?3863 is valid3864 keyword: :secret_detection, file: "gl-secret-detection-report.json"3865 when value is an array3866 behaves like a valid entry3867 #value3868 returns artifacts configuration3869 #valid?3870 is valid3871 when value is not array3872 behaves like a valid entry3873 #value3874 returns artifacts configuration3875 #valid?3876 is valid3877 keyword: :dependency_scanning, file: "gl-dependency-scanning-report.json"3878 when value is an array3879 behaves like a valid entry3880 #value3881 returns artifacts configuration3882 #valid?3883 is valid3884 when value is not array3885 behaves like a valid entry3886 #value3887 returns artifacts configuration3888 #valid?3889 is valid3890 keyword: :container_scanning, file: "gl-container-scanning-report.json"3891 when value is an array3892 behaves like a valid entry3893 #value3894 returns artifacts configuration3895 #valid?3896 is valid3897 when value is not array3898 behaves like a valid entry3899 #value3900 returns artifacts configuration3901 #valid?3902 is valid3903 keyword: :cluster_image_scanning, file: "gl-cluster-image-scanning-report.json"3904 when value is an array3905 behaves like a valid entry3906 #value3907 returns artifacts configuration3908 #valid?3909 is valid3910 when value is not array3911 behaves like a valid entry3912 #value3913 returns artifacts configuration3914 #valid?3915 is valid3916 keyword: :dast, file: "gl-dast-report.json"3917 when value is an array3918 behaves like a valid entry3919 #value3920 returns artifacts configuration3921 #valid?3922 is valid3923 when value is not array3924 behaves like a valid entry3925 #value3926 returns artifacts configuration3927 #valid?3928 is valid3929 keyword: :license_scanning, file: "gl-license-scanning-report.json"3930 when value is an array3931 behaves like a valid entry3932 #value3933 returns artifacts configuration3934 #valid?3935 is valid3936 when value is not array3937 behaves like a valid entry3938 #value3939 returns artifacts configuration3940 #valid?3941 is valid3942 keyword: :performance, file: "performance.json"3943 when value is an array3944 behaves like a valid entry3945 #value3946 returns artifacts configuration3947 #valid?3948 is valid3949 when value is not array3950 behaves like a valid entry3951 #value3952 returns artifacts configuration3953 #valid?3954 is valid3955 keyword: :browser_performance, file: "browser-performance.json"3956 when value is an array3957 behaves like a valid entry3958 #value3959 returns artifacts configuration3960 #valid?3961 is valid3962 when value is not array3963 behaves like a valid entry3964 #value3965 returns artifacts configuration3966 #valid?3967 is valid3968 keyword: :browser_performance, file: "performance.json"3969 when value is an array3970 behaves like a valid entry3971 #value3972 returns artifacts configuration3973 #valid?3974 is valid3975 when value is not array3976 behaves like a valid entry3977 #value3978 returns artifacts configuration3979 #valid?3980 is valid3981 keyword: :load_performance, file: "load-performance.json"3982 when value is an array3983 behaves like a valid entry3984 #value3985 returns artifacts configuration3986 #valid?3987 is valid3988 when value is not array3989 behaves like a valid entry3990 #value3991 returns artifacts configuration3992 #valid?3993 is valid3994 keyword: :lsif, file: "lsif.json"3995 when value is an array3996 behaves like a valid entry3997 #value3998 returns artifacts configuration3999 #valid?4000 is valid4001 when value is not array4002 behaves like a valid entry4003 #value4004 returns artifacts configuration4005 #valid?4006 is valid4007 keyword: :dotenv, file: "build.dotenv"4008 when value is an array4009 behaves like a valid entry4010 #value4011 returns artifacts configuration4012 #valid?4013 is valid4014 when value is not array4015 behaves like a valid entry4016 #value4017 returns artifacts configuration4018 #valid?4019 is valid4020 keyword: :terraform, file: "tfplan.json"4021 when value is an array4022 behaves like a valid entry4023 #value4024 returns artifacts configuration4025 #valid?4026 is valid4027 when value is not array4028 behaves like a valid entry4029 #value4030 returns artifacts configuration4031 #valid?4032 is valid4033 keyword: :accessibility, file: "gl-accessibility.json"4034 when value is an array4035 behaves like a valid entry4036 #value4037 returns artifacts configuration4038 #valid?4039 is valid4040 when value is not array4041 behaves like a valid entry4042 #value4043 returns artifacts configuration4044 #valid?4045 is valid4046 keyword: :cyclonedx, file: "gl-sbom.cdx.zip"4047 when value is an array4048 behaves like a valid entry4049 #value4050 returns artifacts configuration4051 #valid?4052 is valid4053 when value is not array4054 behaves like a valid entry4055 #value4056 returns artifacts configuration4057 #valid?4058 is valid4059 when coverage_report is specified4060 is valid4061 returns artifacts configuration4062 and another report is specified4063 is valid4064 returns artifacts configuration4065 when entry value is not correct4066 #errors4067 when there is an unknown key present4068 reports error4069Gitlab::Usage::MetricDefinition4070 has all definitons valid4071 not_removed4072 includes metrics that are not removed4073 #with_instrumentation_class4074 includes definitions with instrumentation_class4075 with removed metric4076 excludes removed definitions4077 #key4078 returns a symbol from name4079 #validate4080 attribute: :description, value: nil4081 raise exception4082 with skip_validation4083 raise exception if skip_validation: false4084 does not raise exception if has skip_validation: true4085 attribute: :value_type, value: nil4086 raise exception4087 with skip_validation4088 raise exception if skip_validation: false4089 does not raise exception if has skip_validation: true4090 attribute: :value_type, value: "test"4091 raise exception4092 with skip_validation4093 raise exception if skip_validation: false4094 does not raise exception if has skip_validation: true4095 attribute: :status, value: nil4096 raise exception4097 with skip_validation4098 raise exception if skip_validation: false4099 does not raise exception if has skip_validation: true4100 attribute: :milestone, value: nil4101 raise exception4102 with skip_validation4103 raise exception if skip_validation: false4104 does not raise exception if has skip_validation: true4105 attribute: :data_category, value: nil4106 raise exception4107 with skip_validation4108 raise exception if skip_validation: false4109 does not raise exception if has skip_validation: true4110 attribute: :key_path, value: nil4111 raise exception4112 with skip_validation4113 raise exception if skip_validation: false4114 does not raise exception if has skip_validation: true4115 attribute: :product_group, value: nil4116 raise exception4117 with skip_validation4118 raise exception if skip_validation: false4119 does not raise exception if has skip_validation: true4120 attribute: :time_frame, value: nil4121 raise exception4122 with skip_validation4123 raise exception if skip_validation: false4124 does not raise exception if has skip_validation: true4125 attribute: :time_frame, value: "29d"4126 raise exception4127 with skip_validation4128 raise exception if skip_validation: false4129 does not raise exception if has skip_validation: true4130 attribute: :data_source, value: "other"4131 raise exception4132 with skip_validation4133 raise exception if skip_validation: false4134 does not raise exception if has skip_validation: true4135 attribute: :data_source, value: nil4136 raise exception4137 with skip_validation4138 raise exception if skip_validation: false4139 does not raise exception if has skip_validation: true4140 attribute: :distribution, value: nil4141 raise exception4142 with skip_validation4143 raise exception if skip_validation: false4144 does not raise exception if has skip_validation: true4145 attribute: :distribution, value: "test"4146 raise exception4147 with skip_validation4148 raise exception if skip_validation: false4149 does not raise exception if has skip_validation: true4150 attribute: :tier, value: ["test", "ee"]4151 raise exception4152 with skip_validation4153 raise exception if skip_validation: false4154 does not raise exception if has skip_validation: true4155 attribute: :name, value: "count_<adjective_describing>_boards"4156 raise exception4157 with skip_validation4158 raise exception if skip_validation: false4159 does not raise exception if has skip_validation: true4160 attribute: :repair_issue_url, value: nil4161 raise exception4162 with skip_validation4163 raise exception if skip_validation: false4164 does not raise exception if has skip_validation: true4165 attribute: :removed_by_url, value: 14166 raise exception4167 with skip_validation4168 raise exception if skip_validation: false4169 does not raise exception if has skip_validation: true4170 attribute: :performance_indicator_type, value: nil4171 raise exception4172 with skip_validation4173 raise exception if skip_validation: false4174 does not raise exception if has skip_validation: true4175 attribute: :instrumentation_class, value: "Metric_Class"4176 raise exception4177 with skip_validation4178 raise exception if skip_validation: false4179 does not raise exception if has skip_validation: true4180 attribute: :instrumentation_class, value: "metricClass"4181 raise exception4182 with skip_validation4183 raise exception if skip_validation: false4184 does not raise exception if has skip_validation: true4185 conditional validations4186 when metric has broken status4187 has to have repair issue url provided4188 #valid_service_ping_status?4189 when metric has active status4190 has to return true4191 when metric has removed status4192 has to return false4193 statuses4194 status: "active", skip_validation?: false4195 returns true/false for skip_validation4196 status: "broken", skip_validation?: false4197 returns true/false for skip_validation4198 status: "removed", skip_validation?: true4199 returns true/false for skip_validation4200 .load_all!4201 has empty list when there are no definition files4202 has one metric when there is one file4203 when the same metric is defined multiple times raises exception4204 dump_metrics_yaml4205 returns a YAML with both metrics in a sequence4206Gitlab::Database::WithLockRetriesOutsideTransaction4207 #run4208 requires block4209 when DISABLE_LOCK_RETRIES is set4210 executes the passed block without retrying4211 when lock retry is enabled4212 lock_fiber4213 acquires lock successfully4214 after 3 iterations4215 behaves like retriable exclusive lock on `projects`4216 succeeds executing the given block4217 setting the idle transaction timeout4218 when there is no outer transaction: disable_ddl_transaction! is set in the migration4219 does not disable the idle transaction timeout4220 when there is outer transaction: disable_ddl_transaction! is not set in the migration4221 disables the idle transaction timeout so the code can sleep and retry4222 after the retries are exhausted4223 disables the lock_timeout4224 after the retries, without setting lock_timeout4225 behaves like retriable exclusive lock on `projects`4226 succeeds executing the given block4227 after the retries, when requested to raise an error4228 raises an error instead of waiting indefinitely for the lock4229 when statement timeout is reached4230 raises StatementInvalid error4231 restore local database variables4232 is expected not to change `connection.execute("SHOW lock_timeout").to_a`4233 is expected not to change `connection.execute("SHOW idle_in_transaction_session_timeout").to_a`4234 casting durations correctly4235 executes `SET lock_timeout` using the configured timeout value in milliseconds4236 calls `sleep` after the first iteration fails, using the configured sleep time4237API::Helpers::Packages::DependencyProxyHelpers4238 #redirect_registry_request4239 with maven packages4240 application_setting: true, group_setting: nil, forward_to_registry: true, example_name: "executing redirect"4241 behaves like executing redirect4242 redirects to package registry4243 application_setting: true, group_setting: nil, forward_to_registry: false, example_name: "executing fallback"4244 behaves like executing fallback4245 redirects to package registry4246 application_setting: false, group_setting: nil, forward_to_registry: true, example_name: "executing fallback"4247 behaves like executing fallback4248 redirects to package registry4249 application_setting: false, group_setting: nil, forward_to_registry: false, example_name: "executing fallback"4250 behaves like executing fallback4251 redirects to package registry4252 application_setting: true, group_setting: false, forward_to_registry: true, example_name: "executing fallback"4253 behaves like executing fallback4254 redirects to package registry4255 application_setting: true, group_setting: false, forward_to_registry: false, example_name: "executing fallback"4256 behaves like executing fallback4257 redirects to package registry4258 application_setting: false, group_setting: true, forward_to_registry: true, example_name: "executing redirect"4259 behaves like executing redirect4260 redirects to package registry4261 application_setting: false, group_setting: true, forward_to_registry: false, example_name: "executing fallback"4262 behaves like executing fallback4263 redirects to package registry4264 when no target is present4265 behaves like executing redirect4266 redirects to package registry4267 when maven_central_request_forwarding is disabled4268 application_setting: true, forward_to_registry: true4269 behaves like executing fallback4270 redirects to package registry4271 application_setting: true, forward_to_registry: false4272 behaves like executing fallback4273 redirects to package registry4274 application_setting: false, forward_to_registry: true4275 behaves like executing fallback4276 redirects to package registry4277 application_setting: false, forward_to_registry: false4278 behaves like executing fallback4279 redirects to package registry4280 with npm packages4281 application_setting: true, group_setting: nil, forward_to_registry: true, example_name: "executing redirect"4282 behaves like executing redirect4283 redirects to package registry4284 application_setting: true, group_setting: nil, forward_to_registry: false, example_name: "executing fallback"4285 behaves like executing fallback4286 redirects to package registry4287 application_setting: false, group_setting: nil, forward_to_registry: true, example_name: "executing fallback"4288 behaves like executing fallback4289 redirects to package registry4290 application_setting: false, group_setting: nil, forward_to_registry: false, example_name: "executing fallback"4291 behaves like executing fallback4292 redirects to package registry4293 application_setting: true, group_setting: false, forward_to_registry: true, example_name: "executing fallback"4294 behaves like executing fallback4295 redirects to package registry4296 application_setting: true, group_setting: false, forward_to_registry: false, example_name: "executing fallback"4297 behaves like executing fallback4298 redirects to package registry4299 application_setting: false, group_setting: true, forward_to_registry: true, example_name: "executing redirect"4300 behaves like executing redirect4301 redirects to package registry4302 application_setting: false, group_setting: true, forward_to_registry: false, example_name: "executing fallback"4303 behaves like executing fallback4304 redirects to package registry4305 when no target is present4306 behaves like executing redirect4307 redirects to package registry4308 when maven_central_request_forwarding is disabled4309 application_setting: true, forward_to_registry: true4310 behaves like executing fallback4311 redirects to package registry4312 application_setting: true, forward_to_registry: false4313 behaves like executing fallback4314 redirects to package registry4315 application_setting: false, forward_to_registry: true4316 behaves like executing fallback4317 redirects to package registry4318 application_setting: false, forward_to_registry: false4319 behaves like executing fallback4320 redirects to package registry4321 with pypi packages4322 application_setting: true, group_setting: nil, forward_to_registry: true, example_name: "executing redirect"4323 behaves like executing redirect4324 redirects to package registry4325 application_setting: true, group_setting: nil, forward_to_registry: false, example_name: "executing fallback"4326 behaves like executing fallback4327 redirects to package registry4328 application_setting: false, group_setting: nil, forward_to_registry: true, example_name: "executing fallback"4329 behaves like executing fallback4330 redirects to package registry4331 application_setting: false, group_setting: nil, forward_to_registry: false, example_name: "executing fallback"4332 behaves like executing fallback4333 redirects to package registry4334 application_setting: true, group_setting: false, forward_to_registry: true, example_name: "executing fallback"4335 behaves like executing fallback4336 redirects to package registry4337 application_setting: true, group_setting: false, forward_to_registry: false, example_name: "executing fallback"4338 behaves like executing fallback4339 redirects to package registry4340 application_setting: false, group_setting: true, forward_to_registry: true, example_name: "executing redirect"4341 behaves like executing redirect4342 redirects to package registry4343 application_setting: false, group_setting: true, forward_to_registry: false, example_name: "executing fallback"4344 behaves like executing fallback4345 redirects to package registry4346 when no target is present4347 behaves like executing redirect4348 redirects to package registry4349 when maven_central_request_forwarding is disabled4350 application_setting: true, forward_to_registry: true4351 behaves like executing fallback4352 redirects to package registry4353 application_setting: true, forward_to_registry: false4354 behaves like executing fallback4355 redirects to package registry4356 application_setting: false, forward_to_registry: true4357 behaves like executing fallback4358 redirects to package registry4359 application_setting: false, forward_to_registry: false4360 behaves like executing fallback4361 redirects to package registry4362 with non-forwardable package type4363 conan4364 raises an error4365 nuget4366 raises an error4367 composer4368 raises an error4369 generic4370 raises an error4371 golang4372 raises an error4373 debian4374 raises an error4375 rubygems4376 raises an error4377 helm4378 raises an error4379 terraform_module4380 raises an error4381 rpm4382 raises an error4383 #registry_url4384 package_type: :maven, expected_result: "https://repo.maven.apache.org/maven2/test/123", params: {:path=>"test", :file_name=>"123", :project=>nil}4385 is expected to eq "https://repo.maven.apache.org/maven2/test/123"4386 package_type: :npm, expected_result: "https://registry.npmjs.org/test", params: {:package_name=>"test"}4387 is expected to eq "https://registry.npmjs.org/test"4388 package_type: :pypi, expected_result: "https://pypi.org/simple/test/", params: {:package_name=>"test"}4389 is expected to eq "https://pypi.org/simple/test/"4390 with non-forwardable package type conan4391 raises an error4392 with non-forwardable package type nuget4393 raises an error4394 with non-forwardable package type composer4395 raises an error4396 with non-forwardable package type generic4397 raises an error4398 with non-forwardable package type golang4399 raises an error4400 with non-forwardable package type debian4401 raises an error4402 with non-forwardable package type rubygems4403 raises an error4404 with non-forwardable package type helm4405 raises an error4406 with non-forwardable package type terraform_module4407 raises an error4408 with non-forwardable package type rpm4409 raises an error4410Issues::BuildService4411 for a single discussion4412 #execute4413 references the noteable title in the issue title4414 adds the note content to the description4415 for discussions in a merge request4416 #items_for_discussions4417 has an item for each discussion4418 #item_for_discussion4419 mentions the author of the note4420 wraps the note in a blockquote4421 #execute4422 uses provided title if title param given4423 uses provided description if description param given4424 without additional params4425 has the merge request reference in the title4426 has the reference of the merge request in the description4427 with multiple discussions4428 mentions all the authors in the description4429 has a link for each unresolved discussion in the description4430 mentions additional notes4431 For a merge request without discussions4432 #execute4433 mentions the merge request in the description4434 #execute4435 setting milestone4436 when developer4437 builds a new issues with given params4438 sets milestone to nil if it is not available for the project4439 when guest4440 cannot set milestone4441 setting issue type4442 with a corresponding WorkItems::Type4443 issue_type: nil, current_user: guest, work_item_type_id: type_issue_id, resulting_issue_type: "issue"4444 builds an issue4445 issue_type: "issue", current_user: guest, work_item_type_id: type_issue_id, resulting_issue_type: "issue"4446 builds an issue4447 issue_type: "incident", current_user: guest, work_item_type_id: type_issue_id, resulting_issue_type: "issue"4448 builds an issue4449 issue_type: "incident", current_user: reporter, work_item_type_id: type_incident_id, resulting_issue_type: "incident"4450 builds an issue4451 issue_type: "test_case", current_user: guest, work_item_type_id: type_issue_id, resulting_issue_type: "issue"4452 builds an issue4453 issue_type: "requirement", current_user: guest, work_item_type_id: type_issue_id, resulting_issue_type: "issue"4454 builds an issue4455 issue_type: "invalid", current_user: guest, work_item_type_id: type_issue_id, resulting_issue_type: "issue"4456 builds an issue4457 issue_type: "project", current_user: guest, work_item_type_id: type_issue_id, resulting_issue_type: "issue"4458 builds an issue4459Banzai::Filter::References::ProjectReferenceFilter4460 ignores invalid projects4461 allows references with text after the > character4462 ignores valid references contained inside 'pre' element4463 ignores valid references contained inside 'code' element4464 ignores valid references contained inside 'a' element4465 ignores valid references contained inside 'style' element4466 includes default classes4467 behaves like user reference or project reference4468 supports an :only_path context4469 mentioning a resource4470 links to a resource4471 links to a resource with a period4472 links to a resource with an underscore4473 links to a resource with different case-sensitivity4474 behaves like a reference containing an element node4475 does not escape inner html4476 behaves like it contains a data- attribute4477 includes a data- attribute4478 referencing a resource in a link href4479 links to the resource4480 links with adjacent text4481 behaves like it contains a data- attribute4482 includes a data- attribute4483 when invalid reference strings are very long4484 behaves like fails fast4485 fails fast for long strings4486 behaves like fails fast4487 fails fast for long strings4488 in group context4489 supports mentioning a project4490 supports mentioning a project in a nested group4491 #projects_hash4492 returns a Hash containing all Projects4493 #projects4494 returns the projects mentioned in a document4495 checking N+14496 does not have N+1 per multiple project references4497Ci::JobArtifacts::DestroyBatchService4498 .execute4499 creates a deleted object for artifact with attached file4500 does not remove the attached file4501 deletes the artifact records and logs them4502 reports metrics for destroyed artifacts4503 preserves trace artifacts4504 when artifact belongs to a project that is undergoing stats refresh4505 and skip_projects_on_refresh is set to false (default)4506 logs the projects undergoing refresh and continues with the delete4507 behaves like avoiding N+1 queries4508 does not make multiple queries when fetching multiple project refresh records4509 and skip_projects_on_refresh is set to true4510 logs the projects undergoing refresh and excludes the artifacts from deletion4511 behaves like avoiding N+1 queries4512 does not make multiple queries when fetching multiple project refresh records4513 when artifact belongs to a project not undergoing refresh4514 and skip_projects_on_refresh is set to false (default)4515 does not log any warnings4516 and skip_projects_on_refresh is set to true4517 does not log any warnings4518 ProjectStatistics4519 resets project statistics4520 with update_stats: false4521 does not update project statistics4522 returns size statistics4523 when failed to destroy artifact4524 when the import fails4525 raises an exception and stop destroying4526 when there are no artifacts4527 does not raise error4528 reports the number of destroyed artifacts4529Gitlab::ImportExport::ImportFailureService4530 #log_import_failure4531 when importable is a group4532 behaves like log import failure4533 tracks error4534 saves data to ImportFailure4535 when importable is a project4536 behaves like log import failure4537 tracks error4538 saves data to ImportFailure4539 when ImportFailure does not support importable class4540 raise exception4541 #with_retry4542 when exceptions are retriable4543 exception: GRPC::DeadlineExceeded4544 when retry succeeds4545 retries and logs import failure once with correct params4546 when retry continues to fail with intermittent errors4547 retries the number of times allowed and raise exception4548 logs import failure each time and raise exception4549 exception: ActiveRecord::QueryCanceled4550 when retry succeeds4551 retries and logs import failure once with correct params4552 when retry continues to fail with intermittent errors4553 retries the number of times allowed and raise exception4554 logs import failure each time and raise exception4555 when exception is not retriable4556 raise the exception4557Labels::PromoteService4558 #execute4559 without a group4560 fails on project without group4561 with a group4562 fails on group label4563 when there is an existing identical group label4564 uses the existing group label4565 does not create a new group label clone4566 behaves like promoting a project label to a group label4567 is truthy on success4568 removes all project labels with that title within the group4569 keeps users' subscriptions4570 recreates priorities4571 does not touch project out of promoted group4572 does not touch out of group priority4573 relinks issue with the promoted label4574 does not remove untouched labels from issue4575 does not relink untouched label in issue4576 relinks issues with merged labels4577 does not relink issues from other group4578 updates merge request4579 updates board lists4580 relinks all relations4581 when there is no existing identical group label4582 recreates the label as a group label4583 copies title, description and color to cloned group label4584 behaves like promoting a project label to a group label4585 is truthy on success4586 removes all project labels with that title within the group4587 keeps users' subscriptions4588 recreates priorities4589 does not touch project out of promoted group4590 does not touch out of group priority4591 relinks issue with the promoted label4592 does not remove untouched labels from issue4593 does not relink untouched label in issue4594 relinks issues with merged labels4595 does not relink issues from other group4596 updates merge request4597 updates board lists4598 relinks all relations4599CustomerRelations::Contact4600 associations4601 is expected to belong to group required: false4602 is expected to belong to organization optional: true4603 is expected to have many issue_contacts4604 is expected to have many issues4605 validations4606 is expected to validate that :group cannot be empty/falsy4607 is expected to validate that :first_name cannot be empty/falsy4608 is expected to validate that :last_name cannot be empty/falsy4609 is expected to validate that the length of :phone is at most 324610 is expected to validate that the length of :first_name is at most 2554611 is expected to validate that the length of :last_name is at most 2554612 is expected to validate that the length of :email is at most 2554613 is expected to validate that the length of :description is at most 10244614 is expected to validate that :email is case-insensitively unique within the scope of :group_id4615 behaves like an object with RFC3696 compliant email-formatted attributes4616 specifically its :email attribute4617 with a value of 'info@example.com'4618 is valid4619 with a value of 'info+test@example.com'4620 is valid4621 with a value of 'o'reilly@example.com'4622 is valid4623 with a value of 'foobar'4624 is invalid4625 with a value of 'test@test@example.com'4626 is invalid4627 with a value of 'test.test.@example.com'4628 is invalid4629 with a value of '.test.test@example.com'4630 is invalid4631 with a value of 'mailto:test@example.com'4632 is invalid4633 with a value of 'lol!'+=?><#$%^&*()@gmail.com'4634 is invalid4635 .reference_prefix4636 is expected to eq "[contact:"4637 .reference_prefix_quoted4638 is expected to eq "[\"contact:"4639 .reference_postfix4640 is expected to eq "]"4641 #root_group4642 when root group4643 is expected to be valid4644 when subgroup4645 is expected to be invalid4646 #before_validation4647 strips leading and trailing whitespace4648 #self.find_ids_by_emails4649 returns ids of contacts from group4650 does not return ids of contacts from other groups4651 raises ArgumentError when called with too many emails4652 finds contacts regardless of email casing4653 #self.exists_for_group?4654 with no contacts in group4655 returns false4656 with contacts in group4657 returns true4658 #self.move_to_root_group4659 moves contacts with unique emails and deletes the rest4660 updates issue_contact.contact_id for dupes and leaves the rest untouched4661 .search4662 when search term is empty4663 returns all group contacts4664 when search term is not empty4665 when searching for first name ignoring casing4666 is expected to contain exactly #<CustomerRelations::Contact id: 20, group_id: 1750, organization_id: nil, created_at: "2022-12-08 10...e", phone: nil, first_name: "ABC", last_name: "DEF", email: "ghi@test.com", description: [FILTERED]>4667 when searching for last name ignoring casing4668 is expected to contain exactly #<CustomerRelations::Contact id: 21, group_id: 1750, organization_id: nil, created_at: "2022-12-08 10...e", phone: nil, first_name: "PQR", last_name: "STU", email: "vwx@test.com", description: [FILTERED]>4669 when searching for email4670 is expected to contain exactly #<CustomerRelations::Contact id: 20, group_id: 1750, organization_id: nil, created_at: "2022-12-08 10...e", phone: nil, first_name: "ABC", last_name: "DEF", email: "ghi@test.com", description: [FILTERED]>4671 when searching description ignoring casing4672 is expected to contain exactly #<CustomerRelations::Contact id: 21, group_id: 1750, organization_id: nil, created_at: "2022-12-08 10...e", phone: nil, first_name: "PQR", last_name: "STU", email: "vwx@test.com", description: [FILTERED]>4673 when fuzzy searching for email and last name4674 is expected to contain exactly #<CustomerRelations::Contact id: 20, group_id: 1750, organization_id: nil, created_at: "2022-12-08 10...e", phone: nil, first_name: "ABC", last_name: "DEF", email: "ghi@test.com", description: [FILTERED]> and #<CustomerRelations::Contact id: 21, group_id: 1750, organization_id: nil, created_at: "2022-12-08 10...e", phone: nil, first_name: "PQR", last_name: "STU", email: "vwx@test.com", description: [FILTERED]>4675 .search_by_state4676 when searching for contacts state4677 returns only inactive contacts4678 returns only active contacts4679 .counts_by_state4680 returns correct contact counts4681 sorting4682 .sort_by_name4683 sorts them by last name then first name in ascending order4684 .sort_by_organization4685 sorts them by organization in descending order4686 .sort_by_field4687 sorts them by phone in ascending order4688Clusters::ClustersHierarchy4689 #base_and_ancestors4690 project in nested group with clusters at every level4691 returns clusters for project4692 returns clusters for child_group4693 returns clusters for parent_group4694 returns clusters for ancestor_group4695 project in a namespace4696 returns clusters for project4697 cluster has management project4698 management_project is in same namespace as cluster4699 returns cluster for management_project4700 management_project is in a different namespace from cluster4701 returns nothing4702 cluster has management project4703 returns clusters for management_project4704 returns clusters for project4705 returns clusters for group4706 project in nested group with clusters at some levels4707 returns clusters for management_project4708 returns clusters for project4709 returns clusters for child_group4710 returns clusters for parent_group4711 returns clusters for ancestor_group4712Issuable::DestroyService4713 #execute4714 when issuable is an issue4715 destroys the issue4716 updates open issues count cache4717 invalidates the issues count cache for the assignees4718 behaves like service deleting todos4719 behaves like service scheduling async deletes4720 destroys associated todos asynchronously4721 works inside a transaction4722 behaves like service deleting label links4723 behaves like service scheduling async deletes4724 destroys associated todos asynchronously4725 works inside a transaction4726 when issuable is a merge request4727 destroys the merge request4728 updates open merge requests count cache4729 invalidates the merge request caches for the MR assignee4730 behaves like service deleting todos4731 behaves like service scheduling async deletes4732 destroys associated todos asynchronously4733 works inside a transaction4734 behaves like service deleting label links4735 behaves like service scheduling async deletes4736 destroys associated todos asynchronously4737 works inside a transaction4738Gitlab::Ci::Pipeline::Chain::Command4739 #initialize4740 properly initialises object from hash4741 handling of origin_ref4742 #branch_exists?4743 for existing branch4744 is expected to eq true4745 for fully described tag ref4746 is expected to eq false4747 for fully described branch ref4748 is expected to eq true4749 for invalid branch4750 is expected to eq false4751 #tag_exists?4752 for existing ref4753 is expected to eq true4754 for fully described tag ref4755 is expected to eq true4756 for fully described branch ref4757 is expected to eq false4758 for invalid ref4759 is expected to eq false4760 #merge_request_ref_exists?4761 for existing merge request ref4762 is expected to eq true4763 for branch ref4764 is expected to eq false4765 #ref4766 for regular ref4767 is expected to eq "master"4768 for branch ref4769 is expected to eq "master"4770 for tag ref4771 is expected to eq "1.0.0"4772 for other refs4773 is expected to eq "refs/merge-requests/11/head"4774 #sha4775 when invalid checkout_sha is specified4776 returns empty value4777 when a valid checkout_sha is specified4778 returns checkout_sha4779 when a valid after_sha is specified4780 returns after_sha4781 when a valid origin_ref is specified4782 returns SHA for given ref4783 #origin_sha4784 when using checkout_sha and after_sha4785 uses checkout_sha4786 when using after_sha only4787 uses after_sha4788 #before_sha4789 when using checkout_sha and before_sha4790 uses before_sha4791 when using checkout_sha only4792 uses checkout_sha4793 when checkout_sha and before_sha are empty4794 uses BLANK_SHA4795 #source_sha4796 when source_sha is specified4797 returns the specified value4798 #target_sha4799 when target_sha is specified4800 returns the specified value4801 #protected_ref?4802 when a ref is protected4803 is expected to eq true4804 when a ref is unprotected4805 is expected to eq false4806 #ambiguous_ref4807 when ref is not ambiguous4808 is expected to eq false4809 when ref is ambiguous4810 is expected to eq true4811 #creates_child_pipeline?4812 when bridge is present4813 when bridge triggers a child pipeline4814 is expected to be truthy4815 when bridge triggers a multi-project pipeline4816 is expected to be falsey4817 when bridge is not present4818 is expected to be falsey4819 #parent_pipeline_partition_id4820 when bridge is present4821 when bridge triggers a child pipeline4822 is expected to eq 1234823 when bridge triggers a multi-project pipeline4824 is expected to be nil4825 when bridge is not present4826 is expected to be nil4827 #increment_pipeline_failure_reason_counter4828 increments the error metric4829 when the reason is nil4830 increments the error metric with unknown_failure4831 #observe_creation_duration4832 records the duration as histogram4833 when project is gitlab-org/gitlab4834 tracks the duration with the expected label4835 #observe_step_duration4836 when ci_pipeline_creation_step_duration_tracking is enabled4837 adds the duration to the step duration histogram4838 when ci_pipeline_creation_step_duration_tracking is disabled4839 does nothing4840 #observe_pipeline_size4841 logs the pipeline total size to histogram4842Gitlab::Database::BackgroundMigration::BatchedJob4843 is expected to be a kind of Gitlab::Database::SharedModel(abstract)4844 is expected to contain exactly ActiveRecord::StatementTimeout, ActiveRecord::ConnectionTimeoutError, ActiveRecord::AdapterTimeout, ActiveRecord::LockWaitTimeout, and ActiveRecord::QueryCanceled4845 associations4846 is expected to belong to batched_migration required: false4847 is expected to have many batched_job_transition_logs4848 state machine4849 is expected to eql :pending, :running, :failed, and :succeeded4850 when a job is running4851 logs the transition4852 when a job succeed4853 logs the transition4854 updates the finished_at4855 creates a new transition log4856 when a job fails the number of max times4857 when job can be split4858 splits the job into two retriable jobs4859 when the job cannot be split4860 does not split the job4861 keeps the same job attributes4862 logs the error4863 when a job fails4864 logs the transition4865 tracks the exception4866 updates the finished_at4867 creates a new transition log4868 scopes4869 .except_succeeded4870 returns not succeeded jobs4871 .active4872 returns active jobs4873 .stuck4874 returns stuck jobs4875 .retriable4876 returns retriable jobs4877 .created_since4878 returns jobs since a given time4879 .blocked_by_max_attempts4880 returns blocked jobs4881 delegated batched_migration attributes4882 #migration_job_class4883 returns the migration job_class4884 #migration_table_name4885 returns the migration table_name4886 #migration_column_name4887 returns the migration column_name4888 #migration_job_arguments4889 returns the migration job_arguments4890 #migration_job_class_name4891 returns the migration job_class_name4892 #can_split?4893 when the number of attempts is greater than the limit and the batch_size is greater than the sub_batch_size4894 when is a timeout exception4895 is expected to be truthy4896 when is a QueryCanceled exception4897 is expected to be truthy4898 when is not a timeout exception4899 is expected to be falsey4900 when the number of attempts is lower than the limit and the batch_size is greater than the sub_batch_size4901 when is a timeout exception4902 is expected to be falsey4903 when is not a timeout exception4904 is expected to be falsey4905 when the batch_size is lower than the sub_batch_size4906 is expected to be falsey4907 when the batch_size is 14908 is expected to be falsey4909 #time_efficiency4910 when job has not yet succeeded4911 returns nil4912 when finished_at is not set4913 returns nil4914 when started_at is not set4915 returns nil4916 when job has finished4917 returns ratio of duration to interval, here: 0.54918 returns ratio of duration to interval, here: 14919 #split_and_retry!4920 when job can be split4921 sets the correct attributes4922 splits the jobs into retriable jobs4923 when job is not failed4924 raises an exception4925 when batch size is already 14926DEPRECATION WARNING: Using `return`, `break` or `throw` to exit a transaction block is4927deprecated without replacement. If the `throw` came from4928`Timeout.timeout(duration)`, pass an exception class as a second4929argument so it doesn't use `throw` to abort its block. This results4930in the transaction being committed, but in the next release of Rails4931it will rollback.4932 (called from block in write_using_load_balancer at /builds/gitlab-org/gitlab/lib/gitlab/database/load_balancing/connection_proxy.rb:120)4933 keeps the same batch size4934DEPRECATION WARNING: Using `return`, `break` or `throw` to exit a transaction block is4935deprecated without replacement. If the `throw` came from4936`Timeout.timeout(duration)`, pass an exception class as a second4937argument so it doesn't use `throw` to abort its block. This results4938in the transaction being committed, but in the next release of Rails4939it will rollback.4940 (called from block in write_using_load_balancer at /builds/gitlab-org/gitlab/lib/gitlab/database/load_balancing/connection_proxy.rb:120)4941 resets the number of attempts4942 when computed midpoint is larger than the max value of the batch4943 lowers the batch size and resets the number of attempts4944IncidentManagement::ProcessAlertWorkerV24945 # order random4946 #perform4947 with valid alert4948 behaves like creates issue successfully4949 creates an issue4950 updates AlertManagement::Alert#issue_id4951 does not write a warning to log4952 behaves like an idempotent worker4953 is labeled as idempotent4954 performs multiple times sequentially without raising an exception4955 does not create a second issue4956 when alert cannot be updated4957 updates AlertManagement::Alert#issue_id4958 logs a warning4959 prometheus alert4960 behaves like creates issue successfully4961 creates an issue4962 updates AlertManagement::Alert#issue_id4963 does not write a warning to log4964 behaves like an idempotent worker4965 is labeled as idempotent4966 performs multiple times sequentially without raising an exception4967 does not create a second issue4968 with invalid alert4969 does not create issues4970Gitlab::Logger4971 .build4972 builds logger using Gitlab::Logger.log_level4973 raises ArgumentError if invalid log level4974 env_value: 0, resulting_level: 04975 builds logger if valid log level4976 env_value: :debug, resulting_level: 04977 builds logger if valid log level4978 env_value: "debug", resulting_level: 04979 builds logger if valid log level4980 env_value: "DEBUG", resulting_level: 04981 builds logger if valid log level4982 env_value: "DeBuG", resulting_level: 04983 builds logger if valid log level4984 env_value: 1, resulting_level: 14985 builds logger if valid log level4986 env_value: :info, resulting_level: 14987 builds logger if valid log level4988 env_value: "info", resulting_level: 14989 builds logger if valid log level4990 env_value: "INFO", resulting_level: 14991 builds logger if valid log level4992 env_value: "InFo", resulting_level: 14993 builds logger if valid log level4994 env_value: 2, resulting_level: 24995 builds logger if valid log level4996 env_value: :warn, resulting_level: 24997 builds logger if valid log level4998 env_value: "warn", resulting_level: 24999 builds logger if valid log level5000 env_value: "WARN", resulting_level: 25001 builds logger if valid log level5002 env_value: "WaRn", resulting_level: 25003 builds logger if valid log level5004 env_value: 3, resulting_level: 35005 builds logger if valid log level5006 env_value: :error, resulting_level: 35007 builds logger if valid log level5008 env_value: "error", resulting_level: 35009 builds logger if valid log level5010 env_value: "ERROR", resulting_level: 35011 builds logger if valid log level5012 env_value: "ErRoR", resulting_level: 35013 builds logger if valid log level5014 env_value: 4, resulting_level: 45015 builds logger if valid log level5016 env_value: :fatal, resulting_level: 45017 builds logger if valid log level5018 env_value: "fatal", resulting_level: 45019 builds logger if valid log level5020 env_value: "FATAL", resulting_level: 45021 builds logger if valid log level5022 env_value: "FaTaL", resulting_level: 45023 builds logger if valid log level5024 env_value: 5, resulting_level: 55025 builds logger if valid log level5026 env_value: :unknown, resulting_level: 55027 builds logger if valid log level5028 env_value: "unknown", resulting_level: 55029 builds logger if valid log level5030 env_value: "UNKNOWN", resulting_level: 55031 builds logger if valid log level5032 env_value: "UnKnOwN", resulting_level: 55033 builds logger if valid log level5034 .log_level5035 if GITLAB_LOG_LEVEL is set5036 returns value of GITLAB_LOG_LEVEL5037 ignores fallback5038 if GITLAB_LOG_LEVEL is not set5039 returns default fallback DEBUG5040 returns passed fallback5041IconsHelper5042 sprite_icon_path5043 returns relative path5044 only calls image_path once when called multiple times5045 when an asset_host is set in the config it will return an absolute local URL5046 returns an absolute URL on that asset host5047 sprite_icon5048 returns svg icon html with DEFAULT_ICON_SIZE5049 returns svg icon html without size class5050 returns svg icon html + size classes5051 returns svg icon html + size classes + additional class5052 non existing icon5053 raises in development mode5054 raises in test mode5055 does not raise in production mode5056 audit icon5057 returns right icon name for standard auth5058 returns right icon name for two-factor auth5059 returns right icon name for google_oauth2 auth5060 file_type_icon_class5061 returns folder-o class5062 returns share class5063 returns document class with .pdf5064 returns doc-image class with .jpg5065 returns doc-image class with .JPG5066 returns doc-image class with .png5067 returns doc-image class with .apng5068 returns doc-image class with .webp5069 returns doc-compressed class with .tar5070 returns doc-compressed class with .TAR5071 returns doc-compressed class with .tar.gz5072 returns volume-up class with .mp35073 returns volume-up class with .MP35074 returns volume-up class with .m4a5075 returns volume-up class with .wav5076 returns live-preview class with .avi5077 returns live-preview class with .AVI5078 returns live-preview class with .mp45079 returns doc-text class with .odt5080 returns doc-text class with .doc5081 returns doc-text class with .DOC5082 returns doc-text class with .docx5083 returns document class with .xls5084 returns document class with .XLS5085 returns document class with .xlsx5086 returns doc-chart class with .odp5087 returns doc-chart class with .ppt5088 returns doc-chart class with .PPT5089 returns doc-chart class with .pptx5090 returns doc-text class with .unknow5091 returns doc-text class with no extension5092 #external_snippet_icon5093 returns external snippet icon5094 gl_loading_icon5095 returns the default spinner markup5096 when css_class is provided5097 appends css_class to container element5098 when size is provided5099 sets the size class5100 when color is provided5101 sets the color class5102 when inline is true5103 creates an inline container5104Gitlab::Ci::Config::Entry::Bridge5105 behaves like with inheritable CI config5106 does prepend an Inheritable mixin5107 all inheritable entries are covered5108 all entries do have inherit flag5109 for non-inheritable entries5110 entry_key: :stage5111 inheritable_class does not define entry5112 entry_key: :only5113 inheritable_class does not define entry5114 entry_key: :except5115 inheritable_class does not define entry5116 entry_key: :rules5117 inheritable_class does not define entry5118 entry_key: :variables5119 inheritable_class does not define entry5120 entry_key: :inherit5121 inheritable_class does not define entry5122 entry_key: :trigger5123 inheritable_class does not define entry5124 entry_key: :needs5125 inheritable_class does not define entry5126 entry_key: :parallel5127 inheritable_class does not define entry5128 .matching?5129 when config is not a hash5130 is expected to be falsey5131 when config is a regular job5132 is expected to be falsey5133 with rules5134 is expected to be falsey5135 when config is a bridge job5136 is expected to be truthy5137 with rules5138 is expected to be truthy5139 when config is a hidden job5140 is expected to be falsey5141 .new5142 when trigger config is a non-empty string5143 #valid?5144 is expected to be valid5145 #value5146 is returns a bridge job configuration5147 when bridge trigger is a hash5148 #valid?5149 is expected to be valid5150 #value5151 is returns a bridge job configuration hash5152 when bridge configuration contains trigger, when, extends, stage, only, except, and variables5153 is expected to be valid5154 when bridge configuration uses rules5155 is expected to be valid5156 when bridge configuration uses rules with job:when5157 is expected to be valid5158 when bridge configuration uses rules with only5159 is expected not to be valid5160 when bridge configuration uses rules with except5161 is expected not to be valid5162 when bridge has only job needs5163 #valid?5164 is expected not to be valid5165 when bridge config contains unknown keys5166 #valid?5167 is expected not to be valid5168 #errors5169 is returns an error about unknown config key5170 when bridge config contains build-specific attributes5171 #valid?5172 is expected not to be valid5173 #errors5174 returns an error message5175 when bridge config contains exit_codes5176 #valid?5177 is expected not to be valid5178 #errors5179 returns an error message5180 when bridge config contains parallel5181 when parallel config is a number5182 #valid?5183 is expected not to be valid5184 #errors5185 returns an error message5186 when parallel config is a matrix5187 #valid?5188 is expected to be valid5189 #value5190 is returns a bridge job configuration5191 when bridge trigger contains forward5192 #valid?5193 is expected to be valid5194 #value5195 returns a bridge job configuration hash5196 #manual_action?5197 when job is a manual action5198 is expected to be manual action5199 when job is not a manual action5200 is expected not to be manual action5201 #ignored?5202 when job is a manual action5203 when it is not specified if job is allowed to fail5204 is expected to be ignored5205 when job is allowed to fail5206 is expected to be ignored5207 when job is not allowed to fail5208 is expected not to be ignored5209 when job is not a manual action5210 when it is not specified if job is allowed to fail5211 is expected not to be ignored5212 when job is allowed to fail5213 is expected to be ignored5214 when job is not allowed to fail5215 is expected not to be ignored5216 #when5217 when bridge is a manual action5218 is expected to eq "manual"5219 when bridge has no `when` attribute5220 is expected to be nil5221 when the `when` keyword is not a string5222 when it is an array5223 returns error5224 when it is a boolean5225 returns error5226ActiveHookFilter5227 #matches?5228 for various types of branch_filter5229 branch_filter_strategy: "all_branches", branch_filter: "master", ref: "refs/heads/master", expected_matches?: true5230 is expected to equal true5231 is expected to equal true5232 branch_filter_strategy: "all_branches", branch_filter: "", ref: "refs/heads/master", expected_matches?: true5233 is expected to equal true5234 is expected to equal true5235 branch_filter_strategy: "all_branches", branch_filter: nil, ref: "refs/heads/master", expected_matches?: true5236 is expected to equal true5237 is expected to equal true5238 branch_filter_strategy: "all_branches", branch_filter: ".*", ref: "refs/heads/master", expected_matches?: true5239 is expected to equal true5240 is expected to equal true5241 branch_filter_strategy: "wildcard", branch_filter: "master", ref: "refs/heads/master", expected_matches?: true5242 is expected to equal true5243 is expected to equal true5244 branch_filter_strategy: "wildcard", branch_filter: "master", ref: "refs/heads/my_branch", expected_matches?: false5245 is expected to equal false5246 is expected to equal true5247 branch_filter_strategy: "wildcard", branch_filter: "features/*", ref: "refs/heads/features/my-branch", expected_matches?: true5248 is expected to equal true5249 is expected to equal true5250 branch_filter_strategy: "wildcard", branch_filter: "features/*", ref: "refs/heads/features/my-branch/something", expected_matches?: true5251 is expected to equal true5252 is expected to equal true5253 branch_filter_strategy: "wildcard", branch_filter: "features/*", ref: "refs/heads/master", expected_matches?: false5254 is expected to equal false5255 is expected to equal true5256 branch_filter_strategy: "wildcard", branch_filter: nil, ref: "refs/heads/master", expected_matches?: true5257 is expected to equal true5258 is expected to equal true5259 branch_filter_strategy: "wildcard", branch_filter: "", ref: "refs/heads/master", expected_matches?: true5260 is expected to equal true5261 is expected to equal true5262 branch_filter_strategy: "regex", branch_filter: "master", ref: "refs/heads/master", expected_matches?: true5263 is expected to equal true5264 is expected to equal true5265 branch_filter_strategy: "regex", branch_filter: "master", ref: "refs/heads/my_branch", expected_matches?: false5266 is expected to equal false5267 is expected to equal true5268 branch_filter_strategy: "regex", branch_filter: "features/*", ref: "refs/heads/xxxx/features/my-branch", expected_matches?: true5269 is expected to equal true5270 is expected to equal true5271 branch_filter_strategy: "regex", branch_filter: "features/*", ref: "refs/heads/features/", expected_matches?: true5272 is expected to equal true5273 is expected to equal true5274 branch_filter_strategy: "regex", branch_filter: "features/*", ref: "refs/heads/features", expected_matches?: true5275 is expected to equal true5276 is expected to equal true5277 branch_filter_strategy: "regex", branch_filter: "features/.*", ref: "refs/heads/features/my-branch", expected_matches?: true5278 is expected to equal true5279 is expected to equal true5280 branch_filter_strategy: "regex", branch_filter: "features/.*", ref: "refs/heads/features/my-branch/something", expected_matches?: true5281 is expected to equal true5282 is expected to equal true5283 branch_filter_strategy: "regex", branch_filter: "features/.*", ref: "refs/heads/master", expected_matches?: false5284 is expected to equal false5285 is expected to equal true5286 branch_filter_strategy: "regex", branch_filter: "(feature|dev)", ref: "refs/heads/feature", expected_matches?: true5287 is expected to equal true5288 is expected to equal true5289 branch_filter_strategy: "regex", branch_filter: "(feature|dev)", ref: "refs/heads/dev", expected_matches?: true5290 is expected to equal true5291 is expected to equal true5292 branch_filter_strategy: "regex", branch_filter: "(feature|dev)", ref: "refs/heads/master", expected_matches?: false5293 is expected to equal false5294 is expected to equal true5295 branch_filter_strategy: "regex", branch_filter: nil, ref: "refs/heads/master", expected_matches?: true5296 is expected to equal true5297 is expected to equal true5298 branch_filter_strategy: "regex", branch_filter: "", ref: "refs/heads/master", expected_matches?: true5299 is expected to equal true5300 is expected to equal true5301 when the branch filter is a invalid regex5302 is expected to equal false5303 when the branch filter is not properly set to nil5304 is expected to equal true5305Gitlab::TemplateParser::AST::Identifier5306 #evaluate5307 evaluates a selector5308 returns nil if the key is not set5309 returns nil if the input is not a Hash5310 returns the current data when using the special identifier "it"5311Gitlab::TemplateParser::AST::Integer5312 #evaluate5313 evaluates a selector5314 returns nil if the index is not set5315 returns nil if the input is not an Array5316Gitlab::TemplateParser::AST::Selector5317 #evaluate5318 evaluates a selector5319 evaluates a selector that returns nil5320Gitlab::TemplateParser::AST::Variable5321 #evaluate5322 evaluates a variable5323 evaluates an undefined variable5324 evaluates the special variable "it"5325Gitlab::TemplateParser::AST::Expressions5326 #evaluate5327 evaluates all expressions5328Gitlab::TemplateParser::AST::Text5329 #evaluate5330 returns the text5331Gitlab::TemplateParser::AST::If5332 #evaluate5333 evaluates a truthy if expression without an else clause5334 evaluates a falsy if expression without an else clause5335 evaluates a falsy if expression with an else clause5336 #truthy?5337 returns true for a non-empty String5338 returns true for a non-empty Array5339 returns true for a Boolean true5340 returns false for an empty String5341 returns true for an empty Array5342 returns false for a Boolean false5343Gitlab::TemplateParser::AST::Each5344 #evaluate5345 evaluates the expression5346 returns an empty string when the input is not a collection5347 disallows too many nested loops5348AwardEmojis::DestroyService5349 #execute5350 when user is not authorized5351 behaves like a service that does not authorize the user5352 does not remove the emoji5353 returns an error state5354 returns a nil award5355 returns the error5356 when the user is authorized5357 when user has not awarded an emoji to the awardable5358 behaves like a service that does not authorize the user5359 does not remove the emoji5360 returns an error state5361 returns a nil award5362 returns the error5363 when user has awarded an emoji to the awardable5364 removes the emoji5365 returns a success status5366 returns no errors5367 returns the destroyed award5368IssueLinks::CreateService5369 #execute5370 behaves like issuable link creation5371 #execute5372 when the reference list is empty5373 returns error5374 when Issuable not found5375 returns error5376 no relationship is created5377 when user has no permission to target issuable5378 returns error5379 no relationship is created5380 source and target are the same issuable5381 does not create notes5382 no relationship is created5383 when there is an issuable to relate5384 creates relationships5385 returns success status and created links5386 creates notes5387 when reference of any already related issue is present5388 creates notes only for new relations5389 when there are invalid references5390 creates links only for valid references5391 returns error status5392 when target is an incident5393 behaves like an incident management tracked event5394 .track_event5395 tracks the event using redis5396PersonalSnippet5397 #embeddable?5398 returns true when snippet is public5399 returns true when snippet is public5400 returns true when snippet is public5401 behaves like model with repository5402 container class includes HasRepository5403 #commits_by5404 retrieves several commits from the repository by oid5405 #web_url5406 when given the only_path option5407 when only_path is false5408 returns the full web URL for this repo5409 when only_path is true5410 returns the relative web URL for this repo5411 when only_path is nil5412 returns the full web URL for this repo5413 when not given the only_path option5414 returns the full web URL for this repo5415 #url_to_repo5416 returns the SSH URL to the repository5417 #ssh_url_to_repo5418 returns the SSH URL to the repository5419 #http_url_to_repo5420 returns the HTTP URL to the repository5421 #repository5422 returns valid repo5423 uses the same container5424 #storage5425 returns valid storage5426 #full_path5427 returns valid full_path5428 #lfs_enabled?5429 returns the expected value5430 #empty_repo?5431 when the repo does not exist5432 returns true5433 when the repo exists5434 returns the empty state of the repository5435 #valid_repo?5436 is expected to equal false5437 is expected to equal true5438 #repository_exists?5439 is expected to equal false5440 is expected to equal true5441 #repo_exists?5442 is expected to equal false5443 is expected to equal true5444 #root_ref5445 is expected to equal true5446 is expected to equal false5447 is expected to equal false5448 Respond to5449 is expected to respond to #base_dir5450 is expected to respond to #disk_path5451 is expected to respond to #gitlab_shell5452 #change_head5453 delegates #change_head to repository5454 #after_repository_change_head5455 calls #reload_default_branch5456 #parent_user5457 returns the snippet author5458Ci::Lint::ResultSerializer5459 when config is invalid5460 returns expected validity5461 returns job data5462 behaves like matches schema5463 is expected to match schema "entities/lint_result_entity"5464 when config is valid5465 returns expected validity5466 returns job data5467 behaves like matches schema5468 is expected to match schema "entities/lint_result_entity"5469 when dry run is enabled5470 returns expected validity5471 returns job data5472 behaves like matches schema5473 is expected to match schema "entities/lint_result_entity"5474 when only is not nil in the yaml5475 when only: is hash5476 renders only:refs as hash5477 behaves like matches schema5478 is expected to match schema "entities/lint_result_entity"5479 when only is an array of strings in the yaml5480 renders only: list as hash5481 behaves like matches schema5482 is expected to match schema "entities/lint_result_entity"5483 when except is not nil in the yaml5484 when except: is hash5485 renders except as hash5486 behaves like matches schema5487 is expected to match schema "entities/lint_result_entity"5488 when except is an array of strings in the yaml5489 renders only: list as hash5490 behaves like matches schema5491 is expected to match schema "entities/lint_result_entity"5492 with minimal job configuration5493 renders the job with defaults5494 behaves like matches schema5495 is expected to match schema "entities/lint_result_entity"5496 with environment defined5497 when formatted as a hash in yaml5498 renders the environment as a string5499 behaves like matches schema5500 is expected to match schema "entities/lint_result_entity"5501 when formatted as a string in yaml5502 renders the environment as a string5503 behaves like matches schema5504 is expected to match schema "entities/lint_result_entity"5505 when script values are formatted as arrays in the yaml5506 renders the scripts as arrays5507 behaves like matches schema5508 is expected to match schema "entities/lint_result_entity"5509Packages::Conan::FileMetadatum5510 relationships5511 is expected to belong to package_file required: false5512 validations5513 is expected to validate that :package_file cannot be empty/falsy5514 is expected to validate that :recipe_revision cannot be empty/falsy5515 #recipe_revision5516 is expected to allow :recipe_revision to be ‹"0"›5517 is expected not to allow :recipe_revision to be ‹nil›5518 #package_revision_for_package_file5519 recipe file5520 is valid with empty value5521 is invalid with value5522 package file5523 is valid with default value5524 is invalid with non-default value5525 #conan_package_reference_for_package_file5526 recipe file5527 is valid with empty value5528 is invalid with value5529 package file5530 is valid with acceptable value5531 is invalid with invalid value5532 is invalid when nil5533 #conan_package_type5534 validates package of type conan5535Load balancer behavior with errors inside a transaction5536 with the PREVENT_LOAD_BALANCER_RETRIES_IN_TRANSACTION environment variable not set5537WARNING: there is no transaction in progress5538 logs a warning when violating transaction semantics with writes5539 does not log a warning when no transaction is open to be leaked5540 with the PREVENT_LOAD_BALANCER_RETRIES_IN_TRANSACTION environment variable set5541 raises an exception when a retry would occur during a transaction5542 retries when not in a transaction5543Gitlab::DataBuilder::Deployment5544 .build5545 returns the object kind for a deployment5546 returns data for the given build5547 does not include the deployable URL when there is no deployable5548 when commit does not exist in the repository5549 returns nil for commit_url5550 returns nil for commit_title5551 when deployed_by is nil5552 returns nil for user5553 returns nil for user_url5554WorkItems::CreateFromTaskService5555 #execute5556 when work item params are valid5557 is expected to be success5558 creates a work item and creates parent link to the original work item5559 replaces the original issue markdown description with new work item reference5560 behaves like title with extra spaces5561 when title has extra spaces5562 removes extra leading and trailing whitespaces from title5563 when last operation fails5564 rollbacks all operations5565 is expected to be error5566 returns an error message5567 when work item params are invalid5568 returns work item errors5569 behaves like CreateFromTask service with invalid params5570 is expected to be error5571 does not create a work item or links5572Gitlab::PerformanceBar5573 is expected to eq #<ActiveSupport::Cache::MemoryStore entries=0, size=0, options={:compress=>false}>5574 is expected to eq <ActiveSupport::Cache::NullStore>5575 .allowed_for_user?5576 returns false when given user is nil5577 returns true when given user is an admin5578 returns false when allowed_group_id is nil5579 when allowed group ID does not exist5580 returns false5581 when allowed group exists5582 when user is not a member of the allowed group5583 returns false5584 caching of allowed user IDs5585 behaves like allowed user IDs are cached5586 caches the allowed user IDs in cache5587 caches the allowed user IDs in L1 cache for 1 minute5588 caches the allowed user IDs in L2 cache for 5 minutes5589 when user is a member of the allowed group5590 returns true5591 caching of allowed user IDs5592 behaves like allowed user IDs are cached5593 caches the allowed user IDs in cache5594 caches the allowed user IDs in L1 cache for 1 minute5595 caches the allowed user IDs in L2 cache for 5 minutes5596 when allowed group is nested5597 returns the nested group5598 when a nested group has the same path5599 returns false5600Gitlab::ManifestImport::ProjectCreator5601 #execute5602 is expected to be a kind of Project(id: integer, name: string, path: string, description: text, created_at: datetime, updated_at:..._issues: boolean, suggestion_commit_message: string, project_namespace_id: integer, hidden: boolean)5603 is expected to change `Project.count` by 15604 is expected to change `Group.count` by 15605 creates project with valid full path, import url and import source5606Clusters::AgentTokens::CreateService5607 #execute5608 does not create a new token due to user permissions5609 returns permission errors5610 with user permissions5611 creates a new token5612 returns success status5613 returns token information5614 creates an activity event5615 when params are invalid5616 does not create a new token5617 does not create an activity event5618 returns validation errors5619ServicePing::SubmitService5620 when usage ping is disabled5621 behaves like does not run5622 is expected not to receive post(*(any args)) 0 times5623 when usage ping is disabled from GitLab config file5624 behaves like does not run5625 is expected not to receive post(*(any args)) 0 times5626 when product_intelligence_enabled is false5627 behaves like does not run5628 is expected not to receive post(*(any args)) 0 times5629 when product_intelligence_enabled is true5630 submits a service ping payload without errors5631 when usage ping is enabled5632 sends a POST request5633 and user requires usage stats consent5634 behaves like does not run5635 is expected not to receive post(*(any args)) 0 times5636 when conv_index data is passed5637 saves usage_data_id to version_usage_data_id_value5638 behaves like saves DevOps report data from the response5639 is expected to eq 31.375640 when only usage_data_id is passed in response5641 does not save DevOps report data5642 saves usage_data_id to version_usage_data_id_value5643 when version app usage_data_id is invalid5644 raises an exception5645 when DevOps report data is passed5646 behaves like saves DevOps report data from the response5647 is expected to eq 31.375648 with saving raw_usage_data5649 creates a raw_usage_data record5650 saves the correct payload5651 and usage ping response has unsuccessful status5652 raises an exception5653 and usage data is empty string5654 behaves like does not send a blank usage ping payload5655 is expected to raise ServicePing::SubmitService::SubmissionError5656 and usage data is nil5657 behaves like does not send a blank usage ping payload5658 is expected to raise ServicePing::SubmitService::SubmissionError5659 if version app response fails5660 raises SubmissionError5661 when skip_db_write passed to service5662 does not save RawUsageData5663 does not call DevOpsReport service5664 metadata reporting5665 submits metadata5666TagsFinder5667 #execute5668 sort only5669 sorts by name5670 sorts by recently_updated5671 sorts by last_updated5672 when sort is not a string5673 ignores sort parameter5674 filter only5675 filters tags by name5676 does not find any tags with that name5677 filters tags by name that begins with5678 filters tags by name that ends with5679 filters tags by name with wildcard5680 filters tags by nonexistent name that begins with5681 filters tags by nonexistent name that ends with5682 filters tags by nonexistent name with wildcard5683 when search is not a string5684 returns no matches5685 filter and sort5686 when sort by updated_desc5687 filters tags by name5688 when sort by updated_asc5689 filters tags by name5690 with Gitaly pagination5691 by page_token and per_page5692 filters tags5693 by next page_token and per_page5694 filters branches5695 by per_page only5696 filters branches5697 by page_token only5698 raises an error5699 pagination and sort5700 by per_page5701 filters branches5702 by page_token and per_page5703 filters branches5704 pagination and search5705 ignores the pagination for search5706 when Gitaly is unavailable5707 raises an exception5708Gitlab::Database::PostgresIndex5709 is expected to be a kind of Gitlab::Database::SharedModel(abstract)5710 behaves like a postgres model5711 .by_identifier5712 finds the Gitlab::Database::PostgresIndex5713 raises an error if not found5714 raises ArgumentError if given a non-fully qualified identifier5715 #to_s5716 returns the name5717 #schema5718 returns the schema5719 #name5720 returns the name5721 .reindexing_support5722 only non partitioned indexes5723 only indexes that dont serve an exclusion constraint5724 only non-expression indexes5725 only btree and gist indexes5726 with leftover indexes5727 excludes temporary indexes from reindexing5728 .reindexing_leftovers5729 retrieves leftover indexes matching the /_ccnew[0-9]*$/ pattern5730 .not_match5731 excludes indexes matching the given regex5732 matches indexes without this prefix regex5733 #bloat_size5734 returns the bloat size from the estimate5735 without a bloat estimate available5736 returns 05737 #relative_bloat_level5738 calculates the relative bloat level5739 #reset5740 calls #reload5741 resets the bloat estimation5742 #unique?5743 returns true for a unique index5744 returns false for a regular, non-unique index5745 returns true for a primary key index5746 #valid_index?5747 returns true if the index is invalid5748 returns false if the index is marked as invalid5749 #definition5750 returns the index definition5751Projects::Topic5752 is expected to be valid5753 modules5754 is expected to includes the Avatarable module5755 associations5756 is expected to have many project_topics5757 is expected to have many projects5758 validations5759 is expected to validate that :name cannot be empty/falsy5760 is expected to validate that :name is case-insensitively unique5761 is expected to validate that the length of :name is at most 2555762 is expected to validate that the length of :description is at most 10245763 is expected to validate that :title cannot be empty/falsy5764 is expected to validate that the length of :title is at most 2555765 scopes5766 without_assigned_projects5767 returns topics without assigned projects5768 order_by_non_private_projects_count5769 sorts topics by non_private_projects_count5770 reorder_by_similarity5771 sorts topics by similarity5772 #find_by_name_case_insensitive5773 returns topic with case insensitive name5774 #search5775 returns topics with a matching name5776 returns topics with a partially matching name5777 returns topics with a matching name regardless of the casing5778 #avatar_type5779 is true if avatar is image5780 is false if avatar is html page5781 #avatar_url5782 when avatar file is uploaded5783 shows correct avatar url5784 #title_or_name5785 returns title if set5786 returns name if title not set5787Gitlab::Ci::Config::Entry::Service5788 when configuration is a string5789 #valid?5790 is valid5791 #value5792 returns valid hash5793 #image5794 returns service's image name5795 #alias5796 returns service's alias5797 #command5798 returns service's command5799 #ports5800 returns service's ports5801 when configuration is a hash5802 #valid?5803 is valid5804 #value5805 returns valid hash5806 #image5807 returns service's image name5808 #alias5809 returns service's alias5810 #command5811 returns service's command5812 #entrypoint5813 returns service's entrypoint5814 #pull_policy5815 returns nil5816 when configuration has ports5817 when with_image_ports metadata is not enabled5818 #valid?5819 is not valid5820 when with_image_ports metadata is enabled5821 #valid?5822 is valid5823 when unknown port keys detected5824 is not valid5825 #ports5826 returns image's ports5827 when configuration has pull_policy5828 #valid?5829 is valid5830 #value5831 returns value5832 when entry value is not correct5833 #errors5834 saves errors5835 #valid?5836 is not valid5837 when unexpected key is specified5838 #errors5839 saves errors5840 #valid?5841 is not valid5842 when service has ports5843 alias field is mandatory5844 when service does not have ports5845 alias field is optional5846Gitlab::OptimisticLocking5847 #retry_lock5848 when state changed successfully without retries5849 does not reload object5850 does not create log record5851 adds number of retries to histogram5852 when at least one retry happened, the change succeeded5853 completes the action5854 creates a single log record5855 adds number of retries to histogram5856 when MAX_RETRIES attempts exceeded5857 raises an exception5858 creates a single log record5859 adds number of retries to histogram5860 #retry_optimistic_lock5861 when locking module is mixed in5862 is an alias for retry_lock5863Users::SetStatusService5864 #execute5865 when params are set5866 creates a status5867 updates a status if it already existed5868 returns true5869 behaves like bumps user5870 bumps User#updated_at5871 when setting availability to not_set5872 updates the availability5873 when the given availability value is not valid5874 does not update the status5875 for another user5876 does not update the status if the current user is not allowed5877 the current user is admin5878 changes the status when the current user is allowed to do that5879 behaves like does not bump user5880 does not bump User#updated_at5881 without params5882 when user has existing user status record5883 behaves like removes user status record5884 deletes the user status record5885 behaves like bumps user5886 bumps User#updated_at5887 when not_set is given for availability5888 behaves like removes user status record5889 deletes the user status record5890 behaves like bumps user5891 bumps User#updated_at5892 when user has no existing user status record5893 behaves like does not bump user5894 does not bump User#updated_at5895Gitlab::Middleware::Multipart5896 #call5897 remote file mode5898 behaves like handling all upload parameters conditions5899 one root parameter5900 builds an UploadedFile5901 two root parameters5902 builds UploadedFiles5903 one nested parameter5904 builds an UploadedFile5905 two nested parameters5906 builds UploadedFiles5907 one deeply nested parameter5908 builds an UploadedFile5909 two deeply nested parameters5910 builds UploadedFiles5911 three parameters nested at different levels5912 builds UploadedFiles5913 and a path set5914 builds an UploadedFile5915 local file mode5916 behaves like handling all upload parameters conditions5917 one root parameter5918 builds an UploadedFile5919 two root parameters5920 builds UploadedFiles5921 one nested parameter5922 builds an UploadedFile5923 two nested parameters5924 builds UploadedFiles5925 one deeply nested parameter5926 builds an UploadedFile5927 two deeply nested parameters5928 builds UploadedFiles5929 three parameters nested at different levels5930 builds UploadedFiles5931 when file is5932 in allowed paths5933 builds an UploadedFile5934 not in allowed paths5935 returns an error5936 with dummy params in remote mode5937 with an invalid secret5938 is expected to raise JWT::VerificationError5939 with an invalid issuer5940 is expected to raise JWT::InvalidIssuerError5941 with invalid rewritten field key5942 [file]5943 is expected to raise RuntimeError with "invalid field: \"[file]\""5944 ;file5945 is expected to raise RuntimeError with "invalid field: \";file\""5946 file]5947 is expected to raise RuntimeError with "invalid field: \"file]\""5948 ;file]5949 is expected to raise RuntimeError with "invalid field: \";file]\""5950 file]]5951 is expected to raise RuntimeError with "invalid field: \"file]]\""5952 file;;5953 is expected to raise RuntimeError with "invalid field: \"file;;\""5954 with an invalid upload key5955 behaves like rejecting the invalid key5956 raises an error5957 behaves like rejecting the invalid key5958 raises an error5959 behaves like rejecting the invalid key5960 raises an error5961 behaves like rejecting the invalid key5962 raises an error5963 behaves like rejecting the invalid key5964 raises an error5965 behaves like rejecting the invalid key5966 raises an error5967 behaves like rejecting the invalid key5968 raises an error5969 with a modified JWT payload5970 raises an error5971 with a modified JWT sig5972 raises an error5973LfsFileLock5974 is expected to belong to project required: false5975 is expected to belong to user required: false5976 is expected to validate that :project_id cannot be empty/falsy5977 is expected to validate that :user_id cannot be empty/falsy5978 is expected to validate that :path cannot be empty/falsy5979 #can_be_unlocked_by?5980 when it's forced5981 can be unlocked by the author5982 can be unlocked by a maintainer5983 can't be unlocked by other user5984 when it isn't forced5985 can be unlocked by the author5986 can't be unlocked by a maintainer5987 can't be unlocked by other user5988Gitlab::Database::LoadBalancing::ConnectionProxy5989 #select5990 performs a read5991 #select_all5992 method signatures match5993 using a SELECT query5994 runs the query on a secondary5995 using a SELECT FOR UPDATE query5996 runs the query on the primary and sticks to it5997 sanitize_limit5998 runs the query on the replica5999 select6000 runs the query on the replica6001 select_one6002 runs the query on the replica6003 select_rows6004 runs the query on the replica6005 quote_column_name6006 runs the query on the replica6007 delete6008 runs the query on the primary and sticks to it6009 delete_all6010 runs the query on the primary and sticks to it6011 insert6012 runs the query on the primary and sticks to it6013 update6014 runs the query on the primary and sticks to it6015 update_all6016 runs the query on the primary and sticks to it6017 exec_insert_all6018 runs the query on the primary and sticks to it6019 methods using exec_insert_all on the connection6020 #upsert6021-- create_table(:_test_connection_proxy_insert_all, {:force=>true})6022 -> 0.0089s6023-- drop_table(:_test_connection_proxy_insert_all, {:force=>true})6024 -> 0.0030s6025 upserts a record and marks the session to stick to the primary6026 #insert_all!6027-- create_table(:_test_connection_proxy_insert_all, {:force=>true})6028 -> 0.0075s6029-- drop_table(:_test_connection_proxy_insert_all, {:force=>true})6030 -> 0.0027s6031 inserts multiple records and marks the session to stick to the primary6032 #insert6033-- create_table(:_test_connection_proxy_insert_all, {:force=>true})6034 -> 0.0072s6035-- drop_table(:_test_connection_proxy_insert_all, {:force=>true})6036 -> 0.0026s6037 inserts a single record and marks the session to stick to the primary6038 #transaction6039 session fallbacks ambiguous queries to replicas6040 with a read query6041 runs the transaction and any nested queries on the replica6042 with a write query6043 raises an exception6044 session does not fallback to replicas for ambiguous queries6045 with a read query6046 runs the transaction and any nested queries on the primary and stick to it6047 with a write query6048 runs the transaction and any nested queries on the primary and stick to it6049 #method_missing6050 runs the query on the primary without sticking to it6051 properly forwards keyword arguments6052 current session prefers to fallback ambiguous queries to replicas6053 runs the query on the replica6054 properly forwards keyword arguments6055 #read_using_load_balancer6056 with a regular session6057 uses a secondary6058 with a regular session and forcing all reads to replicas6059 uses a secondary6060 with a session using the primary but forcing all reads to replicas6061 uses a secondary6062 with a session using the primary6063 uses the primary6064 #write_using_load_balancer6065 uses but does not stick to the primary6066Gitlab::HttpIO6067 #close6068 is expected to be nil6069 #binmode6070 is expected to be nil6071 #binmode?6072 is expected to be truthy6073 #path6074 is expected to be nil6075 #url6076 is expected to eq "http://object-storage/trace"6077 #seek6078 when moves pos to end of the file6079 is expected to eq 1924416080 when moves pos to middle of the file6081 is expected to eq 962206082 when moves pos around6083 matches the result6084 #eof?6085 when current pos is at end of the file6086 is expected to be truthy6087 when current pos is not at end of the file6088 is expected to be falsey6089 #each_line6090 yields lines6091 when buckets on GCS6092 when BUFFER_SIZE is larger than file size6093 calls get_chunk only once6094 #read6095 when there are no network issue6096 when read whole size6097 when BUFFER_SIZE is smaller than file size6098 reads a trace6099 when BUFFER_SIZE is larger than file size6100 reads a trace6101 when read only first 100 bytes6102 when BUFFER_SIZE is smaller than file size6103 reads a trace6104 when BUFFER_SIZE is larger than file size6105 reads a trace6106 when tries to read oversize6107 when BUFFER_SIZE is smaller than file size6108 reads a trace6109 when BUFFER_SIZE is larger than file size6110 reads a trace6111 when tries to read 0 bytes6112 when BUFFER_SIZE is smaller than file size6113 reads a trace6114 when BUFFER_SIZE is larger than file size6115 reads a trace6116 when there is anetwork issue6117 reads a trace6118 #readline6119 when there is anetwork issue6120 reads a trace6121 when BUFFER_SIZE is smaller than file size6122 behaves like all line matching6123 reads a line6124 when BUFFER_SIZE is larger than file size6125 behaves like all line matching6126 reads a line6127 when pos is at middle of the file6128 reads from pos6129 #write6130 is expected to raise NotImplementedError6131 #truncate6132 is expected to raise NotImplementedError6133 #flush6134 is expected to raise NotImplementedError6135 #present?6136 is expected to be truthy6137 #send6138 does not set the "accept-encoding" header6139Gitlab::SlashCommands::Presenters::IssueMove6140 is expected to be a kind of Hash6141 shows the new issue6142 mentions the old issue and the new issue in the pretext6143Gitlab::JiraImport::StuckJiraImportJobsWorker6144 with scheduled Jira import6145 behaves like stuck import job detection6146 when the job has completed6147 when the import status was already updated6148 does not mark the import as failed6149 when the import status was not updated6150 marks the import as failed6151 when the job is still in Sidekiq6152 does not mark the import as failed6153 with started jira import6154 behaves like stuck import job detection6155 when the job has completed6156 when the import status was already updated6157 does not mark the import as failed6158 when the import status was not updated6159 marks the import as failed6160 when the job is still in Sidekiq6161 does not mark the import as failed6162 with failed jira import6163 detects no stuck jobs6164Ci::DropPipelineWorker6165 #perform6166 calls delegates to the service6167 behaves like an idempotent worker6168 is labeled as idempotent6169 performs multiple times sequentially without raising an exception6170 executes the service6171Gitlab::Ci::Status::Stage::Common6172 does not have action6173 links to the pipeline details page6174 when user has permission to read pipeline6175 has details6176 when user does not have permission to read pipeline6177 does not have details6178Gitlab::JwtAuthenticatable6179 .secret6180 behaves like reading secret from the secret path6181 returns 32 bytes6182 accepts a trailing newline6183 raises an exception if the secret file cannot be read6184 raises an exception if the secret file contains the wrong number of bytes6185 .read_secret6186 behaves like reading secret from the secret path6187 returns 32 bytes6188 accepts a trailing newline6189 raises an exception if the secret file cannot be read6190 raises an exception if the secret file contains the wrong number of bytes6191 .write_secret6192 without an input6193 uses mode 06006194 writes base64 data6195 with an input6196 uses mode 06006197 writes base64 data6198 .decode_jwt6199 use included class secret6200 accepts a correct header6201 raises an error when the JWT is not signed6202 raises an error when the header is signed with the wrong secret6203 use an input secret6204 accepts a correct header6205 raises an error when the JWT is not signed6206 raises an error when the header is signed with the wrong secret6207 issuer option6208 returns decoded payload if issuer is correct6209 raises an error when the issuer is incorrect6210 iat_after option6211 returns decoded payload if iat is valid6212 raises an error if iat is invalid6213 raises an error if iat is absent6214 raises an error if iat is too far in the past6215Metrics::UsersStarredDashboardsFinder6216 #execute6217 there are no starred dashboard records6218 returns empty array6219 with annotation records6220 user without read access to project6221 returns empty relation6222 user with read access to project6223 loads starred dashboards6224 when the dashboard_path filter is present6225 loads filtered starred dashboards6226Gitlab::Diff::PositionTracer6227 #trace6228 position is on text6229 calls LineStrategy#trace6230 position is not on text6231 calls ImageStrategy#trace6232 diffs methods6233 #ac_diffs6234 returns the diffs between the base of old and new diff6235 #bd_diffs6236 returns the diffs between the HEAD of old and new diff6237 #cd_diffs6238 returns the diffs in the new diff6239Uploads::DestroyService6240 #execute6241 when user is nil6242 behaves like upload not found6243 does not delete any upload6244 returns an error6245 when user cannot destroy upload6246 behaves like upload not found6247 does not delete any upload6248 returns an error6249 when user can destroy upload6250 deletes the upload6251 returns success response6252 when upload is not found6253 behaves like upload not found6254 does not delete any upload6255 returns an error6256 when upload secret is not found6257 behaves like upload not found6258 does not delete any upload6259 returns an error6260 when upload secret has invalid format6261 behaves like upload not found6262 does not delete any upload6263 returns an error6264 when unknown model is used6265 raises an error6266 when upload belongs to other model6267 behaves like upload not found6268 does not delete any upload6269 returns an error6270 when upload destroy fails6271 returns error6272Gitlab::Tracking::StandardContext6273 #to_context6274 contains source6275 contains context_generated_at timestamp6276 contains user id6277 contains namespace and project ids6278 accepts just project id as integer6279 environment6280 development or test6281 contains environment6282 staging6283 contains environment6284 production6285 contains environment6286 org6287 contains environment6288 other self-managed instance6289 contains environment6290 plan6291 when namespace is not available6292 is nil6293 when namespace is available6294 contains plan name6295 with extra data6296 includes extra data in `extra` hash6297 without extra data6298 contains an empty `extra` hash6299 with incorrect argument type6300 does call `track_and_raise_for_dev_exception`6301Pajamas::AlertComponent6302 slots6303 renders alert body6304 renders actions6305 with defaults6306 does not set a title6307 renders the default variant6308 renders a dismiss button6309 title6310 with non-empty string6311 sets the title6312 with nil, empty or blank string6313 title: nil6314 does not set a title6315 title: ""6316 does not set a title6317 title: " "6318 does not set a title6319 with custom options6320 with simple options6321 sets the alert_class6322 sets the alert_data6323 with dismissible disabled6324 has the "not dismissible" class6325 does not render the dismiss button6326 with the icon hidden6327 has the hidden icon class6328 does not render the icon6329 with dismissible content6330 does not have "not dismissible" class6331 renders a dismiss button and data6332 with setting variant type6333 variant: :warning6334 renders the variant6335 variant: "success"6336 renders the variant6337 variant: :danger6338 renders the variant6339 variant: "tip"6340 renders the variant6341 with unknown or nil variant6342 variant: :foo6343 adds the default variant class6344 variant: nil6345 adds the default variant class6346projects/merge_requests/_commits.html.haml6347 shows commits from source project6348 shows signature verification badge6349Gitlab::Ci::Config::Entry::Include::Rules::Rule6350 .new6351 when specifying an if: clause6352 is expected to be valid6353 when specifying an exists: clause6354 is expected to be valid6355 using a list of multiple expressions6356 behaves like an invalid config6357 is expected not to be valid6358 has errors6359 when specifying an invalid if: clause expression6360 behaves like an invalid config6361 is expected not to be valid6362 has errors6363 when specifying an if: clause expression with an invalid token6364 behaves like an invalid config6365 is expected not to be valid6366 has errors6367 when using invalid regex in an if: clause6368 behaves like an invalid config6369 is expected not to be valid6370 has errors6371 when using an if: clause with lookahead regex character "?"6372 behaves like an invalid config6373 is expected not to be valid6374 has errors6375 when specifying unknown policy6376 behaves like an invalid config6377 is expected not to be valid6378 has errors6379 when clause is empty6380 behaves like an invalid config6381 is expected not to be valid6382 has errors6383 when policy strategy does not match6384 behaves like an invalid config6385 is expected not to be valid6386 has errors6387 #value6388 when specifying an if: clause6389 returns the config6390 when specifying an exists: clause6391 returns the config6392SentryIssueFinder6393 #execute6394 when the user is not part of the project6395 is expected to be nil6396 when the user is a project developer6397 is expected to eq #<SentryIssue id: 2, issue_id: 101, sentry_issue_identifier: 10000002>6398 when identifier is incorrect6399 is expected to be nil6400 when accessing another projects identifier6401 is expected to be nil6402seed production settings6403 GITLAB_SHARED_RUNNERS_REGISTRATION_TOKEN is set in the environment6404Saved Runner Registration Token6405Saved CI JWT signing key6406 writes the token to the database6407 GITLAB_PROMETHEUS_METRICS_ENABLED is set in the environment6408 GITLAB_PROMETHEUS_METRICS_ENABLED is true6409Saved Prometheus metrics enabled flag6410Saved CI JWT signing key6411 prometheus_metrics_enabled is set to true6412 GITLAB_PROMETHEUS_METRICS_ENABLED is false6413Saved Prometheus metrics enabled flag6414Saved CI JWT signing key6415 prometheus_metrics_enabled is set to false6416 GITLAB_PROMETHEUS_METRICS_ENABLED is default6417Saved CI JWT signing key6418 prometheus_metrics_enabled is set to true6419 CI JWT signing key6420Saved CI JWT signing key6421 writes valid RSA key to the database6422Banzai::Filter::CustomEmojiFilter6423 replaces supported name custom emoji6424 correctly uses the custom emoji URL6425 matches multiple same custom emoji6426 matches multiple custom emoji6427 does not match enclosed colons6428 does not do N+1 query6429 behaves like emoji filter6430 keeps whitespace intact6431 does not match emoji in a string6432 ignores non existent/unsupported emoji6433 matches with adjacent text6434 does not match emoji in a pre tag6435 does not match emoji in code tag6436 does not match emoji in tt tag6437Packages::Conan::CreatePackageFileService6438 #execute6439 with temp file6440 behaves like a valid package_file6441 creates a new package file6442 behaves like assigns build to package file6443 with build info6444 assigns the pipeline to the package6445 creates a new PackageFileBuildInfo record6446 behaves like a valid recipe_file6447 creates a new recipe file6448 behaves like assigns build to package file6449 with build info6450 assigns the pipeline to the package6451 creates a new PackageFileBuildInfo record6452 with remote file6453 behaves like a valid package_file6454 creates a new package file6455 behaves like assigns build to package file6456 with build info6457 assigns the pipeline to the package6458 creates a new PackageFileBuildInfo record6459 behaves like a valid recipe_file6460 creates a new recipe file6461 behaves like assigns build to package file6462 with build info6463 assigns the pipeline to the package6464 creates a new PackageFileBuildInfo record6465 file is missing6466 raises an error6467IncidentManagement::IssuableEscalationStatuses::PrepareUpdateService6468 # order random6469 when called nil params6470 raises an exception6471 when called with unsupported params6472 behaves like successful response6473 returns valid parameters which can be used to update the issue6474 behaves like successful response6475 returns valid parameters which can be used to update the issue6476 when called without params6477 behaves like successful response6478 returns valid parameters which can be used to update the issue6479 when user does not have permissions6480 behaves like availability error response6481 is expected to eq "Escalation status updates are not available for this issue, user, or project."6482 when an IssuableEscalationStatus record for the issue does not exist6483 initializes an issuable escalation status record6484 behaves like successful response6485 returns valid parameters which can be used to update the issue6486 with status param6487 when status matches the current status6488 behaves like successful response6489 returns valid parameters which can be used to update the issue6490 when status is unsupported6491 behaves like invalid params error response6492 is expected to eq "Invalid value was provided for parameters: status"6493 when status is a String6494 behaves like successful response6495 returns valid parameters which can be used to update the issue6496 when user is anonymous6497 behaves like availability error response6498 is expected to eq "Escalation status updates are not available for this issue, user, or project."6499 when called with an unsupported issue type6500 behaves like availability error response6501 is expected to eq "Escalation status updates are not available for this issue, user, or project."6502GpgKeys::CreateService6503 creates a gpg key6504 notification6505 sends a notification6506 when the public key contains subkeys6507 generates the gpg subkeys6508Gitlab::WikiPages::FrontMatterParser6509 #parse6510 there is front matter6511 is expected to have attributes {:content => "This is the content\n", :error => (be nil), :front_matter => (include {:a => 1, :b => 2, :c => ["foo", "bar"]})}6512 there is no content6513 is expected to have attributes {:content => "", :error => (be nil), :front_matter => {}}6514 there is no front_matter6515 is expected to have attributes {:content => "This is the content", :front_matter => (be empty)}6516 is expected to have attributes {:reason => :no_match}6517 the feature flag is disabled6518 is expected to have attributes {:content => "---\na: 1\nb: 2\nc:\n - foo\n - bar\ndate: I am safe. Not actually a date\n---\nThis is the content\n", :front_matter => (be empty)}6519 the feature flag is enabled for the gated object6520 is expected to have attributes {:content => "This is the content\n", :front_matter => (include {:a => 1, :b => 2, :c => ["foo", "bar"]}), :reason => (be nil)}6521 the end divider is ...6522 is expected to have attributes {:front_matter => (include {:a => 1, :b => 2, :c => ["foo", "bar"]})}6523 the front-matter is not a mapping6524 is expected to have attributes {:reason => :not_mapping}6525 there is nothing in the front-matter block6526 is expected to have attributes {:reason => :no_match}6527 there is a string in the YAML block6528 is expected to have attributes {:reason => :not_mapping}6529 there is dangerous YAML in the block6530 is expected to have attributes {:error => (be present), :reason => :parse_error}6531 there is acceptably long YAML in the front-matter block6532 is expected to have attributes {:front_matter => (include {:title => (be present)})}6533 there is suspiciously long YAML in the front-matter block6534 is expected to have attributes {:reason => :too_long}6535 TOML front matter6536 is expected to have attributes {:reason => :not_yaml}6537 TOML style fences, advertised as YAML6538 is expected to have attributes {:front_matter => (include {:title => "My title"})}6539 YAML, advertised as something else6540 is expected to have attributes {:reason => :not_yaml}6541 there is text content in the YAML block, in comments6542 is expected to have attributes {:front_matter => (include {:foo => 1})}6543 there is text content in the YAML block6544 is expected to have attributes {:reason => :not_mapping}6545DraftNotes::DestroyService6546 destroys a single draft note6547 destroys all draft notes for a user in a merge request6548 diff highlight cache clearing6549 when destroying all draft notes of a user6550 clears highlighting cache if unfold required for any6551 when destroying one draft note6552 clears highlighting cache if unfold required6553ProjectExportJob6554 associations6555 is expected to belong to project required: false6556 is expected to have many relation_exports6557 validations6558 is expected to validate that :project cannot be empty/falsy6559 is expected to validate that :jid cannot be empty/falsy6560 is expected to validate that :status cannot be empty/falsy6561 when pruning expired jobs6562 prunes jobs and associations older than 7 days6563 does not delete associated records for jobs younger than 7 days6564Gitlab::Ci::Config::Entry::AllowFailure6565 validations6566 when entry config value is valid6567 with boolean values6568 behaves like valid entry6569 #value6570 returns key value6571 #valid?6572 is valid6573 behaves like valid entry6574 #value6575 returns key value6576 #valid?6577 is valid6578 with hash values6579 behaves like valid entry6580 #value6581 returns key value6582 #valid?6583 is valid6584 behaves like valid entry6585 #value6586 returns key value6587 #valid?6588 is valid6589 when entry value is not valid6590 when it has a wrong type6591 behaves like invalid entry6592 #valid?6593 is expected not to be valid6594 is expected to include "allow failure config should be a hash or a boolean value"6595 with string exit codes6596 behaves like invalid entry6597 #valid?6598 is expected not to be valid6599 is expected to include "allow failure exit codes should be an array of integers or an integer"6600 with array of strings as exit codes6601 behaves like invalid entry6602 #valid?6603 is expected not to be valid6604 is expected to include "allow failure exit codes should be an array of integers or an integer"6605 when it has an extra keys6606 behaves like invalid entry6607 #valid?6608 is expected not to be valid6609 is expected to include "allow failure config contains unknown keys: extra"6610Gitlab::GithubImport::ReschedulingMethods6611 #perform6612 with a non-existing project6613 does not perform any work6614 notifies any waiters so they do not wait forever6615 with an existing project6616 notifies any waiters upon successfully importing the data6617 reschedules itself if the data could not be imported6618 #try_import6619 returns true when the import succeeds6620 returns false when the import fails due to hitting the GitHub API rate limit6621 #notify_waiter6622 notifies the waiter if a waiter key is specified6623 does not notify any waiters if no waiter key is specified6624Atlassian::JiraConnect::Jwt::Symmetric6625 #iss_claim6626 is expected to eq "123"6627 invalid JWT6628 is expected to eq nil6629 #sub_claim6630 is expected to eq "123"6631 invalid JWT6632 is expected to eq nil6633 #valid?6634 invalid JWT6635 is expected to eq false6636 valid JWT6637 is expected to eq true6638 #verify_qsh_claim6639 is expected to eq true6640 qsh does not match6641 is expected to eq false6642 creating query string hash raises an error6643 is expected to eq false6644 #verify_context_qsh_claim6645 is expected to eq true6646 jwt does not contain a context qsh6647 is expected to eq false6648Projects::ErrorTrackingHelper6649 #error_tracking_data6650 without error_tracking_setting6651 returns frontend configuration6652 with error_tracking_setting6653 when enabled6654 show error tracking enabled6655 when disabled6656 show error tracking not enabled6657 with integrated error tracking feature6658 feature_flag: false, enabled: true, integrated: true, show_alert: true6659 is expected to include {"show-integrated-tracking-disabled-alert" => "true"}6660 feature_flag: false, enabled: true, integrated: false, show_alert: false6661 is expected to include {"show-integrated-tracking-disabled-alert" => "false"}6662 feature_flag: false, enabled: false, integrated: true, show_alert: false6663 is expected to include {"show-integrated-tracking-disabled-alert" => "false"}6664 feature_flag: false, enabled: false, integrated: false, show_alert: false6665 is expected to include {"show-integrated-tracking-disabled-alert" => "false"}6666 feature_flag: true, enabled: true, integrated: true, show_alert: false6667 is expected to include {"show-integrated-tracking-disabled-alert" => "false"}6668 feature_flag: true, enabled: true, integrated: false, show_alert: false6669 is expected to include {"show-integrated-tracking-disabled-alert" => "false"}6670 feature_flag: true, enabled: false, integrated: true, show_alert: false6671 is expected to include {"show-integrated-tracking-disabled-alert" => "false"}6672 feature_flag: true, enabled: false, integrated: false, show_alert: false6673 is expected to include {"show-integrated-tracking-disabled-alert" => "false"}6674 when user is not maintainer6675 shows error tracking enablement as disabled6676 #error_details_data6677 returns the correct issue id6678 returns the correct project path6679 returns the correct stack trace path6680 creates an issue and redirects to issue show page6681Packages::Policies::GroupPolicy6682 read_package6683 with admin6684 when admin mode is enabled6685 is expected to be allowed :read_package6686 when admin mode is disabled6687 is expected to be disallowed :read_package6688 with owner6689 is expected to be allowed :read_package6690 with maintainer6691 is expected to be allowed :read_package6692 with reporter6693 is expected to be allowed :read_package6694 with guest6695 is expected to be disallowed :read_package6696 with non member6697 is expected to be disallowed :read_package6698 with anonymous6699 is expected to be disallowed :read_package6700 deploy token access6701 when a deploy token with read_package_registry scope6702 is expected to be allowed :read_package6703 when a deploy token with write_package_registry scope6704 is expected to be allowed :read_package6705profiles/keys/_key.html.haml6706 when the key partial is used6707 displays the correct values6708 displays the usage type6709 usage_type: :auth, usage_type_text: "Authentication"6710 renders usage type text6711 usage_type: :auth_and_signing, usage_type_text: "Authentication & Signing"6712 renders usage type text6713 usage_type: :signing, usage_type_text: "Signing"6714 renders usage type text6715 when the key has not been used6716 renders "Never" for last used6717 when the key does not have an expiration date6718 renders "Never" for expires6719 when the key has expired6720 renders "Expired:" as the expiration date label6721 when the key is not deletable6722 does not render the partial6723 icon tooltip6724 valid: false, expiry: Sat, 10 Dec 2022 10:44:39.214321495 UTC +00:00, result: "Key type is forbidden. Must be DSA, ECDSA, ED25519, ECDSA_SK, or ED25519_SK"6725 renders the correct icon6726 valid: true, expiry: Sat, 10 Dec 2022 10:44:39.214556755 UTC +00:00, result: ""6727 renders the correct icon6728Gitlab::Graphql::MarkdownField6729 .markdown_field6730 creates the field with some default attributes6731 developer warnings6732 raises when passing a resolver6733 resolving markdown6734 renders markdown from the same property as the field name without the `_html` suffix6735 when a `method` argument is passed6736 renders markdown from a specific property6737 when a block is passed for the resolved object6738 renders markdown from the same property as the field name without the `_html` suffix6739 basic verification that references work6740 renders markdown correctly6741 when the issue is not publicly accessible6742 hides the references from users that are not allowed to see the reference6743 shows the reference to users that are allowed to see it6744Gitlab::Graphql::Lazy6745 #force6746 can extract the value6747 can derive new lazy values6748 only evaluates once6749 deals with nested laziness6750 .with_value6751 defers the application of a block to a value6752 evaluates to the application of the block to the value6753 .force6754 when given a plain value6755 unwraps the value6756 when given a wrapped lazy value6757 unwraps the value6758 when the value is from a batchloader6759 syncs the value6760 when the value is a GraphQL lazy6761 forces the evaluation6762 when the value is a promise6763 executes the promise and waits for the value6764Gitlab::Auth::Ldap::Adapter6765 #users6766 searches with the proper options when searching by uid6767 searches with the proper options when searching by dn6768 searches with the proper options when searching with a limit6769 returns an LDAP::Person if search returns a result6770 returns empty array if search entry does not respond to uid6771 uses the right uid attribute when non-default6772 #dn_matches_filter?6773 when the search result is non-empty6774 is expected to be truthy6775 when the search result is empty6776 is expected to be falsey6777 #ldap_search6778 when the search is successful6779 and the result is non-empty6780 is expected to eq [:foo]6781 and the result is empty6782 is expected to eq []6783 when returned with expected code6784 behaves like connection retry6785 retries the operation6786 as many times as MAX_SEARCH_RETRIES6787 when no more retries6788 raises the exception6789 logs the error6790 when the search encounters an error6791 is expected to eq []6792 when the search raises an LDAP exception6793 retries the operation6794 behaves like connection retry6795 retries the operation6796 as many times as MAX_SEARCH_RETRIES6797 when no more retries6798 raises the exception6799 logs the error6800Clusters::Aws::AuthorizeRoleService6801 role exists6802 updates the existing Aws::Role record and returns a set of credentials6803 errors6804 role does not exist6805 returns an empty hash6806 logs the error6807 supplied ARN is invalid6808 returns an empty hash6809 logs the error6810 client errors6811 error fetching credentials6812 returns an empty hash6813 logs the error6814 error in assuming role6815 returns an empty hash6816 logs the error6817 credentials not configured6818 returns an empty hash6819 logs the error6820 role not configured6821 returns an empty hash6822 logs the error6823Gitlab::GithubImport::Representation::ProtectedBranch6824 # order random6825 .from_api_response6826 behaves like a ProtectedBranch rule6827 returns an instance of ProtectedBranch6828 with ProtectedBranch6829 includes the protected branch ID (name) attribute6830 includes the protected branch allow_force_pushes attribute6831 includes the protected branch required_conversation_resolution attribute6832 includes the protected branch required_pull_request_reviews6833 includes the protected branch require_code_owner_reviews6834 .from_json_hash6835 behaves like a ProtectedBranch rule6836 returns an instance of ProtectedBranch6837 with ProtectedBranch6838 includes the protected branch ID (name) attribute6839 includes the protected branch allow_force_pushes attribute6840 includes the protected branch required_conversation_resolution attribute6841 includes the protected branch required_pull_request_reviews6842 includes the protected branch require_code_owner_reviews6843Gitlab::DependencyLinker6844 .link6845 links using GemfileLinker6846 links using GemspecLinker6847 links using PackageJsonLinker6848 links using ComposerJsonLinker6849 links using PodfileLinker6850 links using PodspecLinker6851 links using PodspecJsonLinker6852 links using CartfileLinker6853 links using GodepsJsonLinker6854 links using RequirementsTxtLinker6855 links using CargoTomlLinker6856 links using GoModLinker6857 links using GoSumLinker6858Packages::Debian::GroupDistributionKey6859 behaves like Debian Distribution Key6860 relationships6861 is expected to belong to distribution class_name => Packages::Debian::GroupDistribution required: false inverse_of => key6862 validations6863 #distribution6864 is expected to validate that :distribution cannot be empty/falsy6865 #private_key6866 is expected to validate that :private_key cannot be empty/falsy6867 is expected to allow :private_key to be ‹"-----BEGIN PGP PRIVATE KEY BLOCK-----\n..."›6868 is expected not to allow :private_key to be ‹"A"›, producing a custom validation error on failure6869 #passphrase6870 is expected to validate that :passphrase cannot be empty/falsy6871 is expected to allow :passphrase to be ‹"P@$$w0rd"›6872 is expected to allow :passphrase to be ‹"AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA"›6873 is expected not to allow :passphrase to be ‹"AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA"›6874 #public_key6875 is expected to validate that :public_key cannot be empty/falsy6876 is expected to allow :public_key to be ‹"-----BEGIN PGP PUBLIC KEY BLOCK-----\n..."›6877 is expected not to allow :public_key to be ‹"A"›, producing a custom validation error on failure6878 #fingerprint6879 is expected to validate that :passphrase cannot be empty/falsy6880 is expected to allow :passphrase to be ‹"abc"›6881 is expected to allow :passphrase to be ‹"AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA"›6882 is expected not to allow :passphrase to be ‹"AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA"›6883Gitlab::Ci::Variables::Builder::Project6884 #secret_variables6885 when the ref is protected6886 contains all the variables6887 when the ref is not protected6888 contains only the unprotected variables6889 when environment name is specified6890 when environment scope is exactly matched6891 is expected to contain exactly #<Gitlab::Ci::Variables::Collection::Item:0x00007f5520e2f028 @variable={:key=>"VARIABLE_1", :value=>"secret", :public=>false, :file=>false, :masked=>false, :raw=>false}>6892 when environment scope is matched by wildcard6893 is expected to contain exactly #<Gitlab::Ci::Variables::Collection::Item:0x00007f5520838c50 @variable={:key=>"VARIABLE_1", :value=>"secret", :public=>false, :file=>false, :masked=>false, :raw=>false}>6894 when environment scope does not match6895 is expected not to contain exactly #<Gitlab::Ci::Variables::Collection::Item:0x00007f552066b328 @variable={:key=>"VARIABLE_1", :value=>"secret", :public=>false, :file=>false, :masked=>false, :raw=>false}>6896 when environment scope has _6897 does not treat it as wildcard6898 when environment name contains underscore6899 matches literally for _6900 when environment scope has %6901 does not treat it as wildcard6902 when environment name contains a percent6903 matches literally for _6904 when variables with the same name have different environment scopes6905 puts variables matching environment scope more in the end6906Banzai::Filter::WikiLinkFilter6907 doesn't rewrite absolute links6908 doesn't rewrite links to project uploads6909 when links are rewritable6910 stores original url in the data-canonical-src attribute6911 when links are not rewritable6912 does not store original url in the data-canonical-src attribute6913 when links point to the relative wiki path6914 does not rewrite links6915 does not rewrite links to old relative wiki path6916 when links point to the uploads folder6917 with an "a" html tag6918 rewrites links6919 with "img" html tag6920 inside an "a" html tag6921 rewrites links6922 outside an "a" html tag6923 rewrites links6924 with "video" html tag6925 rewrites links6926 with "audio" html tag6927 rewrites links6928 invalid links6929 doesn't rewrite invalid invalid_links like http://:80806930 doesn't rewrite invalid invalid_links like http://6931 doesn't rewrite invalid invalid_links like http://:8080/path6932Gitlab::Graphql::Loaders::BatchCommitLoader6933 #find6934 finds a commit by id6935 only queries once6936PagesDomains::CreateAcmeOrderService6937 saves order to database before requesting validation6938 generates and saves private key6939 properly saves order attributes6940 properly saves challenge attributes6941Security::CiConfiguration::ContainerScanningCreateService6942 #execute6943 user does not belong to project6944 returns an error status6945 does not track a snowplow event6946 user belongs to project6947 does track the snowplow event6948 raises exception if the user does not have permission to create a new branch6949 when exception is raised6950 when branch was created6951 tries to rm branch6952 when branch was not created6953 does not try to rm branch6954 with no parameters6955 returns the path to create a new merge request6956 when the project has a non-default ci config file6957 does track the snowplow event6958RuboCop::Cop::RSpec::FactoriesInMigrationSpecs6959 # order random6960 behaves like an offensive factory call6961 registers an offense for FactoryBot.build(:user)6962 registers an offense for FactoryBot.build_list(:user)6963 registers an offense for FactoryBot.create(:user)6964 registers an offense for FactoryBot.create_list(:user)6965 registers an offense for FactoryBot.attributes_for(:user)6966 behaves like an offensive factory call6967 registers an offense for build(:user)6968 registers an offense for build_list(:user)6969 registers an offense for create(:user)6970 registers an offense for create_list(:user)6971 registers an offense for attributes_for(:user)6972Gitlab::Ci::Config::Entry::Kubernetes6973 attributes6974 is expected to respond to #namespace6975 is expected to respond to #has_namespace?6976 validations6977 config6978 is a hash containing known keys6979 is expected to be valid6980 is a hash containing an unknown key6981 is expected not to be valid6982 is a string6983 is expected not to be valid6984 namespace6985 is a string6986 is expected to be valid6987 is a hash6988 is expected not to be valid6989 is not present6990 is expected not to be valid6991RuboCop::Cop::PutProjectRoutesUnderScope6992 # order random6993 does not register an offense for the root route6994 does not register an offense for the root route within scope6995 registers an offense when route is outside scope for `post`6996 registers an offense when route is outside scope for `get`6997 registers an offense when route is outside scope for `patch`6998 does not register an offense when resource inside the scope6999 registers an offense when route is outside scope for `delete`7000 registers an offense when route is outside scope for `resource`7001 does not register an offense when resource is deep inside the scope7002 registers an offense when route is outside scope for `resources`7003 registers an offense when route is outside scope for `put`7004Integrations::IrkerWorker#perform7005 when local requests are not allowed7006 is expected to be falsey7007 when connection fails7008 is expected to be falsey7009 when connection successful7010 is expected to be truthy7011 with new branch7012 sends a correct message with branches url7013 with deleted branch7014 sends a correct message7015 with new commits to existing branch7016 sends a correct message with a compare url7017layouts/terms7018 behaves like a layout which reflects the application theme setting7019 as a themed layout7020 when no theme is explicitly selected7021 renders with the default theme7022 when user is authenticated & has selected a specific theme7023 chosen_theme: #<struct Gitlab::Themes::Theme id=1, name="Indigo", css_class="ui-indigo", css_filename="theme_indigo", primary_color="#292961">7024 renders with the Indigo theme7025 chosen_theme: #<struct Gitlab::Themes::Theme id=6, name="Light Indigo", css_class="ui-light-indigo", css_filename="theme_light_indigo", primary_color="#4b4ba3">7026 renders with the Light Indigo theme7027 chosen_theme: #<struct Gitlab::Themes::Theme id=4, name="Blue", css_class="ui-blue", css_filename="theme_blue", primary_color="#1a3652">7028 renders with the Blue theme7029 chosen_theme: #<struct Gitlab::Themes::Theme id=7, name="Light Blue", css_class="ui-light-blue", css_filename="theme_light_blue", primary_color="#2261a1">7030 renders with the Light Blue theme7031 chosen_theme: #<struct Gitlab::Themes::Theme id=5, name="Green", css_class="ui-green", css_filename="theme_green", primary_color="#0d4524">7032 renders with the Green theme7033 chosen_theme: #<struct Gitlab::Themes::Theme id=8, name="Light Green", css_class="ui-light-green", css_filename="theme_light_green", primary_color="#156b39">7034 renders with the Light Green theme7035 chosen_theme: #<struct Gitlab::Themes::Theme id=9, name="Red", css_class="ui-red", css_filename="theme_red", primary_color="#691a16">7036 renders with the Red theme7037 chosen_theme: #<struct Gitlab::Themes::Theme id=10, name="Light Red", css_class="ui-light-red", css_filename="theme_light_red", primary_color="#a62e21">7038 renders with the Light Red theme7039 chosen_theme: #<struct Gitlab::Themes::Theme id=2, name="Gray", css_class="ui-gray", css_filename="theme_gray", primary_color="#303030">7040 renders with the Gray theme7041 chosen_theme: #<struct Gitlab::Themes::Theme id=3, name="Light Gray", css_class="ui-light-gray", css_filename="theme_light_gray", primary_color="#666">7042 renders with the Light Gray theme7043 chosen_theme: #<struct Gitlab::Themes::Theme id=11, name="Dark Mode (alpha)", css_class="gl-dark", css_filename=nil, primary_color="#303030">7044 renders with the Dark Mode (alpha) theme7045IssueBoardEntity7046 has basic attributes7047 has path and endpoints7048 has milestone attributes7049 has assignee attributes7050 has label attributes7051 type7052 has an issue type7053 real_path7054 has an issue path7055 when issue is of type task7056 has a work item path with iid7057 when the use_iid_in_work_items_path feature flag is disabled7058 has a work item path7059RspecFlaky::FlakyExample7060 #initialize7061 when given an Example.to_h7062 behaves like a valid FlakyExample instance7063 returns valid attributes7064 #update!7065 when given an Example hash7066 behaves like an up-to-date FlakyExample instance7067 sets the first_flaky_at if none exists7068 maintains the first_flaky_at if exists7069 updates the last_flaky_at7070 updates the flaky_reports7071 updates the last_attempts_count7072 when run on the CI7073 updates the last_flaky_job7074 #to_h7075 when given an Example hash7076 behaves like a valid FlakyExample hash7077 returns a valid hash7078Gitlab::GlRepository7079 .parse7080 parses a project gl_repository7081 parses a project wiki gl_repository7082 parses a snippet gl_repository7083 parses a design gl_repository7084 throws an argument error on an invalid gl_repository type7085 throws an argument error on an invalid gl_repository id7086Gitlab::JiraImport::MetadataCollector7087 #execute7088 when all metadata fields are present7089 writes all fields7090 when some fields are in incorrect format7091 when fixVersions field is not an array7092 skips these fields7093 when a fixVersions element is in incorrect format7094 skips the element7095 when a parent field has incorrectly formatted summary7096 skips the summary7097 when a parent field is missing the key7098 skips the field7099 when some metadata fields are missing7100 skips the missing fields7101 when all metadata fields are missing7102 returns nil7103Gitlab::GonHelper7104 #add_gon_variables7105 when HTTPS is enabled7106 sets the secure flag to true7107 when HTTP is enabled7108 sets the secure flag to false7109 when sentry is configured7110 with legacy sentry configuration7111 sets sentry dsn and environment from config7112 with sentry settings7113 when enable_new_sentry_clientside_integration is disabled7114 does not set sentry dsn and environment from config7115 when enable_new_sentry_clientside_integration is enabled7116 sets sentry dsn and environment from config7117 #push_frontend_feature_flag7118DEPRECATION WARNING: Invalid Feature Flag my_feature_flag stubbed (called from each at /builds/gitlab-org/gitlab/spec/support/helpers/stub_feature_flags.rb:39)7119 pushes a feature flag to the frontend7120 #push_force_frontend_feature_flag7121 pushes a feature flag to the frontend with the provided value7122 pushes a disabled feature flag if provided value is nil7123 #default_avatar_url7124 returns an absolute URL7125RuboCop::Cop::Gitlab::ModuleWithInstanceVariables7126 # order random7127 when source is using simple or ivar assignment with other ivar7128 behaves like registering offense7129 registers an offense when instance variable is used in a module7130 when source is a nested module with multiple offenses7131 behaves like registering offense7132 registers an offense when instance variable is used in a module7133 when source is using simple or ivar assignment7134 behaves like not registering offense7135 does not register offenses7136 when source is using simple ivar7137 behaves like not registering offense7138 does not register offenses7139 when source is using or ivar assignment with something else7140 behaves like registering offense7141 registers an offense when instance variable is used in a module7142 when source is a regular module7143 behaves like registering offense7144 registers an offense when instance variable is used in a module7145 when source is defining initialize7146 behaves like not registering offense7147 does not register offenses7148 when source is a nested module7149 behaves like registering offense7150 registers an offense when instance variable is used in a module7151Gitlab::GithubImport::ParallelScheduling7152 #parallel?7153 returns true when running in parallel mode7154 returns false when running in sequential mode7155 #execute7156 imports data in parallel when running in parallel mode7157 imports data in parallel when running in sequential mode7158 expires the cache used for tracking already imported objects7159 logs the the process7160 when abort_on_failure is false7161 logs the error when it fails7162 when abort_on_failure is true7163 logs the error when it fails and marks import as failed7164 #sequential_import7165 imports data in sequence7166 #parallel_import7167 with multiple objects7168 imports data in parallel batches with delays7169 #each_object_to_import7170 yields every object to import7171 resumes from the last page7172 does not yield any objects if the page number was not set7173 does not yield the object if it was already imported7174 #already_imported?7175 returns false when an object has not yet been imported7176 returns true when an object has already been imported7177 #mark_as_imported7178 marks an object as already imported7179 #increment_object_counter?7180 returns true7181Gitlab::Ci::Reports::Sbom::Component7182 has correct attributes7183 #ingestible?7184 when component_type is invalid7185 is expected to equal false7186 when purl_type is invalid7187 is expected to equal false7188 when component_type is valid7189 component_type: "library"7190 is expected to equal true7191 when purl_type is valid7192 purl_type: "composer"7193 is expected to equal true7194 purl_type: "conan"7195 is expected to equal true7196 purl_type: "gem"7197 is expected to equal true7198 purl_type: "golang"7199 is expected to equal true7200 purl_type: "maven"7201 is expected to equal true7202 purl_type: "npm"7203 is expected to equal true7204 purl_type: "nuget"7205 is expected to equal true7206 purl_type: "pypi"7207 is expected to equal true7208 when there is no purl7209 is expected to equal true7210IosSpecificTemplatesExperiment7211 is expected to equal true7212 skipping the experiment7213 no actor7214 is expected to be falsey7215 actor cannot create pipelines7216 is expected to be falsey7217 targeting a non iOS platform7218 is expected to be falsey7219 project has a ci.yaml file7220 is expected to be falsey7221 project has pipelines7222 is expected to be falsey7223Mutations::Terraform::State::Unlock7224 is expected to eq "TerraformStateUnlock"7225 is expected to require graphql authorizations :admin_terraform_state7226 #resolve7227 user does not have permission7228 raises an error7229 user has permission7230 unlocks the state7231 state is already unlocked7232 does not modify the state7233 with invalid params7234 raises an error7235Ci::MergeRequests::AddTodoWhenBuildFailsWorker7236 #perform7237 is labeled as idempotent7238 performs multiple times sequentially without raising an exception7239 executes todo service7240 when job does not exist7241 returns nil7242 when project does not exist7243 returns nil7244 when pipeline does not exist7245 returns nil7246Gitlab::SnowplowEventDefinitionGenerator7247 Creating event definition file7248 creates CE event definition file using the template7249 generated filename7250 includes timestamp7251 removes special characters7252 cuts name if longer than 100 characters7253 event definition already exists7254 overwrites event definition --force flag set to true7255 raises error when --force flag set to false7256 EE7257 creates EE event definition file using the template7258projects/ci/jobs/_build7259 won't include a column with a link to its pipeline by default7260 can include a column with a link to its pipeline7261Gitlab::ReactiveCacheSetCache7262 #cache_key7263 includes the suffix7264 #read7265 is expected to be empty7266 after item added7267 is expected to contain exactly "test_item"7268 #write7269 writes the value to the cache7270 sets the expiry of the set7271 #clear_cache!7272 deletes the cached items7273 #include?7274 is expected to equal false7275 item added7276 is expected to equal true7277 count7278 is expected to equal 07279 item added7280 is expected to equal 17281Ci::Deployments::DestroyService7282 when deleting a deployment7283 delete is accepted for old deployment7284 does not delete a running deployment7285 does not delete the last deployment7286Issues::AfterCreateService7287 #execute7288 creates a pending todo for new assignee7289 deletes milestone issues count cache7290 with a regular issue7291 behaves like does not track incident management event7292 does not track the event7293 with an incident issue7294 behaves like an incident management tracked event7295 .track_event7296 tracks the event using redis7297Mutations::AlertManagement::CreateAlertIssue7298 is expected to require graphql authorizations :update_alert_management_alert7299 #resolve7300 user has access to project7301 when CreateAlertIssueService responds with success7302 returns the issue with no errors7303 behaves like an incident management tracked event7304 .track_event7305 tracks the event using redis7306 behaves like an incident management tracked event7307 .track_event7308 tracks the event using redis7309 when CreateAlertIssue responds with an error7310 returns errors7311 when resource is not accessible to the user7312 raises an error if the resource is not accessible to the user7313Gitlab::Database::PostgresqlAdapter::EmptyQueryPing7314 #active?7315 uses an empty query to check liveness7316 returns true if no error was signaled7317 returns false when an error occurs7318AwardEmojiPresenter7319 #description7320 is expected to eq "thumbs up sign"7321 #unicode7322 is expected to eq "1f44d"7323 #unicode_version7324 is expected to eq "6.0"7325 #emoji7326 is expected to eq "👍"7327 when presenting an award emoji with an invalid name7328 returns nil for all properties7329Ci::CreatePipelineService7330 custom config content7331 creates a pipeline using the content passed in as param7332 when bridge includes yaml from artifact7333 when referenced job exists7334 created a pipeline using the content passed in as param and download the artifact7335 when referenced job does not exist7336 creates an empty pipeline7337DependencyProxy::FindCachedManifestService7338 #execute7339 when no manifest exists7340 successful head request7341 behaves like returning no manifest7342 returns a nil manifest7343 failed head request7344 behaves like returning no manifest7345 returns a nil manifest7346 when manifest exists7347 behaves like using the cached manifest7348 uses cached manifest instead of downloading one7349 when digest is stale7350 behaves like returning no manifest7351 returns a nil manifest7352 when the cached manifest is pending destruction7353 behaves like returning no manifest7354 returns a nil manifest7355 when the connection fails7356 behaves like using the cached manifest7357 uses cached manifest instead of downloading one7358 and no manifest is cached7359 behaves like returning an error7360 returns an error7361 when the connection is successful but with error in result7362 behaves like using the cached manifest7363 uses cached manifest instead of downloading one7364 and no manifest is cached7365 behaves like returning no manifest7366 returns a nil manifest7367Gitlab::Auth::Saml::IdentityLinker7368 with valid GitLab initiated request7369 linked identity exists7370 doesn't create new identity7371 sets #changed? to false7372 identity needs to be created7373 creates linked identity7374 sets identity provider7375 sets identity extern_uid7376 sets #changed? to true7377 with identity provider initiated request7378 attempting to link accounts raises an exception7379devise/sessions/new7380 marketing text7381 when flash is anything it renders marketing text7382 when flash notice is devise confirmed message it hides marketing text7383 ldap7384 is shown when enabled7385 is not shown when LDAP sign in is disabled7386 Google Tag Manager7387 when Google Tag Manager is enabled7388 is expected to match /www.googletagmanager.com/7389 when Google Tag Manager is disabled7390 is expected not to match /www.googletagmanager.com/7391 ldap7392 is shown when enabled7393 is not shown when LDAP sign in is disabled7394 Google Tag Manager7395 when Google Tag Manager is enabled7396 is expected to match /www.googletagmanager.com/7397 when Google Tag Manager is disabled7398 is expected not to match /www.googletagmanager.com/7399Gitlab::Git::MergeBase7400 #sha7401 returns `nil` when the refs do not have a common ancestor7402 returns a merge base when passing 2 branch names7403 returns a merge base when passing a tag name7404 when the refs exist7405 returns the SHA of the merge base7406 memoizes the result7407 when passing a missing ref7408 does not call merge_base on the repository but raises an error7409 #commit7410 does not try to find the commit when there is no sha7411 for existing refs with a merge base7412 finds the commit for the merge base7413 only looks up the commit once7414 #unknown_refs7415 returns the refs passed that are not part of the repository7416 only looks up the commits once7417RuboCop::Cop::RSpec::ExpectGitlabTracking7418 # order random7419 bad: expect(Gitlab::Tracking).to_not have_received(:event).with("EventCategory", "event_action")7420 registers an offense7421 bad: expect(Gitlab::Tracking).to_not receive(:event).with("EventCategory", "event_action")7422 registers an offense7423 bad: expect(Gitlab::Tracking).to_not receive(:event)7424 registers an offense7425 bad: expect(Gitlab::Tracking).not_to have_received(:event).with("EventCategory", "event_action")7426 registers an offense7427 bad: expect(Gitlab::Tracking).not_to receive(:event).with("EventCategory", "event_action")7428 registers an offense7429 good: expect_snowplow_event(category: "EventCategory", action: "event_action")7430 does not register an offense7431 bad: expect(Gitlab::Tracking).to receive(:event).with("EventCategory", "event_action", label: "label", property: "property")7432 registers an offense7433 good: expect_snowplow_event(category: "EventCategory", action: "event_action", label: "label", property: "property")7434 does not register an offense7435 good: expect_snowplow_event(category: nil, action: nil)7436 does not register an offense7437 bad: allow(Gitlab::Tracking).to receive(:event).and_call_original7438 registers an offense7439 bad: expect(Gitlab::Tracking).to receive(:event)7440 registers an offense7441 good: expect_no_snowplow_event7442 does not register an offense7443 bad: expect(Gitlab::Tracking).not_to receive(:event)7444 registers an offense7445 bad: expect(Gitlab::Tracking).to have_received(:event).with("EventCategory", "event_action")7446 registers an offense7447PipelineNotificationWorker7448 #execute7449 calls NotificationService#pipeline_finished when the pipeline exists7450 does nothing when the pipeline does not exist7451 when the user is blocked7452 does nothing7453 behaves like worker with data consistency7454 .get_data_consistency_feature_flag_enabled?7455 returns true7456 .get_data_consistency7457 returns correct data consistency7458AnalyticsSummarySerializer7459 generates payload for single object7460 contains important elements of AnalyticsStage7461 does not include unit7462 when representing with unit7463 contains unit7464JiraConnect::SyncFeatureFlagsWorker7465 behaves like worker with data consistency7466 .get_data_consistency_feature_flag_enabled?7467 returns true7468 .get_data_consistency7469 returns correct data consistency7470 #perform7471 when object exists7472 calls the Jira sync service7473 when object does not exist7474 does not call the sync service7475ProjectHookPolicy7476 when the user is not a maintainer7477 cannot read and destroy web-hooks7478 when the user is a maintainer7479 can read and destroy web-hooks7480Types::UntrustedRegexp7481 is expected to eq "UntrustedRegexp"7482 is expected to eq "A regexp containing patterns sourced from user input"7483 .coerce_input7484 input: ".*", expected_result: ".*"7485 with input .*7486 is expected to eq ".*"7487 input: "(.*)", expected_result: "(.*)"7488 with input (.*)7489 is expected to eq "(.*)"7490 input: "[test*]+", expected_result: "[test*]+"7491 with input [test*]+7492 is expected to eq "[test*]+"7493 input: "*v1", expected_result: :raise_error7494 with input *v17495 raises a coercion error7496 input: "[test*", expected_result: :raise_error7497 with input [test*7498 raises a coercion error7499 input: "test*+", expected_result: :raise_error7500 with input test*+7501 raises a coercion error7502 .coerce_result7503 input: "1", expected_result: "1"7504 with input 17505 is expected to eq "1"7506 input: 1, expected_result: "1"7507 with input 17508 is expected to eq "1"7509 input: true, expected_result: "true"7510 with input true7511 is expected to eq "true"7512ScheduleMergeRequestCleanupRefsWorker7513 #perform7514 does nothing if the database is read-only7515 retries stuck cleanup schedules7516 is labeled as idempotent7517 performs multiple times sequentially without raising an exception7518 schedules MergeRequestCleanupRefsWorker to be performed with capacity7519 when merge_request_refs_cleanup flag is disabled7520 does not schedule any merge request clean ups7521AutoMergeProcessWorker7522 #perform7523 when merge request is found7524 executes AutoMergeService7525 when merge request is not found7526 does not execute AutoMergeService7527Packages::Nuget::SearchResultsPresenter7528 #total_count7529 expects to have 3 total elements7530 #data7531 returns the proper data structure7532Gitlab::Memory::Watchdog::Monitor::HeapFragmentation7533 # order random7534 #call7535 gets gc_heap_fragmentation7536 when process exceeds threshold7537 returns if threshold is violated and payload7538 when process does not exceed threshold7539 returns if threshold is violated and payload7540 #initialize7541 sets the heap fragmentation limit gauge7542RuboCop::Cop::API::GrapeArrayMissingCoerce7543 # order random7544 adds an offense with an optional parameter7545 does not add an offense for unrelated classes7546 does not add an offense7547 adds an offense with a required parameter7548Sidebars::Groups::Menus::KubernetesMenu7549 #render?7550 when user can read clusters7551 returns true7552 when user cannot read clusters rules7553 returns false7554 :certificate_based_clusters feature flag is disabled7555 returns false7556Gitlab::Database::UnidirectionalCopyTrigger7557 #name7558 when a single column name is given7559 returns the trigger name7560 when multiple column names are given7561 returns the trigger name7562 when a different number of new and old column names are given7563 raises an error7564 #create7565 when a single column name is given7566 creates the trigger and function7567 properly copies the column data using the trigger function7568 when multiple column names are given7569 creates the trigger and function to set all the columns7570 properly copies the columns using the trigger function7571 when a custom trigger name is given7572 creates the trigger and function with the custom name7573 when the trigger function already exists7574 does not raise an error7575 when a different number of new and old column names are given7576 raises an error7577 #drop7578 drops the trigger and function for the given arguments7579 when the trigger does not exist7580 does not raise an error7581Mutations::Clusters::AgentTokens::Create7582 is expected to require graphql authorizations :create_cluster7583 #resolve7584 without token permissions7585 raises an error if the resource is not accessible to the user7586 with user permissions7587 creates a new token7588 returns token information7589Gitlab::Git::RepositoryCleaner7590 #apply_bfg_object_map_stream (from StringIO)7591 removes internal references7592 #apply_bfg_object_map_stream (from Gitlab::HttpIO)7593 removes internal references7594Types::MergeRequests::AuthorType7595 behaves like a user type with merge request interaction type7596 is expected to require graphql authorizations :read_user7597 has the expected fields7598 #merge_request_interaction7599 returns the correct type7600 has the correct arguments7601Resolvers::Users::GroupCountResolver7602 #resolve7603 resolves group count for users7604 permissions7605 when current_user is an admin7606 is expected to eq [2, 1]7607 when current_user does not have access to the requested resource7608 is expected to equal nil7609 when current_user does not exist7610 is expected to equal nil7611Types::WorkItems::Widgets::StartAndDueDateUpdateInputType7612 is expected to eq "WorkItemWidgetStartAndDueDateUpdateInput"7613 is expected to contain exactly "startDate" and "dueDate"7614Gitlab::GithubImport::Representation7615 .symbolize_hash7616 returns a Hash with the keys as Symbols7617 parses timestamp fields into Time instances7618Ci::BridgePolicy7619 #play_job7620 when user can update the downstream branch7621 allows7622 when user can not update the downstream branch7623 does not allow7624Packages::Go::SyncPackagesService7625 #execute_async7626 schedules a package refresh7627 #initialize7628 without a project7629 raises an error7630 without a ref7631 raises an error7632 with an invalid ref7633 raises an error7634Packages::Nuget::SyncMetadatumService7635 #execute7636 creates a nuget metadatum7637 behaves like saving metadatum attributes7638 saves nuget metadatum7639 with exisiting nuget metadatum7640 does not create a nuget metadatum7641 behaves like saving metadatum attributes7642 saves nuget metadatum7643 with empty metadata7644 destroys the nuget metadatum7645BulkImports::FileDownloads::Validations7646 # order random7647 #filepath7648 is expected to raise NotImplementedError7649 #response_headers7650 is expected to raise NotImplementedError7651 #raise_error7652 is expected to raise NotImplementedError7653 #file_size_limit7654 is expected to raise NotImplementedError7655Gitlab::Kubernetes::Deployment7656 #name7657 is expected to eq :selected7658 #labels7659 is expected to eq :selected7660 #outdated?7661 when outdated7662 is expected to be truthy7663 when up to date7664 is expected to be falsy7665 when ahead of latest7666 is expected to be falsy7667 #instances7668 when unnamed7669 returns all pods with generated names and pending7670 when number of pods is less than wanted replicas7671 returns not spawned pods as pending and unknown and running7672 when outdated7673 returns all instances as named and waiting7674 with pods of each type7675 returns all instances7676 with track label7677 when marked as stable7678 returns all instances7679 when marked as canary7680 returns all instances7681dashboard/projects/_blank_state_welcome.html.haml7682 with regular user7683 with project creation enabled7684 has a doc_url7685 shows create project panel7686 with project creation disabled7687 doesn't show create project panel7688 shows an alert7689 with external user7690 doesn't show create project panel7691 shows an alert7692Types::CommitSignatures::SshSignatureType7693 # order random7694 is expected to include Types::CommitSignatureInterface7695 is expected to eq "SshSignature"7696 is expected to require graphql authorizations :download_code7697 contains attributes related to SSH signatures7698Gitlab::AppLogger7699 builds two Logger instances7700 logs info to AppLogger and AppJsonLogger7701 logs info to only the AppJsonLogger when unstructured logs are disabled7702Resolvers::Clusters::AgentActivityEventsResolver7703 is expected to eq Types::Clusters::AgentActivityEventType7704 is expected to be truthy7705 #resolve7706 returns events associated with the agent7707 user does not have permission7708 is expected to be empty7709Gitlab::RequestEndpoints7710 .all_api_endpoints7711 selects all feature API classes7712 .all_controller_actions7713 selects all feature controllers and action names7714Gitlab::UsageDataCounters::DesignsCounter7715 behaves like a redis usage counter7716 .count(create)7717 increments the Designs create counter by 17718 .read(create)7719 returns the total number of create events7720 behaves like a redis usage counter7721 .count(update)7722 increments the Designs update counter by 17723 .read(update)7724 returns the total number of update events7725 behaves like a redis usage counter7726 .count(delete)7727 increments the Designs delete counter by 17728 .read(delete)7729 returns the total number of delete events7730 behaves like a redis usage counter with totals7731 totals7732 can report all totals7733 unknown events7734 cannot increment7735 cannot read7736Resolvers::Ci::ProjectRunnersResolver7737 # order random7738 #resolve7739 when user cannot see runners7740 returns no runners7741 with user as project admin7742 returns all runners available to the project7743 with obj set to nil7744 raises an error7745 with obj not set to project7746 raises an error7747 Allowed query arguments7748 calls RunnersFinder with expected arguments7749Gitlab::Template::Finders::RepoTemplateFinder7750 #read7751 returns the content of the given path7752 raises an error if the path does not exist7753 #find7754 returns the full path of the found template7755 does not permit path traversal requests7756 #list_files_for7757 returns the full path of the found files7758Gitlab::UsageDataCounters::ProductivityAnalyticsCounter7759 behaves like a redis usage counter7760 .count(views)7761 increments the ProductivityAnalytics views counter by 17762 .read(views)7763 returns the total number of views events7764 behaves like a redis usage counter with totals7765 totals7766 can report all totals7767 unknown events7768 cannot increment7769 cannot read7770PersonalAccessTokenEntity7771 has the correct attributes7772Graphql::Arguments7773 returns a blank string if the arguments are blank7774 returns a serialized arguments if the arguments are not blank7775 supports merge with +7776 supports merge with + and a string7777 supports merge with + and a string when empty7778 supports merge with + and an empty string7779 serializes all values correctly7780Gitlab::Database::QueryAnalyzers::GitlabSchemasValidateConnection7781 properly observes all queries7782 for simple query observes schema correctly7783 is expected not to raise Exception7784 for query accessing gitlab_ci and gitlab_main7785 is expected to raise /The query tried to access \["projects", "ci_builds"\]/7786 for query accessing gitlab_ci and gitlab_main the gitlab_schemas is always ordered7787 is expected to raise /The query tried to access \["ci_builds", "projects"\]/7788 for query accessing main table from CI database7789 is expected to raise /The query tried to access \["projects"\]/7790 for query accessing CI database7791 is expected not to raise Exception7792 for query accessing CI table from main database7793 is expected to raise /The query tried to access \["ci_builds"\]/7794 when analyzer is enabled for tests7795 throws an error when trying to access a table that belongs to the gitlab_main schema from the ci database7796 throws an error when trying to access a table that belongs to the gitlab_ci schema from the main database7797GoogleCloud::EnableCloudsqlService7798 when a project does not have any GCP_PROJECT_IDs configured7799 creates GCP_PROJECT_ID project var7800 when a project has GCP_PROJECT_IDs configured7801 enables cloudsql, compute and service networking Google APIs7802 when Google APIs raise an error7803 returns error result7804Gitlab::SidekiqMiddleware::Monitor7805 #call7806 calls Gitlab::SidekiqDaemon::Monitor7807 passthroughs the return value7808 when cancel happens7809 skips the job7810 puts job in DeadSet7811Gitlab::GithubImport::Importer::PullRequests::ReviewRequestsImporter7812 # order random7813 #sequential_import7814 imports each project merge request reviewers7815 when merge request is already processed7816 doesn't import this merge request reviewers7817 #parallel_import7818 schedule import for each merge request reviewers7819 when merge request is already processed7820 doesn't schedule import this merge request reviewers7821Ci::PipelineScheduleVariable7822 behaves like CI variable7823 is expected to includes the Ci::HasVariable module7824 strips whitespaces when assigning key7825 can convert to runner variable7826 variable type7827 defines variable types7828 defaults variable type to env_var7829 supports variable type file7830RuboCop::Cop::UsageData::InstrumentationSuperclass7831 # order random7832 with class definition7833 when inheriting from allowed superclass7834 does not register an offense7835 when inheriting from some other superclass7836 registers an offense7837 when not inheriting7838 does not register an offense7839 with dynamic class definition7840 when inheriting from allowed superclass7841 does not register an offense7842 when inheriting from some other superclass7843 registers an offense7844 when not inheriting7845 does not register an offense7846Gitlab::GithubImport::ParallelImporter7847 .async?7848 returns true7849 .track_start_import7850 tracks the start of import7851 #execute7852 schedules the importing of the repository7853 sets the JID in Redis7854diagnostic reports7855 when GITLAB_DIAGNOSTIC_REPORTS_ENABLED is set to true7856 when run in Puma context7857 modifies worker startup hooks, starts Gitlab::Memory::ReportsDaemon7858 when GITLAB_MEMWD_DUMP_HEAP is set7859 writes scheduled heap dumps in on_worker_stop7860 when GITLAB_MEMWD_DUMP_HEAP is not set7861 does not write heap dumps7862 when run in non-Puma context, such as rails console, tests, Sidekiq7863 is expected not to receive instance(*(any args)) 0 times7864 when GITLAB_DIAGNOSTIC_REPORTS_ENABLED is not set7865 is expected not to receive instance(*(any args)) 0 times7866 when GITLAB_DIAGNOSTIC_REPORTS_ENABLED is set to false7867 is expected not to receive instance(*(any args)) 0 times7868Gitlab::ConanToken7869 .from_personal_access_token7870 sets access token and user id and does not use the token id7871 .from_job7872 sets access token id and user id7873 .from_deploy_token7874 sets access token id and user id7875 .decode7876 sets access token id and user id7877 returns nil for invalid JWT7878 returns nil for expired JWT7879 #to_jwt7880 returns the encoded JWT7881Evidences::ReleaseEntity7882 exposes the expected fields7883 when the release has milestones7884 exposes these milestones7885 when the release has no milestone7886 exposes an empty array for milestones7887Clusters::Agents::ImplicitAuthorization7888 is expected to eq #<Clusters::Agent id: 12, created_at: "2022-12-08 11:04:24.509411671 +0000", updated_at: "2022-12-08 ...671 +0000", project_id: 638, name: "agent-12", created_by_user_id: 1404, has_vulnerabilities: false>7889 is expected to eq 127890 is expected to eq #<Project id:638 namespace611/project716>>7891 is expected to eq {}7892Gitlab::Ci::Status::Created7893 #text7894 is expected to eq "created"7895 #label7896 is expected to eq "created"7897 #icon7898 is expected to eq "status_created"7899 #favicon7900 is expected to eq "favicon_status_created"7901 #group7902 is expected to eq "created"7903 #details_path7904 is expected to be nil7905FailedTests7906 # order random7907 #output_failed_test_files7908Creating output directory...7909 writes the file for the suite7910 empty report7911 does not fail for output files7912 returns empty results for suite failures7913 missing report file7914 does not fail for output files7915 returns empty results for suite failures7916 #failed_files_for_suite_collection7917 returns a list of failed file paths for suite collection7918 invalid report7919 does not fail for output files7920 returns empty results for suite failures7921CronjobQueue7922 sets the queue name of a worker7923 disables retrying of failed jobs7924 automatically clears project, user and namespace from the context7925 gets scheduled with caller_id set to Cronjob7926 gets root_caller_id from the cronjob7927 does not set the caller_id if there was already one in the context7928Gitlab::Ci::Build::Policy7929 .fabricate7930 when policy exists7931 fabricates and initializes relevant policy7932 when some policies are not defined7933 gracefully skips unknown policies7934 when passing a nil value as specs7935 returns an empty array7936Import/Export attribute configuration7937 has no new columns7938Gitlab::GithubImport::Stage::ImportBaseDataWorker7939 #import7940 imports the base data of a project7941 raises an error7942Gitlab::DiscussionsDiff::HighlightCache7943 #write_multiple7944 sets multiple keys serializing content as JSON7945 #read_multiple7946 reads multiple keys and serializes content into Gitlab::Diff::Line objects7947 returns nil when cached key is not found7948 returns lines which rich_text are HTML-safe7949 #clear_multiple7950 removes all named keys7951 only removed named keys7952Metrics::Dashboard::ScheduleAnnotationsPruneWorker7953 #perform7954 schedules annotations prune job with default cut off date7955Gitlab::GithubImport::Attachments::ImportIssueWorker7956 # order random7957 #import7958 imports an issue attachments7959OmniAuth::Strategies::OAuth27960 verifies the gem version7961 when a Faraday exception is raised7962 exception: Faraday::TimeoutError7963 passes the exception to OmniAuth7964 exception: Faraday::ConnectionFailed7965 passes the exception to OmniAuth7966Gitlab::Lazy7967 when not calling any methods7968 does not call the supplied block7969 when calling a method on the object7970 lazy loads the value returned by the block7971 #respond_to?7972 returns true for a method defined on the wrapped object7973 returns false for a method not defined on the wrapped object7974be_sorted7975 matches empty collections, regardless of arguments7976 matches in both directions7977 can match on a projection7978Gitlab::GithubImport::ObjectCounter7979 validates the operation being incremented7980 increments the counter and saves the key to be listed in the summary later7981 does not increment the counter if the given value is <= 07982 expires etag cache of relevant realtime change endpoints on increment7983Shard7984 .populate!7985 creates shards based on the config file7986 .by_name7987 returns an existing shard7988 creates a new shard7989 returns existing record if creation races7990Gitlab::SidekiqMiddleware::QueryAnalyzer7991 the PreventCrossDatabaseModification7992 #call7993 when there is a cross modification7994 detects cross modifications and tracks exception7995 when the detect_cross_database_modification is disabled7996 does not detect cross modifications7997 when there is no cross modification7998 does not log anything7999Gitlab::Ci::Config::Entry::Product::Variables8000 validations8001 when entry config value is correct8002 #value8003 returns hash with key value strings8004 #errors8005 does not append errors8006 #valid?8007 is valid8008 with only one variable8009 #valid?8010 is valid8011 #errors8012 does not append errors8013Gitlab::GithubImport::Stage::ImportPullRequestsWorker8014 raises an error8015 #import8016 imports all the pull requests8017AccessibilityErrorEntity8018 #as_json8019 when accessibility contains an error8020 contains correct accessibility error details8021Gitlab::Search::SortOptions8022 .sort_and_direction8023 using order_by and sort8024 returns matched options8025 using just sort8026 returns matched options8027 when unknown option8028 returns unknown8029Gitlab::Cache8030 #fetch_once8031 fetches from the cache once8032 always returns from the request store8033 .delete8034 calls Rails.cache.delete8035API::Entities::Clusters::Agent8036 includes basic fields8037shared/milestones/_issuables.html.haml8038 shows the issuables count if show_counter is true8039 does not show the issuables count if show_counter is false8040 a high issuables count8041 shows a delimited number if show_counter is true8042Gitlab::GithubImport::Attachments::ImportNoteWorker8043 # order random8044 #import8045 imports an release attachments8046Gitlab::GithubImport::Importer::IssueAndLabelLinksImporter8047 #execute8048 imports an issue and its labels8049Types::Packages::PackageBaseType8050 is expected to eq "Represents a package in the Package Registry"8051 is expected to require graphql authorizations :read_package8052 includes all expected fields8053Serializers::UnsafeJson8054 .dump8055 calls object#to_json with unsafe: true and returns the result8056 .load8057 calls JSON.load and returns the result8058Gitlab::Database::Partitioning::PartitionMonitoring8059 #report_metrics8060 reports number of present partitions8061 reports number of missing partitions8062 reports number of extra partitions8063Gitlab::ImportExport::Reader8064 #project_tree8065 delegates to AttributesFinder#find_root8066 when exception raised8067 is expected to equal false8068 logs the error8069 #group_members_tree8070 delegates to AttributesFinder#find_root8071Gitlab::UsageDataCounters::TrackUniqueEvents8072 tracking an event8073 when tracking successfully8074 when the application setting is enabled8075 when the target and the action is valid8076 tracks and counts the events as expected8077 when tracking unsuccessfully8078 target: Project(id: integer, name: string, path: string, description: text, created_at: datetime, updated_at: datetime, creator_id: integer, namespace_id: integer, last_activity_at: datetime, import_url: string, visibility_level: integer, archived: boolean, avatar: string, merge_requests_template: text, star_count: integer, merge_requests_rebase_enabled: boolean, import_type: string, import_source: string, approvals_before_merge: integer, reset_approvals_on_push: boolean, merge_requests_ff_only_enabled: boolean, issues_template: text, mirror: boolean, mirror_last_update_at: datetime, mirror_last_successful_update_at: datetime, mirror_user_id: integer, shared_runners_enabled: boolean, runners_token: string, build_allow_git_fetch: boolean, build_timeout: integer, mirror_trigger_builds: boolean, pending_delete: boolean, public_builds: boolean, last_repository_check_failed: boolean, last_repository_check_at: datetime, only_allow_merge_if_pipeline_succeeds: boolean, has_external_issue_tracker: boolean, repository_storage: string, repository_read_only: boolean, request_access_enabled: boolean, has_external_wiki: boolean, ci_config_path: string, lfs_enabled: boolean, description_html: text, only_allow_merge_if_all_discussions_are_resolved: boolean, repository_size_limit: integer, printing_merge_request_link_enabled: boolean, auto_cancel_pending_pipelines: integer, service_desk_enabled: boolean, cached_markdown_version: integer, delete_error: text, last_repository_updated_at: datetime, disable_overriding_approvers_per_merge_request: boolean, storage_version: integer, resolve_outdated_diff_discussions: boolean, remote_mirror_available_overridden: boolean, only_mirror_protected_branches: boolean, pull_mirror_available_overridden: boolean, jobs_cache_index: integer, external_authorization_classification_label: string, mirror_overwrites_diverged_branches: boolean, pages_https_only: boolean, external_webhook_token: string, packages_enabled: boolean, merge_requests_author_approval: boolean, pool_repository_id: integer, runners_token_encrypted: string, bfg_object_map: string, detected_repository_languages: boolean, merge_requests_disable_committers_approval: boolean, require_password_to_approve: boolean, emails_disabled: boolean, max_pages_size: integer, max_artifacts_size: integer, pull_mirror_branch_prefix: string, remove_source_branch_after_merge: boolean, marked_for_deletion_at: date, marked_for_deletion_by_user_id: integer, autoclose_referenced_issues: boolean, suggestion_commit_message: string, project_namespace_id: integer, hidden: boolean), action: :invalid_action8079 returns the expected values8080 target: :invalid_target, action: :pushed8081 returns the expected values8082 target: Project(id: integer, name: string, path: string, description: text, created_at: datetime, updated_at: datetime, creator_id: integer, namespace_id: integer, last_activity_at: datetime, import_url: string, visibility_level: integer, archived: boolean, avatar: string, merge_requests_template: text, star_count: integer, merge_requests_rebase_enabled: boolean, import_type: string, import_source: string, approvals_before_merge: integer, reset_approvals_on_push: boolean, merge_requests_ff_only_enabled: boolean, issues_template: text, mirror: boolean, mirror_last_update_at: datetime, mirror_last_successful_update_at: datetime, mirror_user_id: integer, shared_runners_enabled: boolean, runners_token: string, build_allow_git_fetch: boolean, build_timeout: integer, mirror_trigger_builds: boolean, pending_delete: boolean, public_builds: boolean, last_repository_check_failed: boolean, last_repository_check_at: datetime, only_allow_merge_if_pipeline_succeeds: boolean, has_external_issue_tracker: boolean, repository_storage: string, repository_read_only: boolean, request_access_enabled: boolean, has_external_wiki: boolean, ci_config_path: string, lfs_enabled: boolean, description_html: text, only_allow_merge_if_all_discussions_are_resolved: boolean, repository_size_limit: integer, printing_merge_request_link_enabled: boolean, auto_cancel_pending_pipelines: integer, service_desk_enabled: boolean, cached_markdown_version: integer, delete_error: text, last_repository_updated_at: datetime, disable_overriding_approvers_per_merge_request: boolean, storage_version: integer, resolve_outdated_diff_discussions: boolean, remote_mirror_available_overridden: boolean, only_mirror_protected_branches: boolean, pull_mirror_available_overridden: boolean, jobs_cache_index: integer, external_authorization_classification_label: string, mirror_overwrites_diverged_branches: boolean, pages_https_only: boolean, external_webhook_token: string, packages_enabled: boolean, merge_requests_author_approval: boolean, pool_repository_id: integer, runners_token_encrypted: string, bfg_object_map: string, detected_repository_languages: boolean, merge_requests_disable_committers_approval: boolean, require_password_to_approve: boolean, emails_disabled: boolean, max_pages_size: integer, max_artifacts_size: integer, pull_mirror_branch_prefix: string, remove_source_branch_after_merge: boolean, marked_for_deletion_at: date, marked_for_deletion_by_user_id: integer, autoclose_referenced_issues: boolean, suggestion_commit_message: string, project_namespace_id: integer, hidden: boolean), action: :created8083 returns the expected values8084Gitlab::Middleware::ReleaseEnv8085 #call8086 calls the app and clears the env8087Gitlab::QueryLimiting::ActiveSupportSubscriber8088 #sql8089 increments the number of executed SQL queries8090 when the query is actually a rails cache hit8091 does not increment the number of executed SQL queries8092Gitlab::DependencyLinker::Parser::Gemfile8093 #parse8094 returns parsed packages8095 packages respond to name and external_ref accordingly8096Create security training providers in development8097 # order random8098 behaves like security training providers importer8099OK8100 upserts security training providers8101Types::Kas::AgentConfigurationType8102 is expected to eq "AgentConfiguration"8103 is expected to eq "Configuration details for an Agent"8104 is expected to have graphql fields :agent_name8105BlocksUnsafeSerialization8106 behaves like blocks unsafe serialization8107 blocks as_json8108 blocks to_json8109Mattermost::Client8110 JSON parse error8111 yields an error on malformed JSON8112/builds/gitlab-org/gitlab/spec/lib/mattermost/client_spec.rb:12: warning: redefining constant Struct::Request8113 shows a client error if the request was unsuccessful8114Gitlab::Pagination::Keyset::InOperatorOptimization::Strategies::RecordLoaderStrategy8115 #initializer_columns8116 returns a NULL table row as the result column8117 #columns8118 uses the finder query to load the row in the result column8119Types::ContainerRepositoryCleanupStatusEnum8120 exposes all statuses8121Gitlab::GithubImport::Representation::LfsObject8122 #github_identifiers8123 returns a hash with needed identifiers8124Gitlab::MultiDestinationLogger8125 with no primary logger set8126 primary_logger raises an error8127 with 2 loggers set8128 logs info to 2 loggers8129Gitlab::Ci::Pipeline::Metrics8130 .pipeline_creation_step_duration_histogram8131 adds the step to the step duration histogram8132InstanceMetadata8133 has the correct properties8134JiraConnectInstallations::ProxyLifecycleEventService8135 # order random8136 .execute8137 creates an instance and calls execute8138 .new8139 creates an internal duplicate of the installation and sets the instance_url8140 with unknown event8141 raises an error8142 #execute8143 when installed event8144 behaves like sends the event hook8145 returns a ServiceResponse8146 sends an installed event to the instance8147 creates the JWT token with the event and installation8148 and the instance responds with an error8149 returns an error ServiceResponse8150 logs the error response8151 and the request raises an error8152 returns an error ServiceResponse8153 when uninstalled event8154 behaves like sends the event hook8155 returns a ServiceResponse8156 sends an installed event to the instance8157 creates the JWT token with the event and installation8158 and the instance responds with an error8159 returns an error ServiceResponse8160 logs the error response8161 and the request raises an error8162 returns an error ServiceResponse8163Knapsack report was generated. Preview:8164{8165 "spec/db/migration_spec.rb": 64.92422169799988,8166 "spec/services/groups/destroy_service_spec.rb": 107.81810611700007,8167 "spec/services/ci/create_pipeline_service_spec.rb": 78.87593628499985,8168 "spec/lib/banzai/filter/references/external_issue_reference_filter_spec.rb": 23.837190532000022,8169 "spec/policies/ci/build_policy_spec.rb": 51.84276561799993,8170 "spec/models/design_management/design_spec.rb": 23.784306687000026,8171 "spec/policies/note_policy_spec.rb": 41.34918228200013,8172 "spec/services/groups/update_service_spec.rb": 44.156797435000044,8173 "spec/models/integrations/mattermost_spec.rb": 27.574141003000022,8174 "spec/routing/routing_spec.rb": 41.802917901999535,8175 "spec/lib/gitlab/import_export/references_configuration_spec.rb": 11.314963399000135,8176 "spec/services/environments/stop_service_spec.rb": 33.438678413999696,8177 "spec/services/merge_requests/rebase_service_spec.rb": 25.854984750999847,8178 "spec/helpers/namespaces_helper_spec.rb": 21.993737276999582,8179 "spec/services/projects/move_forks_service_spec.rb": 23.5921006829999,8180 "spec/models/operations/feature_flag_spec.rb": 14.884340172000066,8181 "spec/lib/container_registry/tag_spec.rb": 19.06071497799985,8182 "spec/lib/gitlab/ci/config/entry/reports_spec.rb": 3.4517782050002097,8183 "spec/lib/gitlab/usage/metric_definition_spec.rb": 7.091370585999812,8184 "spec/lib/gitlab/database/with_lock_retries_outside_transaction_spec.rb": 15.26897896399987,8185 "spec/lib/api/helpers/packages/dependency_proxy_helpers_spec.rb": 4.34553456499998,8186 "spec/services/issues/build_service_spec.rb": 14.87549838599989,8187 "spec/lib/banzai/filter/references/project_reference_filter_spec.rb": 16.052378993000275,8188 "spec/services/ci/job_artifacts/destroy_batch_service_spec.rb": 16.376216979999754,8189 "spec/lib/gitlab/import_export/import_failure_service_spec.rb": 15.382852279999952,8190 "spec/services/labels/promote_service_spec.rb": 11.022893415999988,8191 "spec/models/customer_relations/contact_spec.rb": 6.104046101000222,8192 "spec/models/clusters/clusters_hierarchy_spec.rb": 21.532982407999953,8193 "spec/services/issuable/destroy_service_spec.rb": 15.484330112999942,8194 "spec/lib/gitlab/ci/pipeline/chain/command_spec.rb": 6.913691093000125,8195 "spec/lib/gitlab/database/background_migration/batched_job_spec.rb": 5.8547763740002665,8196 "spec/workers/incident_management/process_alert_worker_v2_spec.rb": 9.95743794100008,8197 "spec/lib/gitlab/logger_spec.rb": 2.4846750679998877,8198 "spec/helpers/icons_helper_spec.rb": 3.3124515970002903,8199 "spec/lib/gitlab/ci/config/entry/bridge_spec.rb": 4.0500670290002745,8200 "spec/models/hooks/active_hook_filter_spec.rb": 5.055318842999895,8201 "spec/lib/gitlab/template_parser/ast_spec.rb": 5.598149760999604,8202 "spec/services/award_emojis/destroy_service_spec.rb": 10.896806618000028,8203 "spec/services/issue_links/create_service_spec.rb": 11.14248311099982,8204 "spec/models/personal_snippet_spec.rb": 2.607658614999764,8205 "spec/serializers/ci/lint/result_serializer_spec.rb": 4.331432771999971,8206 "spec/models/packages/conan/file_metadatum_spec.rb": 9.553326102000028,8207 "spec/lib/gitlab/database/load_balancing/transaction_leaking_spec.rb": 10.552027866000117,8208 "spec/lib/gitlab/data_builder/deployment_spec.rb": 7.616608389000248,8209 "spec/services/work_items/create_from_task_service_spec.rb": 6.862575169000138,8210 "spec/lib/gitlab/performance_bar_spec.rb": 5.545799410999734,8211 "spec/lib/gitlab/manifest_import/project_creator_spec.rb": 6.465505989000121,8212 "spec/services/clusters/agent_tokens/create_service_spec.rb": 7.255210747999627,8213 "spec/services/service_ping/submit_service_ping_service_spec.rb": 3.7507629870001438,8214 "spec/finders/tags_finder_spec.rb": 2.629913145000046,8215 "spec/lib/gitlab/database/postgres_index_spec.rb": 3.051155292999738,8216 "spec/models/projects/topic_spec.rb": 3.2587304090002362,8217 "spec/lib/gitlab/ci/config/entry/service_spec.rb": 1.5609742909996385,8218 "spec/lib/gitlab/optimistic_locking_spec.rb": 7.410475614000006,8219 "spec/services/users/set_status_service_spec.rb": 3.4922525730003144,8220 "spec/lib/gitlab/middleware/multipart_spec.rb": 1.96698133100017,8221 "spec/models/lfs_file_lock_spec.rb": 4.547707966999951,8222 "spec/lib/gitlab/database/load_balancing/connection_proxy_spec.rb": 2.267321493000054,8223 "spec/lib/gitlab/http_io_spec.rb": 2.000860719999764,8224 "spec/lib/gitlab/slash_commands/presenters/issue_move_spec.rb": 4.7118739319998895,8225 "spec/workers/gitlab/jira_import/stuck_jira_import_jobs_worker_spec.rb": 3.871580453000206,8226 "spec/workers/ci/drop_pipeline_worker_spec.rb": 3.956669221000084,8227 "spec/lib/gitlab/ci/status/stage/common_spec.rb": 3.344727656000032,8228 "spec/lib/gitlab/jwt_authenticatable_spec.rb": 1.7012853070000347,8229 "spec/finders/metrics/users_starred_dashboards_finder_spec.rb": 4.327394441999786,8230 "spec/lib/gitlab/diff/position_tracer_spec.rb": 4.409801688999778,8231 "spec/services/uploads/destroy_service_spec.rb": 3.582536691000314,8232 "spec/lib/gitlab/tracking/standard_context_spec.rb": 2.003517880000345,8233 "spec/components/pajamas/alert_component_spec.rb": 1.5500470409997433,8234 "spec/views/projects/merge_requests/_commits.html.haml_spec.rb": 5.865693922999981,8235 "spec/lib/gitlab/ci/config/entry/include/rules/rule_spec.rb": 1.05150671399997,8236 "spec/finders/sentry_issue_finder_spec.rb": 5.906695711999873,8237 "spec/db/production/settings_spec.rb": 3.891626592999728,8238 "spec/lib/banzai/filter/custom_emoji_filter_spec.rb": 2.76319064099971,8239 "spec/services/packages/conan/create_package_file_service_spec.rb": 6.2624533329999394,8240 "spec/services/incident_management/issuable_escalation_statuses/prepare_update_service_spec.rb": 3.216130769999836,8241 "spec/services/gpg_keys/create_service_spec.rb": 4.324518521999835,8242 "spec/lib/gitlab/wiki_pages/front_matter_parser_spec.rb": 1.3348726570002327,8243 "spec/services/draft_notes/destroy_service_spec.rb": 5.279364817999976,8244 "spec/models/project_export_job_spec.rb": 4.0754752089997055,8245 "spec/lib/gitlab/ci/config/entry/allow_failure_spec.rb": 1.008403515000282,8246 "spec/workers/concerns/gitlab/github_import/rescheduling_methods_spec.rb": 1.7323712369998248,8247 "spec/lib/atlassian/jira_connect/jwt/symmetric_spec.rb": 0.9303711569996267,8248 "spec/helpers/projects/error_tracking_helper_spec.rb": 1.8088040749998981,8249 "spec/policies/packages/policies/group_policy_spec.rb": 2.4026025399998616,8250 "spec/views/profiles/keys/_key.html.haml_spec.rb": 1.5040291029999935,8251 "spec/lib/gitlab/graphql/markdown_field_spec.rb": 1.9788888600000973,8252 "spec/lib/gitlab/graphql/lazy_spec.rb": 0.8767608280004424,8253 "spec/lib/gitlab/auth/ldap/adapter_spec.rb": 1.3498053759999493,8254 "spec/services/clusters/aws/authorize_role_service_spec.rb": 2.615884185000141,8255 "spec/lib/gitlab/github_import/representation/protected_branch_spec.rb": 1.0243147340001997,8256 "spec/lib/gitlab/dependency_linker_spec.rb": 1.2471737689998008,8257 "spec/models/packages/debian/group_distribution_key_spec.rb": 1.9345241920000262,8258 "spec/lib/gitlab/ci/variables/builder/project_spec.rb": 1.6846798080000553,8259 "spec/lib/banzai/filter/wiki_link_filter_spec.rb": 1.5463991010001337,8260 "spec/lib/gitlab/graphql/loaders/batch_commit_loader_spec.rb": 2.02507100899993,8261 "spec/services/pages_domains/create_acme_order_service_spec.rb": 4.387903731000279,8262 "spec/services/security/ci_configuration/container_scanning_create_service_spec.rb": 3.5934370879999733,8263 "spec/rubocop/cop/rspec/factories_in_migration_specs_spec.rb": 0.9844137700001738,8264 "spec/lib/gitlab/ci/config/entry/kubernetes_spec.rb": 0.9855042799999865,8265 "spec/rubocop/cop/put_project_routes_under_scope_spec.rb": 0.949052631000086,8266 "spec/workers/integrations/irker_worker_spec.rb": 2.124902176999967,8267 "spec/views/layouts/terms.html.haml_spec.rb": 3.3170165030001044,8268 "spec/serializers/issue_board_entity_spec.rb": 1.784841484000026,8269 "spec/tooling/rspec_flaky/flaky_example_spec.rb": 1.1914756070000294,8270 "spec/lib/gitlab/gl_repository_spec.rb": 1.8292079440002453,8271 "spec/lib/gitlab/jira_import/metadata_collector_spec.rb": 0.7809141039997485,8272 "spec/lib/gitlab/gon_helper_spec.rb": 1.090873288000239,8273 "spec/rubocop/cop/gitlab/module_with_instance_variables_spec.rb": 0.7950017039997874,8274 "spec/lib/gitlab/github_import/parallel_scheduling_spec.rb": 1.6207142680000288,8275 "spec/lib/gitlab/ci/reports/sbom/component_spec.rb": 1.1772573469997951,8276 "spec/experiments/ios_specific_templates_experiment_spec.rb": 2.676898956000059,8277 "spec/graphql/mutations/terraform/state/unlock_spec.rb": 2.0550781289998667,8278 "spec/workers/ci/merge_requests/add_todo_when_build_fails_worker_spec.rb": 2.6194669669998802,8279 "spec/lib/generators/gitlab/snowplow_event_definition_generator_spec.rb": 0.5385990690001563,8280 "spec/views/projects/jobs/_build.html.haml_spec.rb": 2.8180775239998184,8281 "spec/lib/gitlab/reactive_cache_set_cache_spec.rb": 1.2001506060000793,8282 "spec/services/ci/deployments/destroy_service_spec.rb": 2.0258002299997315,8283 "spec/services/issues/after_create_service_spec.rb": 1.7501715339999464,8284 "spec/graphql/mutations/alert_management/create_alert_issue_spec.rb": 3.163438567000412,8285 "spec/lib/gitlab/database/postgresql_adapter/empty_query_ping_spec.rb": 0.5524665279999681,8286 "spec/presenters/award_emoji_presenter_spec.rb": 0.6610523659996943,8287 "spec/services/ci/create_pipeline_service/custom_config_content_spec.rb": 2.79956118400014,8288 "spec/services/dependency_proxy/find_cached_manifest_service_spec.rb": 1.3960779419999199,8289 "spec/lib/gitlab/auth/saml/identity_linker_spec.rb": 1.6903989559996262,8290 "spec/views/devise/sessions/new.html.haml_spec.rb": 1.3628985029999967,8291 "spec/lib/gitlab/git/merge_base_spec.rb": 1.943502200000239,8292 "spec/rubocop/cop/rspec/expect_gitlab_tracking_spec.rb": 0.8681553920000624,8293 "spec/workers/pipeline_notification_worker_spec.rb": 1.2083861559999605,8294 "spec/serializers/analytics_summary_serializer_spec.rb": 1.3329232329997467,8295 "spec/workers/jira_connect/sync_feature_flags_worker_spec.rb": 1.3171248330004346,8296 "spec/policies/project_hook_policy_spec.rb": 2.1964956649999294,8297 "spec/graphql/types/untrusted_regexp_spec.rb": 0.8354952630002117,8298 "spec/workers/schedule_merge_request_cleanup_refs_worker_spec.rb": 0.8786109020002186,8299 "spec/workers/auto_merge_process_worker_spec.rb": 1.9578505200001928,8300 "spec/presenters/packages/nuget/search_results_presenter_spec.rb": 1.3510756430000583,8301 "spec/lib/gitlab/memory/watchdog/monitor/heap_fragmentation_spec.rb": 0.6552803170002335,8302 "spec/rubocop/cop/api/grape_array_missing_coerce_spec.rb": 0.7278153860002021,8303 "spec/lib/sidebars/groups/menus/kubernetes_menu_spec.rb": 1.0239703090001058,8304 "spec/lib/gitlab/database/unidirectional_copy_trigger_spec.rb": 1.252076064999983,8305 "spec/graphql/mutations/clusters/agent_tokens/create_spec.rb": 1.4586221009999463,8306 "spec/lib/gitlab/git/repository_cleaner_spec.rb": 2.4768873609996263,8307 "spec/graphql/types/merge_requests/author_type_spec.rb": 0.5458895889996711,8308 "spec/graphql/resolvers/users/group_count_resolver_spec.rb": 1.927552550999735,8309 "spec/graphql/types/work_items/widgets/start_and_due_date_update_input_type_spec.rb": 0.9309511910000765,8310 "spec/lib/gitlab/github_import/representation_spec.rb": 0.5765237580003486,8311 "spec/policies/ci/bridge_policy_spec.rb": 2.306593082999825,8312 "spec/services/packages/go/sync_packages_service_spec.rb": 2.0729899580001074,8313 "spec/services/packages/nuget/sync_metadatum_service_spec.rb": 2.0250926399999116,8314 "spec/lib/bulk_imports/file_downloads/validations_spec.rb": 0.8233819629999743,8315 "spec/lib/gitlab/kubernetes/deployment_spec.rb": 0.8325823730001503,8316 "spec/views/dashboard/projects/_blank_state_welcome.html.haml_spec.rb": 1.146918646999893,8317 "spec/graphql/types/commit_signatures/ssh_signature_type_spec.rb": 0.752254824999909,8318 "spec/lib/gitlab/app_logger_spec.rb": 0.8381922730000042,8319 "spec/graphql/resolvers/clusters/agent_activity_events_resolver_spec.rb": 2.698369386000195,8320 "spec/lib/gitlab/request_endpoints_spec.rb": 0.8767586620001566,8321 "spec/lib/gitlab/usage_data_counters/designs_counter_spec.rb": 1.077987808999751,8322 "spec/graphql/resolvers/ci/project_runners_resolver_spec.rb": 1.617538617000264,8323 "spec/lib/gitlab/template/finders/repo_template_finders_spec.rb": 1.6600545969999985,8324 "spec/lib/gitlab/usage_data_counters/productivity_analytics_counter_spec.rb": 0.80728018300033,8325 "spec/serializers/personal_access_token_entity_spec.rb": 0.5705661389997658,8326 "spec/support_specs/graphql/arguments_spec.rb": 0.8267386829998031,8327 "spec/lib/gitlab/database/query_analyzers/gitlab_schemas_validate_connection_spec.rb": 1.2100502959997357,8328 "spec/services/google_cloud/enable_cloudsql_service_spec.rb": 1.2746787249998306,8329 "spec/lib/gitlab/sidekiq_middleware/monitor_spec.rb": 0.6645288269996854,8330 "spec/lib/gitlab/github_import/importer/pull_requests/review_requests_importer_spec.rb": 1.4961934400002974,8331 "spec/models/ci/pipeline_schedule_variable_spec.rb": 0.751637374999973,8332 "spec/rubocop/cop/usage_data/instrumentation_superclass_spec.rb": 0.6447509969998464,8333 "spec/lib/gitlab/github_import/parallel_importer_spec.rb": 1.4936356400003206,8334 "spec/initializers/diagnostic_reports_spec.rb": 0.6913093759999356,8335 "spec/lib/gitlab/conan_token_spec.rb": 0.5617578490000597,8336 "spec/serializers/evidences/release_entity_spec.rb": 0.9093878210001094,8337 "spec/models/clusters/agents/implicit_authorization_spec.rb": 1.0895560979997754,8338 "spec/lib/gitlab/ci/status/created_spec.rb": 0.6124666880000404,8339 "spec/scripts/failed_tests_spec.rb": 0.7572151549998125,8340 "spec/workers/concerns/cronjob_queue_spec.rb": 0.5964833279999766,8341 "spec/lib/gitlab/ci/build/policy_spec.rb": 0.5889925280002899,8342 "spec/lib/gitlab/import_export/attribute_configuration_spec.rb": 0.6924590160001571,8343 "spec/workers/gitlab/github_import/stage/import_base_data_worker_spec.rb": 1.207408246000341,8344 "spec/lib/gitlab/discussions_diff/highlight_cache_spec.rb": 0.7702085639998586,8345 "spec/workers/metrics/dashboard/schedule_annotations_prune_worker_spec.rb": 0.45724206100021547,8346 "spec/workers/gitlab/github_import/attachments/import_issue_worker_spec.rb": 0.8228314629996021,8347 "spec/initializers/100_patch_omniauth_oauth2_spec.rb": 0.6024276370003463,8348 "spec/lib/gitlab/lazy_spec.rb": 0.6053293280001526,8349 "spec/support_specs/matchers/be_sorted_spec.rb": 0.8089653140000337,8350 "spec/lib/gitlab/github_import/object_counter_spec.rb": 0.8705235529996571,8351 "spec/models/shard_spec.rb": 0.792707633000191,8352 "spec/lib/gitlab/sidekiq_middleware/query_analyzer_spec.rb": 0.9165729010001087,8353 "spec/lib/gitlab/ci/config/entry/product/variables_spec.rb": 0.6881548360001943,8354 "spec/workers/gitlab/github_import/stage/import_pull_requests_worker_spec.rb": 0.9161596419999114,8355 "spec/serializers/accessibility_error_entity_spec.rb": 0.7354380450001372,8356 "spec/lib/gitlab/search/sort_options_spec.rb": 0.5288710590002665,8357 "spec/lib/gitlab/cache_spec.rb": 0.5030898200002412,8358 "spec/lib/api/entities/clusters/agent_spec.rb": 1.2624860649998482,8359 "spec/views/shared/milestones/_issuables.html.haml_spec.rb": 1.0261703290002515,8360 "spec/workers/gitlab/github_import/attachments/import_note_worker_spec.rb": 0.9283356109999659,8361 "spec/lib/gitlab/github_import/importer/issue_and_label_links_importer_spec.rb": 0.7726151750002828,8362 "spec/graphql/types/packages/package_base_type_spec.rb": 0.4965055200000279,8363 "spec/lib/serializers/unsafe_json_spec.rb": 0.5243225100002746,8364 "spec/lib/gitlab/database/partitioning/partition_monitoring_spec.rb": 0.5185429399998611,8365 "spec/lib/gitlab/import_export/reader_spec.rb": 0.500150979999944,8366 "spec/lib/gitlab/usage_data_counters/track_unique_events_spec.rb": 0.5348517190000166,8367 "spec/lib/gitlab/middleware/release_env_spec.rb": 0.5288914899997508,8368 "spec/lib/gitlab/query_limiting/active_support_subscriber_spec.rb": 0.9127193220001573,8369 "spec/lib/gitlab/dependency_linker/parser/gemfile_spec.rb": 0.578227939000044,8370 "spec/db/development/add_security_training_providers_spec.rb": 0.4529782820000037,8371 "spec/graphql/types/kas/agent_configuration_type_spec.rb": 0.6003838390001874,8372 "spec/models/concerns/blocks_unsafe_serialization_spec.rb": 0.938051689999611,8373 "spec/lib/mattermost/client_spec.rb": 0.8004662950002057,8374 "spec/lib/gitlab/pagination/keyset/in_operator_optimization/strategies/record_loader_strategy_spec.rb": 0.4135567620000984,8375 "spec/graphql/types/container_repository_cleanup_status_enum_spec.rb": 0.6149184379996768,8376 "spec/lib/gitlab/github_import/representation/lfs_object_spec.rb": 0.4391048010002123,8377 "spec/lib/gitlab/multi_destination_logger_spec.rb": 0.6283092369999395,8378 "spec/lib/gitlab/ci/pipeline/metrics_spec.rb": 0.40855164200002037,8379 "spec/models/instance_metadata_spec.rb": 0.6340477470002952,8380 "spec/services/jira_connect_installations/proxy_lifecycle_event_service_spec.rb": 1.64032782699996468381}8382Knapsack global time execution for tests: 20m 09s8383Pending: (Failures listed here are expected and do not affect your suite's status)8384 1) Ci::CreatePipelineService#execute Pipeline for external pull requests when source is external pull request when config has external_pull_requests keywords when external pull request is specified when pull request is created from fork does not create an external pull request pipeline8385 # Not yet implemented8386 # ./spec/services/ci/create_pipeline_service_spec.rb:14108387 2) DesignManagement::Design behaves like AtomicInternalId .has_internal_id Validation when presence validation is not required when creating an object does not raise an error if the internal id is blank8388 # No reason given8389 # ./spec/support/shared_examples/models/atomic_internal_id_shared_examples.rb:498390 3) DesignManagement::Design behaves like AtomicInternalId .has_internal_id Validation when presence validation is not required when updating an object does not raise an error if the internal id is blank8391 # No reason given8392 # ./spec/support/shared_examples/models/atomic_internal_id_shared_examples.rb:578393 4) DesignManagement::Design behaves like AtomicInternalId .has_internal_id supply of internal ids provides a persistent supply of IID values, sensitive to the current state8394 # around hook at ./spec/support/flaky_tests.rb:21 did not execute the example8395 # ./spec/support/shared_examples/models/atomic_internal_id_shared_examples.rb:1728396 5) Operations::FeatureFlag validations behaves like AtomicInternalId .has_internal_id Validation when presence validation is not required when creating an object does not raise an error if the internal id is blank8397 # No reason given8398 # ./spec/support/shared_examples/models/atomic_internal_id_shared_examples.rb:498399 6) Operations::FeatureFlag validations behaves like AtomicInternalId .has_internal_id Validation when presence validation is not required when updating an object does not raise an error if the internal id is blank8400 # No reason given8401 # ./spec/support/shared_examples/models/atomic_internal_id_shared_examples.rb:578402Finished in 20 minutes 13 seconds (files took 1 minute 16.75 seconds to load)84035427 examples, 0 failures, 6 pending8404Randomized with seed 12368405[TEST PROF INFO] Time spent in factories: 08:42.061 (41.78% of total time)8406RSpec exited with 0.8407No examples to retry, congrats!8409Not uploading cache ruby-gems-debian-bullseye-ruby-2.7-16 due to policy8410Not uploading cache gitaly-ruby-gems-debian-bullseye-ruby-2.7-16 due to policy8412Uploading artifacts...8413coverage/: found 5 matching files and directories 8414crystalball/: found 2 matching files and directories 8415deprecations/: found 7 matching files and directories 8416knapsack/: found 3 matching files and directories 8417WARNING: query_recorder/: no matching files. Ensure that the artifact path is relative to the working directory 8418rspec/: found 12 matching files and directories 8419WARNING: tmp/capybara/: no matching files. Ensure that the artifact path is relative to the working directory 8420log/*.log: found 19 matching files and directories 8421WARNING: Upload request redirected location=https://gitlab.com/api/v4/jobs/3443740982/artifacts?artifact_format=zip&artifact_type=archive&expire_in=31d new-url=https://gitlab.com8422WARNING: Retrying... context=artifacts-uploader error=request redirected8423Uploading artifacts as "archive" to coordinator... 201 Created id=3443740982 responseStatus=201 Created token=_eqE6JDR8424Uploading artifacts...8425rspec/junit_rspec.xml: found 1 matching files and directories 8426WARNING: Upload request redirected location=https://gitlab.com/api/v4/jobs/3443740982/artifacts?artifact_format=gzip&artifact_type=junit&expire_in=31d new-url=https://gitlab.com8427WARNING: Retrying... context=artifacts-uploader error=request redirected8428Uploading artifacts as "junit" to coordinator... 201 Created id=3443740982 responseStatus=201 Created token=_eqE6JDR8430Job succeeded