Fix crash building api response when user is nil
[arvados.git] / services / api / db / schema.rb
1 # encoding: UTF-8
2 # This file is auto-generated from the current state of the database. Instead
3 # of editing this file, please use the migrations feature of Active Record to
4 # incrementally modify your database, and then regenerate this schema definition.
5 #
6 # Note that this schema.rb definition is the authoritative source for your
7 # database schema. If you need to create the application database on another
8 # system, you should be using db:schema:load, not running all the migrations
9 # from scratch. The latter is a flawed and unsustainable approach (the more migrations
10 # you'll amass, the slower it'll run and the greater likelihood for issues).
11 #
12 # It's strongly recommended to check this file into your version control system.
13
14 ActiveRecord::Schema.define(:version => 20131007180607) do
15
16   create_table "api_client_authorizations", :force => true do |t|
17     t.string   "api_token",                                           :null => false
18     t.integer  "api_client_id",                                       :null => false
19     t.integer  "user_id",                                             :null => false
20     t.string   "created_by_ip_address"
21     t.string   "last_used_by_ip_address"
22     t.datetime "last_used_at"
23     t.datetime "expires_at"
24     t.datetime "created_at",                                          :null => false
25     t.datetime "updated_at",                                          :null => false
26     t.string   "default_owner_uuid"
27     t.text     "scopes",                  :default => "---\n- all\n", :null => false
28   end
29
30   add_index "api_client_authorizations", ["api_client_id"], :name => "index_api_client_authorizations_on_api_client_id"
31   add_index "api_client_authorizations", ["api_token"], :name => "index_api_client_authorizations_on_api_token", :unique => true
32   add_index "api_client_authorizations", ["expires_at"], :name => "index_api_client_authorizations_on_expires_at"
33   add_index "api_client_authorizations", ["user_id"], :name => "index_api_client_authorizations_on_user_id"
34
35   create_table "api_clients", :force => true do |t|
36     t.string   "uuid"
37     t.string   "owner_uuid"
38     t.string   "modified_by_client_uuid"
39     t.string   "modified_by_user_uuid"
40     t.datetime "modified_at"
41     t.string   "name"
42     t.string   "url_prefix"
43     t.datetime "created_at",                                 :null => false
44     t.datetime "updated_at",                                 :null => false
45     t.boolean  "is_trusted",              :default => false
46   end
47
48   add_index "api_clients", ["created_at"], :name => "index_api_clients_on_created_at"
49   add_index "api_clients", ["modified_at"], :name => "index_api_clients_on_modified_at"
50   add_index "api_clients", ["uuid"], :name => "index_api_clients_on_uuid", :unique => true
51
52   create_table "authorized_keys", :force => true do |t|
53     t.string   "uuid",                    :null => false
54     t.string   "owner_uuid",              :null => false
55     t.string   "modified_by_client_uuid"
56     t.string   "modified_by_user_uuid"
57     t.datetime "modified_at"
58     t.string   "name"
59     t.string   "key_type"
60     t.string   "authorized_user_uuid"
61     t.text     "public_key"
62     t.datetime "expires_at"
63     t.datetime "created_at",              :null => false
64     t.datetime "updated_at",              :null => false
65   end
66
67   add_index "authorized_keys", ["authorized_user_uuid", "expires_at"], :name => "index_authorized_keys_on_authorized_user_uuid_and_expires_at"
68   add_index "authorized_keys", ["uuid"], :name => "index_authorized_keys_on_uuid", :unique => true
69
70   create_table "collections", :force => true do |t|
71     t.string   "locator"
72     t.string   "owner_uuid"
73     t.datetime "created_at",                          :null => false
74     t.string   "modified_by_client_uuid"
75     t.string   "modified_by_user_uuid"
76     t.datetime "modified_at"
77     t.string   "portable_data_hash"
78     t.string   "name"
79     t.integer  "redundancy"
80     t.string   "redundancy_confirmed_by_client_uuid"
81     t.datetime "redundancy_confirmed_at"
82     t.integer  "redundancy_confirmed_as"
83     t.datetime "updated_at",                          :null => false
84     t.string   "uuid"
85     t.text     "manifest_text"
86   end
87
88   add_index "collections", ["created_at"], :name => "index_collections_on_created_at"
89   add_index "collections", ["modified_at"], :name => "index_collections_on_modified_at"
90   add_index "collections", ["uuid"], :name => "index_collections_on_uuid", :unique => true
91
92   create_table "commit_ancestors", :force => true do |t|
93     t.string   "repository_name"
94     t.string   "descendant",                         :null => false
95     t.string   "ancestor",                           :null => false
96     t.boolean  "is",              :default => false, :null => false
97     t.datetime "created_at",                         :null => false
98     t.datetime "updated_at",                         :null => false
99   end
100
101   add_index "commit_ancestors", ["descendant", "ancestor"], :name => "index_commit_ancestors_on_descendant_and_ancestor", :unique => true
102
103   create_table "commits", :force => true do |t|
104     t.string   "repository_name"
105     t.string   "sha1"
106     t.string   "message"
107     t.datetime "created_at",      :null => false
108     t.datetime "updated_at",      :null => false
109   end
110
111   add_index "commits", ["repository_name", "sha1"], :name => "index_commits_on_repository_name_and_sha1", :unique => true
112
113   create_table "groups", :force => true do |t|
114     t.string   "uuid"
115     t.string   "owner_uuid"
116     t.datetime "created_at",              :null => false
117     t.string   "modified_by_client_uuid"
118     t.string   "modified_by_user_uuid"
119     t.datetime "modified_at"
120     t.string   "name"
121     t.text     "description"
122     t.datetime "updated_at",              :null => false
123   end
124
125   add_index "groups", ["created_at"], :name => "index_groups_on_created_at"
126   add_index "groups", ["modified_at"], :name => "index_groups_on_modified_at"
127   add_index "groups", ["uuid"], :name => "index_groups_on_uuid", :unique => true
128
129   create_table "humans", :force => true do |t|
130     t.string   "uuid",                    :null => false
131     t.string   "owner_uuid",              :null => false
132     t.string   "modified_by_client_uuid"
133     t.string   "modified_by_user_uuid"
134     t.datetime "modified_at"
135     t.text     "properties"
136     t.datetime "created_at",              :null => false
137     t.datetime "updated_at",              :null => false
138   end
139
140   add_index "humans", ["uuid"], :name => "index_humans_on_uuid", :unique => true
141
142   create_table "job_tasks", :force => true do |t|
143     t.string   "uuid"
144     t.string   "owner_uuid"
145     t.string   "modified_by_client_uuid"
146     t.string   "modified_by_user_uuid"
147     t.datetime "modified_at"
148     t.string   "job_uuid"
149     t.integer  "sequence"
150     t.text     "parameters"
151     t.text     "output"
152     t.float    "progress"
153     t.boolean  "success"
154     t.datetime "created_at",                            :null => false
155     t.datetime "updated_at",                            :null => false
156     t.string   "created_by_job_task_uuid"
157     t.integer  "qsequence",                :limit => 8
158   end
159
160   add_index "job_tasks", ["created_at"], :name => "index_job_tasks_on_created_at"
161   add_index "job_tasks", ["job_uuid"], :name => "index_job_tasks_on_job_uuid"
162   add_index "job_tasks", ["modified_at"], :name => "index_job_tasks_on_modified_at"
163   add_index "job_tasks", ["sequence"], :name => "index_job_tasks_on_sequence"
164   add_index "job_tasks", ["success"], :name => "index_job_tasks_on_success"
165   add_index "job_tasks", ["uuid"], :name => "index_job_tasks_on_uuid", :unique => true
166
167   create_table "jobs", :force => true do |t|
168     t.string   "uuid"
169     t.string   "owner_uuid"
170     t.string   "modified_by_client_uuid"
171     t.string   "modified_by_user_uuid"
172     t.datetime "modified_at"
173     t.string   "submit_id"
174     t.string   "script"
175     t.string   "script_version"
176     t.text     "script_parameters"
177     t.string   "cancelled_by_client_uuid"
178     t.string   "cancelled_by_user_uuid"
179     t.datetime "cancelled_at"
180     t.datetime "started_at"
181     t.datetime "finished_at"
182     t.boolean  "running"
183     t.boolean  "success"
184     t.string   "output"
185     t.datetime "created_at",               :null => false
186     t.datetime "updated_at",               :null => false
187     t.string   "priority"
188     t.string   "is_locked_by_uuid"
189     t.string   "log"
190     t.text     "tasks_summary"
191     t.text     "runtime_constraints"
192   end
193
194   add_index "jobs", ["created_at"], :name => "index_jobs_on_created_at"
195   add_index "jobs", ["finished_at"], :name => "index_jobs_on_finished_at"
196   add_index "jobs", ["modified_at"], :name => "index_jobs_on_modified_at"
197   add_index "jobs", ["output"], :name => "index_jobs_on_output"
198   add_index "jobs", ["script"], :name => "index_jobs_on_script"
199   add_index "jobs", ["started_at"], :name => "index_jobs_on_started_at"
200   add_index "jobs", ["submit_id"], :name => "index_jobs_on_submit_id", :unique => true
201   add_index "jobs", ["uuid"], :name => "index_jobs_on_uuid", :unique => true
202
203   create_table "keep_disks", :force => true do |t|
204     t.string   "uuid",                                      :null => false
205     t.string   "owner_uuid",                                :null => false
206     t.string   "modified_by_client_uuid"
207     t.string   "modified_by_user_uuid"
208     t.datetime "modified_at"
209     t.string   "ping_secret",                               :null => false
210     t.string   "node_uuid"
211     t.string   "filesystem_uuid"
212     t.integer  "bytes_total"
213     t.integer  "bytes_free"
214     t.boolean  "is_readable",             :default => true, :null => false
215     t.boolean  "is_writable",             :default => true, :null => false
216     t.datetime "last_read_at"
217     t.datetime "last_write_at"
218     t.datetime "last_ping_at"
219     t.datetime "created_at",                                :null => false
220     t.datetime "updated_at",                                :null => false
221     t.string   "service_host"
222     t.integer  "service_port"
223     t.boolean  "service_ssl_flag"
224   end
225
226   add_index "keep_disks", ["filesystem_uuid"], :name => "index_keep_disks_on_filesystem_uuid"
227   add_index "keep_disks", ["last_ping_at"], :name => "index_keep_disks_on_last_ping_at"
228   add_index "keep_disks", ["node_uuid"], :name => "index_keep_disks_on_node_uuid"
229   add_index "keep_disks", ["service_host", "service_port", "last_ping_at"], :name => "keep_disks_service_host_port_ping_at_index"
230   add_index "keep_disks", ["uuid"], :name => "index_keep_disks_on_uuid", :unique => true
231
232   create_table "links", :force => true do |t|
233     t.string   "uuid"
234     t.string   "owner_uuid"
235     t.datetime "created_at",              :null => false
236     t.string   "modified_by_client_uuid"
237     t.string   "modified_by_user_uuid"
238     t.datetime "modified_at"
239     t.string   "tail_uuid"
240     t.string   "tail_kind"
241     t.string   "link_class"
242     t.string   "name"
243     t.string   "head_uuid"
244     t.text     "properties"
245     t.datetime "updated_at",              :null => false
246     t.string   "head_kind"
247   end
248
249   add_index "links", ["created_at"], :name => "index_links_on_created_at"
250   add_index "links", ["head_kind"], :name => "index_links_on_head_kind"
251   add_index "links", ["head_uuid"], :name => "index_links_on_head_uuid"
252   add_index "links", ["modified_at"], :name => "index_links_on_modified_at"
253   add_index "links", ["tail_kind"], :name => "index_links_on_tail_kind"
254   add_index "links", ["tail_uuid"], :name => "index_links_on_tail_uuid"
255   add_index "links", ["uuid"], :name => "index_links_on_uuid", :unique => true
256
257   create_table "logs", :force => true do |t|
258     t.string   "uuid"
259     t.string   "owner_uuid"
260     t.string   "modified_by_client_uuid"
261     t.string   "modified_by_user_uuid"
262     t.string   "object_kind"
263     t.string   "object_uuid"
264     t.datetime "event_at"
265     t.string   "event_type"
266     t.text     "summary"
267     t.text     "info"
268     t.datetime "created_at",              :null => false
269     t.datetime "updated_at",              :null => false
270     t.datetime "modified_at"
271   end
272
273   add_index "logs", ["created_at"], :name => "index_logs_on_created_at"
274   add_index "logs", ["event_at"], :name => "index_logs_on_event_at"
275   add_index "logs", ["event_type"], :name => "index_logs_on_event_type"
276   add_index "logs", ["modified_at"], :name => "index_logs_on_modified_at"
277   add_index "logs", ["object_kind"], :name => "index_logs_on_object_kind"
278   add_index "logs", ["object_uuid"], :name => "index_logs_on_object_uuid"
279   add_index "logs", ["summary"], :name => "index_logs_on_summary"
280   add_index "logs", ["uuid"], :name => "index_logs_on_uuid", :unique => true
281
282   create_table "nodes", :force => true do |t|
283     t.string   "uuid"
284     t.string   "owner_uuid"
285     t.datetime "created_at",              :null => false
286     t.string   "modified_by_client_uuid"
287     t.string   "modified_by_user_uuid"
288     t.datetime "modified_at"
289     t.integer  "slot_number"
290     t.string   "hostname"
291     t.string   "domain"
292     t.string   "ip_address"
293     t.datetime "first_ping_at"
294     t.datetime "last_ping_at"
295     t.text     "info"
296     t.datetime "updated_at",              :null => false
297   end
298
299   add_index "nodes", ["created_at"], :name => "index_nodes_on_created_at"
300   add_index "nodes", ["hostname"], :name => "index_nodes_on_hostname"
301   add_index "nodes", ["modified_at"], :name => "index_nodes_on_modified_at"
302   add_index "nodes", ["slot_number"], :name => "index_nodes_on_slot_number", :unique => true
303   add_index "nodes", ["uuid"], :name => "index_nodes_on_uuid", :unique => true
304
305   create_table "pipeline_instances", :force => true do |t|
306     t.string   "uuid"
307     t.string   "owner_uuid"
308     t.datetime "created_at",                                 :null => false
309     t.string   "modified_by_client_uuid"
310     t.string   "modified_by_user_uuid"
311     t.datetime "modified_at"
312     t.string   "pipeline_template_uuid"
313     t.string   "name"
314     t.text     "components"
315     t.boolean  "success"
316     t.boolean  "active",                  :default => false
317     t.datetime "updated_at",                                 :null => false
318     t.text     "properties"
319   end
320
321   add_index "pipeline_instances", ["created_at"], :name => "index_pipeline_instances_on_created_at"
322   add_index "pipeline_instances", ["modified_at"], :name => "index_pipeline_instances_on_modified_at"
323   add_index "pipeline_instances", ["uuid"], :name => "index_pipeline_instances_on_uuid", :unique => true
324
325   create_table "pipeline_templates", :force => true do |t|
326     t.string   "uuid"
327     t.string   "owner_uuid"
328     t.datetime "created_at",              :null => false
329     t.string   "modified_by_client_uuid"
330     t.string   "modified_by_user_uuid"
331     t.datetime "modified_at"
332     t.string   "name"
333     t.text     "components"
334     t.datetime "updated_at",              :null => false
335   end
336
337   add_index "pipeline_templates", ["created_at"], :name => "index_pipeline_templates_on_created_at"
338   add_index "pipeline_templates", ["modified_at"], :name => "index_pipeline_templates_on_modified_at"
339   add_index "pipeline_templates", ["uuid"], :name => "index_pipeline_templates_on_uuid", :unique => true
340
341   create_table "repositories", :force => true do |t|
342     t.string   "uuid",                    :null => false
343     t.string   "owner_uuid",              :null => false
344     t.string   "modified_by_client_uuid"
345     t.string   "modified_by_user_uuid"
346     t.datetime "modified_at"
347     t.string   "name"
348     t.string   "fetch_url"
349     t.string   "push_url"
350     t.datetime "created_at",              :null => false
351     t.datetime "updated_at",              :null => false
352   end
353
354   add_index "repositories", ["name"], :name => "index_repositories_on_name", :unique => true
355   add_index "repositories", ["uuid"], :name => "index_repositories_on_uuid", :unique => true
356
357   create_table "specimens", :force => true do |t|
358     t.string   "uuid"
359     t.string   "owner_uuid"
360     t.datetime "created_at",              :null => false
361     t.string   "modified_by_client_uuid"
362     t.string   "modified_by_user_uuid"
363     t.datetime "modified_at"
364     t.string   "material"
365     t.datetime "updated_at",              :null => false
366     t.text     "properties"
367   end
368
369   add_index "specimens", ["created_at"], :name => "index_specimens_on_created_at"
370   add_index "specimens", ["modified_at"], :name => "index_specimens_on_modified_at"
371   add_index "specimens", ["uuid"], :name => "index_specimens_on_uuid", :unique => true
372
373   create_table "traits", :force => true do |t|
374     t.string   "uuid",                    :null => false
375     t.string   "owner_uuid",              :null => false
376     t.string   "modified_by_client_uuid"
377     t.string   "modified_by_user_uuid"
378     t.datetime "modified_at"
379     t.string   "name"
380     t.text     "properties"
381     t.datetime "created_at",              :null => false
382     t.datetime "updated_at",              :null => false
383   end
384
385   add_index "traits", ["name"], :name => "index_traits_on_name"
386   add_index "traits", ["uuid"], :name => "index_traits_on_uuid", :unique => true
387
388   create_table "users", :force => true do |t|
389     t.string   "uuid"
390     t.string   "owner_uuid"
391     t.datetime "created_at",                                 :null => false
392     t.string   "modified_by_client_uuid"
393     t.string   "modified_by_user_uuid"
394     t.datetime "modified_at"
395     t.string   "email"
396     t.string   "first_name"
397     t.string   "last_name"
398     t.string   "identity_url"
399     t.boolean  "is_admin"
400     t.text     "prefs"
401     t.datetime "updated_at",                                 :null => false
402     t.string   "default_owner_uuid"
403     t.boolean  "is_active",               :default => false
404   end
405
406   add_index "users", ["created_at"], :name => "index_users_on_created_at"
407   add_index "users", ["modified_at"], :name => "index_users_on_modified_at"
408   add_index "users", ["uuid"], :name => "index_users_on_uuid", :unique => true
409
410   create_table "virtual_machines", :force => true do |t|
411     t.string   "uuid",                    :null => false
412     t.string   "owner_uuid",              :null => false
413     t.string   "modified_by_client_uuid"
414     t.string   "modified_by_user_uuid"
415     t.datetime "modified_at"
416     t.string   "hostname"
417     t.datetime "created_at",              :null => false
418     t.datetime "updated_at",              :null => false
419   end
420
421   add_index "virtual_machines", ["hostname"], :name => "index_virtual_machines_on_hostname"
422   add_index "virtual_machines", ["uuid"], :name => "index_virtual_machines_on_uuid", :unique => true
423
424 end