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 @@ | @@ -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 @@ | @@ -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 @@ | @@ -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,7 +11,7 @@ | ||
11 | # | 11 | # |
12 | # It's strongly recommended to check this file into your version control system. | 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 | create_table "events", :force => true do |t| | 16 | create_table "events", :force => true do |t| |
17 | t.string "target_type" | 17 | t.string "target_type" |
@@ -37,13 +37,13 @@ ActiveRecord::Schema.define(:version => 20130218091244) do | @@ -37,13 +37,13 @@ ActiveRecord::Schema.define(:version => 20130218091244) do | ||
37 | t.integer "assignee_id" | 37 | t.integer "assignee_id" |
38 | t.integer "author_id" | 38 | t.integer "author_id" |
39 | t.integer "project_id" | 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 | t.integer "position", :default => 0 | 42 | t.integer "position", :default => 0 |
44 | t.string "branch_name" | 43 | t.string "branch_name" |
45 | t.text "description" | 44 | t.text "description" |
46 | t.integer "milestone_id" | 45 | t.integer "milestone_id" |
46 | + t.string "state" | ||
47 | end | 47 | end |
48 | 48 | ||
49 | add_index "issues", ["assignee_id"], :name => "index_issues_on_assignee_id" | 49 | add_index "issues", ["assignee_id"], :name => "index_issues_on_assignee_id" |
@@ -51,7 +51,6 @@ ActiveRecord::Schema.define(:version => 20130218091244) do | @@ -51,7 +51,6 @@ ActiveRecord::Schema.define(:version => 20130218091244) do | ||
51 | add_index "issues", ["created_at"], :name => "index_issues_on_created_at" | 51 | add_index "issues", ["created_at"], :name => "index_issues_on_created_at" |
52 | add_index "issues", ["milestone_id"], :name => "index_issues_on_milestone_id" | 52 | add_index "issues", ["milestone_id"], :name => "index_issues_on_milestone_id" |
53 | add_index "issues", ["project_id"], :name => "index_issues_on_project_id" | 53 | add_index "issues", ["project_id"], :name => "index_issues_on_project_id" |
54 | - add_index "issues", ["state"], :name => "index_issues_on_closed" | ||
55 | add_index "issues", ["title"], :name => "index_issues_on_title" | 54 | add_index "issues", ["title"], :name => "index_issues_on_title" |
56 | 55 | ||
57 | create_table "keys", :force => true do |t| | 56 | create_table "keys", :force => true do |t| |
@@ -69,19 +68,19 @@ ActiveRecord::Schema.define(:version => 20130218091244) do | @@ -69,19 +68,19 @@ ActiveRecord::Schema.define(:version => 20130218091244) do | ||
69 | add_index "keys", ["user_id"], :name => "index_keys_on_user_id" | 68 | add_index "keys", ["user_id"], :name => "index_keys_on_user_id" |
70 | 69 | ||
71 | create_table "merge_requests", :force => true do |t| | 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 | t.integer "author_id" | 74 | t.integer "author_id" |
76 | t.integer "assignee_id" | 75 | t.integer "assignee_id" |
77 | t.string "title" | 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 | t.text "st_commits", :limit => 2147483647 | 79 | t.text "st_commits", :limit => 2147483647 |
82 | t.text "st_diffs", :limit => 2147483647 | 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 | t.integer "milestone_id" | 82 | t.integer "milestone_id" |
83 | + t.string "state" | ||
85 | end | 84 | end |
86 | 85 | ||
87 | add_index "merge_requests", ["assignee_id"], :name => "index_merge_requests_on_assignee_id" | 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,18 +89,17 @@ ActiveRecord::Schema.define(:version => 20130218091244) do | ||
90 | add_index "merge_requests", ["milestone_id"], :name => "index_merge_requests_on_milestone_id" | 89 | add_index "merge_requests", ["milestone_id"], :name => "index_merge_requests_on_milestone_id" |
91 | add_index "merge_requests", ["project_id"], :name => "index_merge_requests_on_project_id" | 90 | add_index "merge_requests", ["project_id"], :name => "index_merge_requests_on_project_id" |
92 | add_index "merge_requests", ["source_branch"], :name => "index_merge_requests_on_source_branch" | 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 | add_index "merge_requests", ["target_branch"], :name => "index_merge_requests_on_target_branch" | 92 | add_index "merge_requests", ["target_branch"], :name => "index_merge_requests_on_target_branch" |
95 | add_index "merge_requests", ["title"], :name => "index_merge_requests_on_title" | 93 | add_index "merge_requests", ["title"], :name => "index_merge_requests_on_title" |
96 | 94 | ||
97 | create_table "milestones", :force => true do |t| | 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 | t.text "description" | 98 | t.text "description" |
101 | t.date "due_date" | 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 | end | 103 | end |
106 | 104 | ||
107 | add_index "milestones", ["due_date"], :name => "index_milestones_on_due_date" | 105 | add_index "milestones", ["due_date"], :name => "index_milestones_on_due_date" |