Commit 405694a5d683d9a784d1c07d3d65713a0c898908

Authored by Dmitriy Zaporozhets
1 parent 7bb2a536

do not remove merge requests when fork project destroyed

Signed-off-by: Dmitriy Zaporozhets <dmitriy.zaporozhets@gmail.com>
Showing 1 changed file with 7 additions and 3 deletions   Show diff stats
app/models/project.rb
... ... @@ -55,11 +55,15 @@ class Project &lt; ActiveRecord::Base
55 55 has_one :forked_project_link, dependent: :destroy, foreign_key: "forked_to_project_id"
56 56 has_one :forked_from_project, through: :forked_project_link
57 57  
58   - has_many :services, dependent: :destroy
59   - has_many :events, dependent: :destroy
  58 + # Merge Requests for target project should be removed with it
60 59 has_many :merge_requests, dependent: :destroy, foreign_key: "target_project_id"
61   - has_many :fork_merge_requests,dependent: :destroy, foreign_key: "source_project_id", class_name: MergeRequest
  60 +
  61 + # Merge requests from source project should be kept when source project was removed
  62 + has_many :fork_merge_requests, foreign_key: "source_project_id", class_name: MergeRequest
  63 +
62 64 has_many :issues, -> { order "state DESC, created_at DESC" }, dependent: :destroy
  65 + has_many :services, dependent: :destroy
  66 + has_many :events, dependent: :destroy
63 67 has_many :milestones, dependent: :destroy
64 68 has_many :notes, dependent: :destroy
65 69 has_many :snippets, dependent: :destroy, class_name: "ProjectSnippet"
... ...