Commit e5f048f44d054c0e825c880f7b58f0288cdc122f
1 parent
41e97a76
Exists in
master
and in
4 other branches
Migrations refactored ro support data convertion
Showing
18 changed files
with
134 additions
and
69 deletions
Show diff stats
db/migrate/20130214153504_rename_closed_to_state_in_issue.rb
db/migrate/20130214153809_change_state_type_in_issue.rb
db/migrate/20130214154847_rename_closed_to_state_in_merge_request.rb
db/migrate/20130214155334_change_state_type_in_merge_request.rb
db/migrate/20130214155542_rename_closed_to_state_in_milestone.rb
db/migrate/20130214155632_change_state_type_in_milestone.rb
db/migrate/20130218091244_remove_merged_from_merge_request.rb
db/migrate/20130218141258_convert_closed_to_state_in_issue.rb
0 → 100644
| ... | ... | @@ -0,0 +1,19 @@ |
| 1 | +class ConvertClosedToStateInIssue < ActiveRecord::Migration | |
| 2 | + def up | |
| 3 | + Issue.transaction do | |
| 4 | + Issue.find_each do |issue| | |
| 5 | + issue.state = issue.closed? ? :closed : :opened | |
| 6 | + issue.save | |
| 7 | + end | |
| 8 | + end | |
| 9 | + end | |
| 10 | + | |
| 11 | + def down | |
| 12 | + Issue.transaction do | |
| 13 | + Issue.find_each do |issue| | |
| 14 | + issue.closed = issue.closed? | |
| 15 | + issue.save | |
| 16 | + end | |
| 17 | + end | |
| 18 | + end | |
| 19 | +end | ... | ... |
db/migrate/20130218141327_convert_closed_to_state_in_merge_request.rb
0 → 100644
| ... | ... | @@ -0,0 +1,29 @@ |
| 1 | +class ConvertClosedToStateInMergeRequest < ActiveRecord::Migration | |
| 2 | + def up | |
| 3 | + MergeRequest.transaction do | |
| 4 | + MergeRequest.find_each do |mr| | |
| 5 | + if mr.closed? && mr.merged? | |
| 6 | + mr.state = :merged | |
| 7 | + else | |
| 8 | + if mr.closed? | |
| 9 | + mr.state = :closed | |
| 10 | + else | |
| 11 | + mr.state = :opened | |
| 12 | + end | |
| 13 | + end | |
| 14 | + | |
| 15 | + mr.save | |
| 16 | + end | |
| 17 | + end | |
| 18 | + end | |
| 19 | + | |
| 20 | + def down | |
| 21 | + MergeRequest.transaction do | |
| 22 | + MergeRequest.find_each do |mr| | |
| 23 | + mr.closed = mr.closed? || mr.merged? | |
| 24 | + mr.closed = mr.merged? | |
| 25 | + mr.save | |
| 26 | + end | |
| 27 | + end | |
| 28 | + end | |
| 29 | +end | ... | ... |
db/migrate/20130218141344_convert_closed_to_state_in_milestone.rb
0 → 100644
| ... | ... | @@ -0,0 +1,19 @@ |
| 1 | +class ConvertClosedToStateInMilestone < ActiveRecord::Migration | |
| 2 | + def up | |
| 3 | + Milestone.transaction do | |
| 4 | + Milestone.find_each do |milestone| | |
| 5 | + milestone.state = milestone.closed? ? :closed : :active | |
| 6 | + milestone.save | |
| 7 | + end | |
| 8 | + end | |
| 9 | + end | |
| 10 | + | |
| 11 | + def down | |
| 12 | + Milestone.transaction do | |
| 13 | + Milestone.find_each do |milestone| | |
| 14 | + milestone.closed = milestone.closed? | |
| 15 | + milestone.save | |
| 16 | + end | |
| 17 | + end | |
| 18 | + end | |
| 19 | +end | ... | ... |
db/migrate/20130218141444_remove_merged_from_merge_request.rb
0 → 100644
db/migrate/20130218141536_remove_closed_from_merge_request.rb
0 → 100644
db/migrate/20130218141554_remove_closed_from_milestone.rb
0 → 100644
db/schema.rb
| ... | ... | @@ -11,7 +11,7 @@ |
| 11 | 11 | # |
| 12 | 12 | # It's strongly recommended to check this file into your version control system. |
| 13 | 13 | |
| 14 | -ActiveRecord::Schema.define(:version => 20130218091244) do | |
| 14 | +ActiveRecord::Schema.define(:version => 20130218141554) do | |
| 15 | 15 | |
| 16 | 16 | create_table "events", :force => true do |t| |
| 17 | 17 | t.string "target_type" |
| ... | ... | @@ -37,13 +37,13 @@ ActiveRecord::Schema.define(:version => 20130218091244) do |
| 37 | 37 | t.integer "assignee_id" |
| 38 | 38 | t.integer "author_id" |
| 39 | 39 | t.integer "project_id" |
| 40 | - t.datetime "created_at", :null => false | |
| 41 | - t.datetime "updated_at", :null => false | |
| 42 | - t.string "state", :default => "0", :null => false | |
| 40 | + t.datetime "created_at", :null => false | |
| 41 | + t.datetime "updated_at", :null => false | |
| 43 | 42 | t.integer "position", :default => 0 |
| 44 | 43 | t.string "branch_name" |
| 45 | 44 | t.text "description" |
| 46 | 45 | t.integer "milestone_id" |
| 46 | + t.string "state" | |
| 47 | 47 | end |
| 48 | 48 | |
| 49 | 49 | add_index "issues", ["assignee_id"], :name => "index_issues_on_assignee_id" |
| ... | ... | @@ -51,7 +51,6 @@ ActiveRecord::Schema.define(:version => 20130218091244) do |
| 51 | 51 | add_index "issues", ["created_at"], :name => "index_issues_on_created_at" |
| 52 | 52 | add_index "issues", ["milestone_id"], :name => "index_issues_on_milestone_id" |
| 53 | 53 | add_index "issues", ["project_id"], :name => "index_issues_on_project_id" |
| 54 | - add_index "issues", ["state"], :name => "index_issues_on_closed" | |
| 55 | 54 | add_index "issues", ["title"], :name => "index_issues_on_title" |
| 56 | 55 | |
| 57 | 56 | create_table "keys", :force => true do |t| |
| ... | ... | @@ -69,19 +68,19 @@ ActiveRecord::Schema.define(:version => 20130218091244) do |
| 69 | 68 | add_index "keys", ["user_id"], :name => "index_keys_on_user_id" |
| 70 | 69 | |
| 71 | 70 | create_table "merge_requests", :force => true do |t| |
| 72 | - t.string "target_branch", :null => false | |
| 73 | - t.string "source_branch", :null => false | |
| 74 | - t.integer "project_id", :null => false | |
| 71 | + t.string "target_branch", :null => false | |
| 72 | + t.string "source_branch", :null => false | |
| 73 | + t.integer "project_id", :null => false | |
| 75 | 74 | t.integer "author_id" |
| 76 | 75 | t.integer "assignee_id" |
| 77 | 76 | t.string "title" |
| 78 | - t.string "state", :default => "0", :null => false | |
| 79 | - t.datetime "created_at", :null => false | |
| 80 | - t.datetime "updated_at", :null => false | |
| 77 | + t.datetime "created_at", :null => false | |
| 78 | + t.datetime "updated_at", :null => false | |
| 81 | 79 | t.text "st_commits", :limit => 2147483647 |
| 82 | 80 | t.text "st_diffs", :limit => 2147483647 |
| 83 | - t.integer "merge_status", :default => 1, :null => false | |
| 81 | + t.integer "merge_status", :default => 1, :null => false | |
| 84 | 82 | t.integer "milestone_id" |
| 83 | + t.string "state" | |
| 85 | 84 | end |
| 86 | 85 | |
| 87 | 86 | add_index "merge_requests", ["assignee_id"], :name => "index_merge_requests_on_assignee_id" |
| ... | ... | @@ -90,18 +89,17 @@ ActiveRecord::Schema.define(:version => 20130218091244) do |
| 90 | 89 | add_index "merge_requests", ["milestone_id"], :name => "index_merge_requests_on_milestone_id" |
| 91 | 90 | add_index "merge_requests", ["project_id"], :name => "index_merge_requests_on_project_id" |
| 92 | 91 | add_index "merge_requests", ["source_branch"], :name => "index_merge_requests_on_source_branch" |
| 93 | - add_index "merge_requests", ["state"], :name => "index_merge_requests_on_closed" | |
| 94 | 92 | add_index "merge_requests", ["target_branch"], :name => "index_merge_requests_on_target_branch" |
| 95 | 93 | add_index "merge_requests", ["title"], :name => "index_merge_requests_on_title" |
| 96 | 94 | |
| 97 | 95 | create_table "milestones", :force => true do |t| |
| 98 | - t.string "title", :null => false | |
| 99 | - t.integer "project_id", :null => false | |
| 96 | + t.string "title", :null => false | |
| 97 | + t.integer "project_id", :null => false | |
| 100 | 98 | t.text "description" |
| 101 | 99 | t.date "due_date" |
| 102 | - t.string "state", :default => "0", :null => false | |
| 103 | - t.datetime "created_at", :null => false | |
| 104 | - t.datetime "updated_at", :null => false | |
| 100 | + t.datetime "created_at", :null => false | |
| 101 | + t.datetime "updated_at", :null => false | |
| 102 | + t.string "state" | |
| 105 | 103 | end |
| 106 | 104 | |
| 107 | 105 | add_index "milestones", ["due_date"], :name => "index_milestones_on_due_date" | ... | ... |