Commit f5c4bda8fe53549f2ba63484359543f272954a61
1 parent
4f670fbe
Exists in
spb-stable
and in
2 other branches
Improve MR seeds
Signed-off-by: Dmitriy Zaporozhets <dmitriy.zaporozhets@gmail.com>
Showing
1 changed file
with
29 additions
and
41 deletions
Show diff stats
db/fixtures/development/10_merge_requests.rb
| 1 | 1 | Gitlab::Seeder.quiet do |
| 2 | - (1..100).each do |i| | |
| 3 | - # Random Project | |
| 4 | - project = Project.all.sample | |
| 5 | - | |
| 6 | - # Random user | |
| 7 | - user = project.team.users.sample | |
| 8 | - | |
| 9 | - next unless user | |
| 10 | - | |
| 11 | - next if project.empty_repo? | |
| 12 | - | |
| 13 | - branches = project.repository.branch_names.sample(2) | |
| 14 | - | |
| 15 | - next if branches.uniq.size < 2 | |
| 16 | - | |
| 17 | - user_id = user.id | |
| 18 | - | |
| 19 | - Gitlab::Seeder.by_user(user) do | |
| 20 | - MergeRequest.seed(:id, [{ | |
| 21 | - id: i, | |
| 22 | - source_branch: branches.first, | |
| 23 | - target_branch: branches.last, | |
| 24 | - source_project_id: project.id, | |
| 25 | - target_project_id: project.id, | |
| 26 | - author_id: user_id, | |
| 27 | - assignee_id: user_id, | |
| 28 | - milestone: project.milestones.sample, | |
| 29 | - title: Faker::Lorem.sentence(6) | |
| 30 | - }]) | |
| 2 | + Project.all.reject(&:empty_repo?).each do |project| | |
| 3 | + branches = project.repository.branch_names | |
| 4 | + | |
| 5 | + branches.each do |branch_name| | |
| 6 | + break if branches.size < 2 | |
| 7 | + source_branch = branches.pop | |
| 8 | + target_branch = branches.pop | |
| 9 | + | |
| 10 | + # Random user | |
| 11 | + user = project.team.users.sample | |
| 12 | + next unless user | |
| 13 | + | |
| 14 | + params = { | |
| 15 | + source_branch: source_branch, | |
| 16 | + target_branch: target_branch, | |
| 17 | + title: Faker::Lorem.sentence(6), | |
| 18 | + description: Faker::Lorem.sentences(3).join(" ") | |
| 19 | + } | |
| 20 | + | |
| 21 | + merge_request = MergeRequests::CreateService.new(project, user, params).execute | |
| 22 | + | |
| 23 | + if merge_request.valid? | |
| 24 | + merge_request.assignee = user | |
| 25 | + merge_request.milestone = project.milestones.sample | |
| 26 | + merge_request.save | |
| 27 | + print '.' | |
| 28 | + else | |
| 29 | + print 'F' | |
| 30 | + end | |
| 31 | 31 | end |
| 32 | - print('.') | |
| 33 | 32 | end |
| 34 | 33 | end |
| 35 | - | |
| 36 | -MergeRequest.all.map do |mr| | |
| 37 | - mr.set_iid | |
| 38 | - mr.save | |
| 39 | -end | |
| 40 | - | |
| 41 | -puts 'Load diffs for Merge Requests (it will take some time)...' | |
| 42 | -MergeRequest.all.each do |mr| | |
| 43 | - mr.reload_code | |
| 44 | - print '.' | |
| 45 | -end | ... | ... |