comparison db/migrate/001_setup.rb @ 912:5e80956cc792 cannam_integration

Merge from branch "redmine-1.3"
author Chris Cannam
date Mon, 27 Feb 2012 13:53:18 +0000
parents cbb26bc654de
children 622f24f53b42
comparison
equal deleted inserted replaced
911:487d96eac004 912:5e80956cc792
3 # 3 #
4 # This program is free software; you can redistribute it and/or 4 # This program is free software; you can redistribute it and/or
5 # modify it under the terms of the GNU General Public License 5 # modify it under the terms of the GNU General Public License
6 # as published by the Free Software Foundation; either version 2 6 # as published by the Free Software Foundation; either version 2
7 # of the License, or (at your option) any later version. 7 # of the License, or (at your option) any later version.
8 # 8 #
9 # This program is distributed in the hope that it will be useful, 9 # This program is distributed in the hope that it will be useful,
10 # but WITHOUT ANY WARRANTY; without even the implied warranty of 10 # but WITHOUT ANY WARRANTY; without even the implied warranty of
11 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 11 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
12 # GNU General Public License for more details. 12 # GNU General Public License for more details.
13 # 13 #
14 # You should have received a copy of the GNU General Public License 14 # You should have received a copy of the GNU General Public License
15 # along with this program; if not, write to the Free Software 15 # along with this program; if not, write to the Free Software
16 # Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. 16 # Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
17 17
18 class Setup < ActiveRecord::Migration 18 class Setup < ActiveRecord::Migration
19 19
20 class User < ActiveRecord::Base; end 20 class User < ActiveRecord::Base; end
21 # model removed 21 # model removed
22 class Permission < ActiveRecord::Base; end 22 class Permission < ActiveRecord::Base; end
23 23
24 def self.up 24 def self.up
25 create_table "attachments", :force => true do |t| 25 create_table "attachments", :force => true do |t|
26 t.column "container_id", :integer, :default => 0, :null => false 26 t.column "container_id", :integer, :default => 0, :null => false
27 t.column "container_type", :string, :limit => 30, :default => "", :null => false 27 t.column "container_type", :string, :limit => 30, :default => "", :null => false
28 t.column "filename", :string, :default => "", :null => false 28 t.column "filename", :string, :default => "", :null => false
47 t.column "attr_firstname", :string, :limit => 30 47 t.column "attr_firstname", :string, :limit => 30
48 t.column "attr_lastname", :string, :limit => 30 48 t.column "attr_lastname", :string, :limit => 30
49 t.column "attr_mail", :string, :limit => 30 49 t.column "attr_mail", :string, :limit => 30
50 t.column "onthefly_register", :boolean, :default => false, :null => false 50 t.column "onthefly_register", :boolean, :default => false, :null => false
51 end 51 end
52 52
53 create_table "custom_fields", :force => true do |t| 53 create_table "custom_fields", :force => true do |t|
54 t.column "type", :string, :limit => 30, :default => "", :null => false 54 t.column "type", :string, :limit => 30, :default => "", :null => false
55 t.column "name", :string, :limit => 30, :default => "", :null => false 55 t.column "name", :string, :limit => 30, :default => "", :null => false
56 t.column "field_format", :string, :limit => 30, :default => "", :null => false 56 t.column "field_format", :string, :limit => 30, :default => "", :null => false
57 t.column "possible_values", :text 57 t.column "possible_values", :text
59 t.column "min_length", :integer, :default => 0, :null => false 59 t.column "min_length", :integer, :default => 0, :null => false
60 t.column "max_length", :integer, :default => 0, :null => false 60 t.column "max_length", :integer, :default => 0, :null => false
61 t.column "is_required", :boolean, :default => false, :null => false 61 t.column "is_required", :boolean, :default => false, :null => false
62 t.column "is_for_all", :boolean, :default => false, :null => false 62 t.column "is_for_all", :boolean, :default => false, :null => false
63 end 63 end
64 64
65 create_table "custom_fields_projects", :id => false, :force => true do |t| 65 create_table "custom_fields_projects", :id => false, :force => true do |t|
66 t.column "custom_field_id", :integer, :default => 0, :null => false 66 t.column "custom_field_id", :integer, :default => 0, :null => false
67 t.column "project_id", :integer, :default => 0, :null => false 67 t.column "project_id", :integer, :default => 0, :null => false
68 end 68 end
69 69
76 t.column "customized_type", :string, :limit => 30, :default => "", :null => false 76 t.column "customized_type", :string, :limit => 30, :default => "", :null => false
77 t.column "customized_id", :integer, :default => 0, :null => false 77 t.column "customized_id", :integer, :default => 0, :null => false
78 t.column "custom_field_id", :integer, :default => 0, :null => false 78 t.column "custom_field_id", :integer, :default => 0, :null => false
79 t.column "value", :text 79 t.column "value", :text
80 end 80 end
81 81
82 create_table "documents", :force => true do |t| 82 create_table "documents", :force => true do |t|
83 t.column "project_id", :integer, :default => 0, :null => false 83 t.column "project_id", :integer, :default => 0, :null => false
84 t.column "category_id", :integer, :default => 0, :null => false 84 t.column "category_id", :integer, :default => 0, :null => false
85 t.column "title", :string, :limit => 60, :default => "", :null => false 85 t.column "title", :string, :limit => 60, :default => "", :null => false
86 t.column "description", :text 86 t.column "description", :text
87 t.column "created_on", :timestamp 87 t.column "created_on", :timestamp
88 end 88 end
89 89
90 add_index "documents", ["project_id"], :name => "documents_project_id" 90 add_index "documents", ["project_id"], :name => "documents_project_id"
91 91
92 create_table "enumerations", :force => true do |t| 92 create_table "enumerations", :force => true do |t|
93 t.column "opt", :string, :limit => 4, :default => "", :null => false 93 t.column "opt", :string, :limit => 4, :default => "", :null => false
94 t.column "name", :string, :limit => 30, :default => "", :null => false 94 t.column "name", :string, :limit => 30, :default => "", :null => false
95 end 95 end
96 96
97 create_table "issue_categories", :force => true do |t| 97 create_table "issue_categories", :force => true do |t|
98 t.column "project_id", :integer, :default => 0, :null => false 98 t.column "project_id", :integer, :default => 0, :null => false
99 t.column "name", :string, :limit => 30, :default => "", :null => false 99 t.column "name", :string, :limit => 30, :default => "", :null => false
100 end 100 end
101 101
102 add_index "issue_categories", ["project_id"], :name => "issue_categories_project_id" 102 add_index "issue_categories", ["project_id"], :name => "issue_categories_project_id"
103 103
104 create_table "issue_histories", :force => true do |t| 104 create_table "issue_histories", :force => true do |t|
105 t.column "issue_id", :integer, :default => 0, :null => false 105 t.column "issue_id", :integer, :default => 0, :null => false
106 t.column "status_id", :integer, :default => 0, :null => false 106 t.column "status_id", :integer, :default => 0, :null => false
107 t.column "author_id", :integer, :default => 0, :null => false 107 t.column "author_id", :integer, :default => 0, :null => false
108 t.column "notes", :text 108 t.column "notes", :text
109 t.column "created_on", :timestamp 109 t.column "created_on", :timestamp
110 end 110 end
111 111
112 add_index "issue_histories", ["issue_id"], :name => "issue_histories_issue_id" 112 add_index "issue_histories", ["issue_id"], :name => "issue_histories_issue_id"
113 113
114 create_table "issue_statuses", :force => true do |t| 114 create_table "issue_statuses", :force => true do |t|
115 t.column "name", :string, :limit => 30, :default => "", :null => false 115 t.column "name", :string, :limit => 30, :default => "", :null => false
116 t.column "is_closed", :boolean, :default => false, :null => false 116 t.column "is_closed", :boolean, :default => false, :null => false
117 t.column "is_default", :boolean, :default => false, :null => false 117 t.column "is_default", :boolean, :default => false, :null => false
118 t.column "html_color", :string, :limit => 6, :default => "FFFFFF", :null => false 118 t.column "html_color", :string, :limit => 6, :default => "FFFFFF", :null => false
119 end 119 end
120 120
121 create_table "issues", :force => true do |t| 121 create_table "issues", :force => true do |t|
122 t.column "tracker_id", :integer, :default => 0, :null => false 122 t.column "tracker_id", :integer, :default => 0, :null => false
123 t.column "project_id", :integer, :default => 0, :null => false 123 t.column "project_id", :integer, :default => 0, :null => false
124 t.column "subject", :string, :default => "", :null => false 124 t.column "subject", :string, :default => "", :null => false
125 t.column "description", :text 125 t.column "description", :text
132 t.column "author_id", :integer, :default => 0, :null => false 132 t.column "author_id", :integer, :default => 0, :null => false
133 t.column "lock_version", :integer, :default => 0, :null => false 133 t.column "lock_version", :integer, :default => 0, :null => false
134 t.column "created_on", :timestamp 134 t.column "created_on", :timestamp
135 t.column "updated_on", :timestamp 135 t.column "updated_on", :timestamp
136 end 136 end
137 137
138 add_index "issues", ["project_id"], :name => "issues_project_id" 138 add_index "issues", ["project_id"], :name => "issues_project_id"
139 139
140 create_table "members", :force => true do |t| 140 create_table "members", :force => true do |t|
141 t.column "user_id", :integer, :default => 0, :null => false 141 t.column "user_id", :integer, :default => 0, :null => false
142 t.column "project_id", :integer, :default => 0, :null => false 142 t.column "project_id", :integer, :default => 0, :null => false
143 t.column "role_id", :integer, :default => 0, :null => false 143 t.column "role_id", :integer, :default => 0, :null => false
144 t.column "created_on", :timestamp 144 t.column "created_on", :timestamp
145 end 145 end
146 146
147 create_table "news", :force => true do |t| 147 create_table "news", :force => true do |t|
148 t.column "project_id", :integer 148 t.column "project_id", :integer
149 t.column "title", :string, :limit => 60, :default => "", :null => false 149 t.column "title", :string, :limit => 60, :default => "", :null => false
150 t.column "summary", :string, :limit => 255, :default => "" 150 t.column "summary", :string, :limit => 255, :default => ""
151 t.column "description", :text 151 t.column "description", :text
152 t.column "author_id", :integer, :default => 0, :null => false 152 t.column "author_id", :integer, :default => 0, :null => false
153 t.column "created_on", :timestamp 153 t.column "created_on", :timestamp
154 end 154 end
155 155
156 add_index "news", ["project_id"], :name => "news_project_id" 156 add_index "news", ["project_id"], :name => "news_project_id"
157 157
158 create_table "permissions", :force => true do |t| 158 create_table "permissions", :force => true do |t|
159 t.column "controller", :string, :limit => 30, :default => "", :null => false 159 t.column "controller", :string, :limit => 30, :default => "", :null => false
160 t.column "action", :string, :limit => 30, :default => "", :null => false 160 t.column "action", :string, :limit => 30, :default => "", :null => false
161 t.column "description", :string, :limit => 60, :default => "", :null => false 161 t.column "description", :string, :limit => 60, :default => "", :null => false
162 t.column "is_public", :boolean, :default => false, :null => false 162 t.column "is_public", :boolean, :default => false, :null => false
163 t.column "sort", :integer, :default => 0, :null => false 163 t.column "sort", :integer, :default => 0, :null => false
164 t.column "mail_option", :boolean, :default => false, :null => false 164 t.column "mail_option", :boolean, :default => false, :null => false
165 t.column "mail_enabled", :boolean, :default => false, :null => false 165 t.column "mail_enabled", :boolean, :default => false, :null => false
166 end 166 end
167 167
168 create_table "permissions_roles", :id => false, :force => true do |t| 168 create_table "permissions_roles", :id => false, :force => true do |t|
169 t.column "permission_id", :integer, :default => 0, :null => false 169 t.column "permission_id", :integer, :default => 0, :null => false
170 t.column "role_id", :integer, :default => 0, :null => false 170 t.column "role_id", :integer, :default => 0, :null => false
171 end 171 end
172 172
173 add_index "permissions_roles", ["role_id"], :name => "permissions_roles_role_id" 173 add_index "permissions_roles", ["role_id"], :name => "permissions_roles_role_id"
174 174
175 create_table "projects", :force => true do |t| 175 create_table "projects", :force => true do |t|
176 t.column "name", :string, :limit => 30, :default => "", :null => false 176 t.column "name", :string, :limit => 30, :default => "", :null => false
177 t.column "description", :string, :default => "", :null => false 177 t.column "description", :string, :default => "", :null => false
178 t.column "homepage", :string, :limit => 60, :default => "" 178 t.column "homepage", :string, :limit => 60, :default => ""
179 t.column "is_public", :boolean, :default => true, :null => false 179 t.column "is_public", :boolean, :default => true, :null => false
180 t.column "parent_id", :integer 180 t.column "parent_id", :integer
181 t.column "projects_count", :integer, :default => 0 181 t.column "projects_count", :integer, :default => 0
182 t.column "created_on", :timestamp 182 t.column "created_on", :timestamp
183 t.column "updated_on", :timestamp 183 t.column "updated_on", :timestamp
184 end 184 end
185 185
186 create_table "roles", :force => true do |t| 186 create_table "roles", :force => true do |t|
187 t.column "name", :string, :limit => 30, :default => "", :null => false 187 t.column "name", :string, :limit => 30, :default => "", :null => false
188 end 188 end
189 189
190 create_table "tokens", :force => true do |t| 190 create_table "tokens", :force => true do |t|
191 t.column "user_id", :integer, :default => 0, :null => false 191 t.column "user_id", :integer, :default => 0, :null => false
192 t.column "action", :string, :limit => 30, :default => "", :null => false 192 t.column "action", :string, :limit => 30, :default => "", :null => false
193 t.column "value", :string, :limit => 40, :default => "", :null => false 193 t.column "value", :string, :limit => 40, :default => "", :null => false
194 t.column "created_on", :datetime, :null => false 194 t.column "created_on", :datetime, :null => false
195 end 195 end
196 196
197 create_table "trackers", :force => true do |t| 197 create_table "trackers", :force => true do |t|
198 t.column "name", :string, :limit => 30, :default => "", :null => false 198 t.column "name", :string, :limit => 30, :default => "", :null => false
199 t.column "is_in_chlog", :boolean, :default => false, :null => false 199 t.column "is_in_chlog", :boolean, :default => false, :null => false
200 end 200 end
201 201
202 create_table "users", :force => true do |t| 202 create_table "users", :force => true do |t|
203 t.column "login", :string, :limit => 30, :default => "", :null => false 203 t.column "login", :string, :limit => 30, :default => "", :null => false
204 t.column "hashed_password", :string, :limit => 40, :default => "", :null => false 204 t.column "hashed_password", :string, :limit => 40, :default => "", :null => false
205 t.column "firstname", :string, :limit => 30, :default => "", :null => false 205 t.column "firstname", :string, :limit => 30, :default => "", :null => false
206 t.column "lastname", :string, :limit => 30, :default => "", :null => false 206 t.column "lastname", :string, :limit => 30, :default => "", :null => false
212 t.column "language", :string, :limit => 2, :default => "" 212 t.column "language", :string, :limit => 2, :default => ""
213 t.column "auth_source_id", :integer 213 t.column "auth_source_id", :integer
214 t.column "created_on", :timestamp 214 t.column "created_on", :timestamp
215 t.column "updated_on", :timestamp 215 t.column "updated_on", :timestamp
216 end 216 end
217 217
218 create_table "versions", :force => true do |t| 218 create_table "versions", :force => true do |t|
219 t.column "project_id", :integer, :default => 0, :null => false 219 t.column "project_id", :integer, :default => 0, :null => false
220 t.column "name", :string, :limit => 30, :default => "", :null => false 220 t.column "name", :string, :limit => 30, :default => "", :null => false
221 t.column "description", :string, :default => "" 221 t.column "description", :string, :default => ""
222 t.column "effective_date", :date 222 t.column "effective_date", :date
223 t.column "created_on", :timestamp 223 t.column "created_on", :timestamp
224 t.column "updated_on", :timestamp 224 t.column "updated_on", :timestamp
225 end 225 end
226 226
227 add_index "versions", ["project_id"], :name => "versions_project_id" 227 add_index "versions", ["project_id"], :name => "versions_project_id"
228 228
229 create_table "workflows", :force => true do |t| 229 create_table "workflows", :force => true do |t|
230 t.column "tracker_id", :integer, :default => 0, :null => false 230 t.column "tracker_id", :integer, :default => 0, :null => false
231 t.column "old_status_id", :integer, :default => 0, :null => false 231 t.column "old_status_id", :integer, :default => 0, :null => false
232 t.column "new_status_id", :integer, :default => 0, :null => false 232 t.column "new_status_id", :integer, :default => 0, :null => false
233 t.column "role_id", :integer, :default => 0, :null => false 233 t.column "role_id", :integer, :default => 0, :null => false
234 end 234 end
235 235
236 # project 236 # project
237 Permission.create :controller => "projects", :action => "show", :description => "label_overview", :sort => 100, :is_public => true 237 Permission.create :controller => "projects", :action => "show", :description => "label_overview", :sort => 100, :is_public => true
238 Permission.create :controller => "projects", :action => "changelog", :description => "label_change_log", :sort => 105, :is_public => true 238 Permission.create :controller => "projects", :action => "changelog", :description => "label_change_log", :sort => 105, :is_public => true
239 Permission.create :controller => "reports", :action => "issue_report", :description => "label_report_plural", :sort => 110, :is_public => true 239 Permission.create :controller => "reports", :action => "issue_report", :description => "label_report_plural", :sort => 110, :is_public => true
240 Permission.create :controller => "projects", :action => "settings", :description => "label_settings", :sort => 150 240 Permission.create :controller => "projects", :action => "settings", :description => "label_settings", :sort => 150
281 # files 281 # files
282 Permission.create :controller => "projects", :action => "list_files", :description => "button_list", :sort => 1300, :is_public => true 282 Permission.create :controller => "projects", :action => "list_files", :description => "button_list", :sort => 1300, :is_public => true
283 Permission.create :controller => "versions", :action => "download", :description => "button_download", :sort => 1301, :is_public => true 283 Permission.create :controller => "versions", :action => "download", :description => "button_download", :sort => 1301, :is_public => true
284 Permission.create :controller => "projects", :action => "add_file", :description => "button_add", :sort => 1320 284 Permission.create :controller => "projects", :action => "add_file", :description => "button_add", :sort => 1320
285 Permission.create :controller => "versions", :action => "destroy_file", :description => "button_delete", :sort => 1322 285 Permission.create :controller => "versions", :action => "destroy_file", :description => "button_delete", :sort => 1322
286 286
287 # create default administrator account 287 # create default administrator account
288 user = User.create :login => "admin", 288 user = User.create :login => "admin",
289 :hashed_password => "d033e22ae348aeb5660fc2140aec35850c4da997", 289 :hashed_password => "d033e22ae348aeb5660fc2140aec35850c4da997",
290 :admin => true, 290 :admin => true,
291 :firstname => "Redmine", 291 :firstname => "Redmine",