19 lines
501 B
Ruby
19 lines
501 B
Ruby
![]() |
# frozen_string_literal: true
|
||
|
|
||
|
class AddGroupOrProjectConstraintInProtectedBranches < Gitlab::Database::Migration[2.0]
|
||
|
disable_ddl_transaction!
|
||
|
|
||
|
CONSTRAINT_NAME = 'protected_branches_project_id_namespace_id_any_not_null'
|
||
|
|
||
|
def up
|
||
|
constraint = <<~CONSTRAINT
|
||
|
(project_id IS NULL) <> (namespace_id IS NULL)
|
||
|
CONSTRAINT
|
||
|
add_check_constraint :protected_branches, constraint, CONSTRAINT_NAME
|
||
|
end
|
||
|
|
||
|
def down
|
||
|
remove_check_constraint :protected_branches, CONSTRAINT_NAME
|
||
|
end
|
||
|
end
|