From 9e2964c15a7d387e46e25c83afa478c12a856d77 Mon Sep 17 00:00:00 2001 From: Patricio Cano Date: Fri, 4 Nov 2016 12:53:12 -0600 Subject: Allow certain Sidekiq jobs to be throttled --- db/schema.rb | 1 + 1 file changed, 1 insertion(+) (limited to 'db/schema.rb') diff --git a/db/schema.rb b/db/schema.rb index 62c325a52d7..31d01403508 100644 --- a/db/schema.rb +++ b/db/schema.rb @@ -98,6 +98,7 @@ ActiveRecord::Schema.define(version: 20161106185620) do t.text "help_page_text_html" t.text "shared_runners_text_html" t.text "after_sign_up_text_html" + t.boolean "sidekiq_throttling_enabled", default: false t.boolean "housekeeping_enabled", default: true, null: false t.boolean "housekeeping_bitmaps_enabled", default: true, null: false t.integer "housekeeping_incremental_repack_period", default: 10, null: false -- cgit v1.2.1 From b95216aabadb336e4ed8cdc01f69e873f47f10d0 Mon Sep 17 00:00:00 2001 From: Patricio Cano Date: Fri, 4 Nov 2016 16:54:24 -0600 Subject: Allow the Sidekiq queues to throttle and the factor by which to throttle them to be configurable --- db/schema.rb | 2 ++ 1 file changed, 2 insertions(+) (limited to 'db/schema.rb') diff --git a/db/schema.rb b/db/schema.rb index 31d01403508..666b54690c1 100644 --- a/db/schema.rb +++ b/db/schema.rb @@ -99,6 +99,8 @@ ActiveRecord::Schema.define(version: 20161106185620) do t.text "shared_runners_text_html" t.text "after_sign_up_text_html" t.boolean "sidekiq_throttling_enabled", default: false + t.string "sidekiq_throttling_queues" + t.decimal "sidekiq_throttling_factor" t.boolean "housekeeping_enabled", default: true, null: false t.boolean "housekeeping_bitmaps_enabled", default: true, null: false t.integer "housekeeping_incremental_repack_period", default: 10, null: false -- cgit v1.2.1 From 2689428ac2071cf300a11d812ad2b9249df7eaac Mon Sep 17 00:00:00 2001 From: Nick Thomas Date: Wed, 9 Nov 2016 22:54:58 +0000 Subject: Fix project records with invalid visibility_level values The AddVisibilityLevelToGroups migration introduced a visibility_level for namespaces and specified that projects should always have a visibility level less than or equal to their namespace. However, some invalid rows could have been created. This commit introduces a migration that updates the invalid rows, setting the invalid project to have the same visibility_level as their namespaces. This will make some projects internal or private when they would previously have been public or internal, but this is better than silently making an internal or private group public. --- db/schema.rb | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'db/schema.rb') diff --git a/db/schema.rb b/db/schema.rb index 62c325a52d7..64d744d8268 100644 --- a/db/schema.rb +++ b/db/schema.rb @@ -11,7 +11,7 @@ # # It's strongly recommended that you check this file into your version control system. -ActiveRecord::Schema.define(version: 20161106185620) do +ActiveRecord::Schema.define(version: 20161109150329) do # These are extensions that must be enabled in order to support this database enable_extension "plpgsql" -- cgit v1.2.1 From 64d2eff9ccf716395d101f2ac91db44c47d7394e Mon Sep 17 00:00:00 2001 From: Chris Wilson Date: Thu, 20 Oct 2016 08:20:12 +0000 Subject: Set 'request_access_enabled' false by default Set request access for projects/groups to false by default. Request access implemented in !5286 8.10 was enabled by default. --- db/schema.rb | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'db/schema.rb') diff --git a/db/schema.rb b/db/schema.rb index 62c325a52d7..1c982fc5799 100644 --- a/db/schema.rb +++ b/db/schema.rb @@ -720,7 +720,7 @@ ActiveRecord::Schema.define(version: 20161106185620) do t.string "avatar" t.boolean "share_with_group_lock", default: false t.integer "visibility_level", default: 20, null: false - t.boolean "request_access_enabled", default: true, null: false + t.boolean "request_access_enabled", default: false, null: false t.datetime "deleted_at" t.boolean "lfs_enabled" t.text "description_html" @@ -908,7 +908,7 @@ ActiveRecord::Schema.define(version: 20161106185620) do t.boolean "only_allow_merge_if_build_succeeds", default: false, null: false t.boolean "has_external_issue_tracker" t.string "repository_storage", default: "default", null: false - t.boolean "request_access_enabled", default: true, null: false + t.boolean "request_access_enabled", default: false, null: false t.boolean "has_external_wiki" t.boolean "lfs_enabled" t.text "description_html" -- cgit v1.2.1 From 591f10f6bd8d92e083fbc3c691c874e62144ba25 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Alejandro=20Rodr=C3=ADguez?= Date: Fri, 11 Nov 2016 14:23:08 -0300 Subject: Update 8.14-rc1 migrations to minimize downtime and deploy time See https://gitlab.com/gitlab-org/gitlab-ce/issues/24386 --- db/schema.rb | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'db/schema.rb') diff --git a/db/schema.rb b/db/schema.rb index 64d744d8268..9db61635f8e 100644 --- a/db/schema.rb +++ b/db/schema.rb @@ -912,7 +912,7 @@ ActiveRecord::Schema.define(version: 20161109150329) do t.boolean "has_external_wiki" t.boolean "lfs_enabled" t.text "description_html" - t.boolean "only_allow_merge_if_all_discussions_are_resolved", default: false, null: false + t.boolean "only_allow_merge_if_all_discussions_are_resolved" end add_index "projects", ["ci_id"], name: "index_projects_on_ci_id", using: :btree -- cgit v1.2.1 From ed07264532cac11b1f7cc4c68627cb7bfb7e41fc Mon Sep 17 00:00:00 2001 From: Filipa Lacerda Date: Tue, 15 Nov 2016 12:07:11 +0000 Subject: Adds props validation Improves documentation Adds tests Fix prop validation for objects Finish tests for environment item Adds tests for toggle folder function Environment tests Adds tests --- db/schema.rb | 3 +++ 1 file changed, 3 insertions(+) (limited to 'db/schema.rb') diff --git a/db/schema.rb b/db/schema.rb index 886be4520a3..d68b5edae47 100644 --- a/db/schema.rb +++ b/db/schema.rb @@ -106,6 +106,9 @@ ActiveRecord::Schema.define(version: 20161109150329) do t.integer "housekeeping_incremental_repack_period", default: 10, null: false t.integer "housekeeping_full_repack_period", default: 50, null: false t.integer "housekeeping_gc_period", default: 200, null: false + t.boolean "sidekiq_throttling_enabled", default: false + t.string "sidekiq_throttling_queues" + t.decimal "sidekiq_throttling_factor" end create_table "audit_events", force: :cascade do |t| -- cgit v1.2.1 From c60437786bfe43344b4a5eb040437f73f37c6396 Mon Sep 17 00:00:00 2001 From: Kamil Trzcinski Date: Sun, 13 Nov 2016 20:35:47 +0100 Subject: Create relation between chat user and GitLab user and allow to authorize them [ci skip] --- db/schema.rb | 16 +++++++++++++++- 1 file changed, 15 insertions(+), 1 deletion(-) (limited to 'db/schema.rb') diff --git a/db/schema.rb b/db/schema.rb index 62c325a52d7..5f25f0a305f 100644 --- a/db/schema.rb +++ b/db/schema.rb @@ -11,7 +11,7 @@ # # It's strongly recommended that you check this file into your version control system. -ActiveRecord::Schema.define(version: 20161106185620) do +ActiveRecord::Schema.define(version: 20161113184239) do # These are extensions that must be enabled in order to support this database enable_extension "plpgsql" @@ -149,6 +149,20 @@ ActiveRecord::Schema.define(version: 20161106185620) do t.text "message_html" end + create_table "chat_names", force: :cascade do |t| + t.integer "user_id", null: false + t.integer "service_id", null: false + t.string "team_id" + t.string "team_domain" + t.string "chat_id" + t.string "chat_name" + t.datetime "created_at" + t.datetime "updated_at" + end + + add_index "chat_names", ["service_id", "team_id", "user_id"], name: "index_chat_names_on_service_id_and_team_id_and_user_id", unique: true, using: :btree + add_index "chat_names", ["user_id", "service_id"], name: "index_chat_names_on_user_id_and_service_id", unique: true, using: :btree + create_table "ci_application_settings", force: :cascade do |t| t.boolean "all_broken_builds" t.boolean "add_pusher" -- cgit v1.2.1 From d64183e1fa26ab77107e3a2a20be1fe4df3a1875 Mon Sep 17 00:00:00 2001 From: Kamil Trzcinski Date: Wed, 16 Nov 2016 14:56:30 +0100 Subject: Add most of specs for chat names --- db/schema.rb | 11 ++++++----- 1 file changed, 6 insertions(+), 5 deletions(-) (limited to 'db/schema.rb') diff --git a/db/schema.rb b/db/schema.rb index 5f25f0a305f..1c1a7a37096 100644 --- a/db/schema.rb +++ b/db/schema.rb @@ -152,15 +152,16 @@ ActiveRecord::Schema.define(version: 20161113184239) do create_table "chat_names", force: :cascade do |t| t.integer "user_id", null: false t.integer "service_id", null: false - t.string "team_id" + t.string "team_id", null: false t.string "team_domain" - t.string "chat_id" + t.string "chat_id", null: false t.string "chat_name" - t.datetime "created_at" - t.datetime "updated_at" + t.datetime "used_at" + t.datetime "created_at", null: false + t.datetime "updated_at", null: false end - add_index "chat_names", ["service_id", "team_id", "user_id"], name: "index_chat_names_on_service_id_and_team_id_and_user_id", unique: true, using: :btree + add_index "chat_names", ["service_id", "team_id", "chat_id"], name: "index_chat_names_on_service_id_and_team_id_and_chat_id", unique: true, using: :btree add_index "chat_names", ["user_id", "service_id"], name: "index_chat_names_on_user_id_and_service_id", unique: true, using: :btree create_table "ci_application_settings", force: :cascade do |t| -- cgit v1.2.1 From 6f714dfb4a9b823ab75508f252d06e19e286d5f2 Mon Sep 17 00:00:00 2001 From: Kamil Trzcinski Date: Wed, 16 Nov 2016 23:10:27 +0100 Subject: Improve code design after code review --- db/schema.rb | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'db/schema.rb') diff --git a/db/schema.rb b/db/schema.rb index 3688df3a238..5732b1b73c1 100644 --- a/db/schema.rb +++ b/db/schema.rb @@ -159,7 +159,7 @@ ActiveRecord::Schema.define(version: 20161113184239) do t.string "team_domain" t.string "chat_id", null: false t.string "chat_name" - t.datetime "used_at" + t.datetime "last_used_at" t.datetime "created_at", null: false t.datetime "updated_at", null: false end -- cgit v1.2.1 From 52e2729bf44ff3376071c2462679b46e9f67a44e Mon Sep 17 00:00:00 2001 From: James Lopez Date: Thu, 20 Oct 2016 13:14:23 +0200 Subject: add pipeline id to merge request metrics table. Also, updated the pipeline worker to populate this field. --- db/schema.rb | 3 +++ 1 file changed, 3 insertions(+) (limited to 'db/schema.rb') diff --git a/db/schema.rb b/db/schema.rb index ed4dfc786f6..5baa82e1058 100644 --- a/db/schema.rb +++ b/db/schema.rb @@ -634,8 +634,10 @@ ActiveRecord::Schema.define(version: 20161109150329) do t.datetime "merged_at" t.datetime "created_at", null: false t.datetime "updated_at", null: false + t.integer "ci_commit_id" end + add_index "merge_request_metrics", ["ci_commit_id"], name: "index_merge_request_metrics_on_ci_commit_id", using: :btree add_index "merge_request_metrics", ["first_deployed_to_production_at"], name: "index_merge_request_metrics_on_first_deployed_to_production_at", using: :btree add_index "merge_request_metrics", ["merge_request_id"], name: "index_merge_request_metrics", using: :btree @@ -1244,6 +1246,7 @@ ActiveRecord::Schema.define(version: 20161109150329) do add_foreign_key "labels", "namespaces", column: "group_id", on_delete: :cascade add_foreign_key "lists", "boards" add_foreign_key "lists", "labels" + add_foreign_key "merge_request_metrics", "ci_commits", on_delete: :cascade add_foreign_key "merge_request_metrics", "merge_requests", on_delete: :cascade add_foreign_key "merge_requests_closing_issues", "issues", on_delete: :cascade add_foreign_key "merge_requests_closing_issues", "merge_requests", on_delete: :cascade -- cgit v1.2.1 From ca6da6ea3034a58c0edbc62336d2d49ea6e11fc9 Mon Sep 17 00:00:00 2001 From: James Lopez Date: Tue, 15 Nov 2016 15:22:35 +0100 Subject: Renamed pipeline column and fixed permissions for builds in events controller --- db/schema.rb | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) (limited to 'db/schema.rb') diff --git a/db/schema.rb b/db/schema.rb index 5baa82e1058..983e1c90682 100644 --- a/db/schema.rb +++ b/db/schema.rb @@ -634,12 +634,12 @@ ActiveRecord::Schema.define(version: 20161109150329) do t.datetime "merged_at" t.datetime "created_at", null: false t.datetime "updated_at", null: false - t.integer "ci_commit_id" + t.integer "pipeline_id" end - add_index "merge_request_metrics", ["ci_commit_id"], name: "index_merge_request_metrics_on_ci_commit_id", using: :btree add_index "merge_request_metrics", ["first_deployed_to_production_at"], name: "index_merge_request_metrics_on_first_deployed_to_production_at", using: :btree add_index "merge_request_metrics", ["merge_request_id"], name: "index_merge_request_metrics", using: :btree + add_index "merge_request_metrics", ["pipeline_id"], name: "index_merge_request_metrics_on_pipeline_id", using: :btree create_table "merge_requests", force: :cascade do |t| t.string "target_branch", null: false @@ -1246,7 +1246,7 @@ ActiveRecord::Schema.define(version: 20161109150329) do add_foreign_key "labels", "namespaces", column: "group_id", on_delete: :cascade add_foreign_key "lists", "boards" add_foreign_key "lists", "labels" - add_foreign_key "merge_request_metrics", "ci_commits", on_delete: :cascade + add_foreign_key "merge_request_metrics", "ci_commits", column: "pipeline_id", on_delete: :cascade add_foreign_key "merge_request_metrics", "merge_requests", on_delete: :cascade add_foreign_key "merge_requests_closing_issues", "issues", on_delete: :cascade add_foreign_key "merge_requests_closing_issues", "merge_requests", on_delete: :cascade -- cgit v1.2.1 From ed39d61d746925e49d952bd8169499d3200ae68b Mon Sep 17 00:00:00 2001 From: James Lopez Date: Thu, 17 Nov 2016 13:22:27 +0100 Subject: refactor events facade so it uses separate classes and refactor query stuff --- db/schema.rb | 1198 +++++++++++++++++++++++++++++++++------------------------- 1 file changed, 689 insertions(+), 509 deletions(-) (limited to 'db/schema.rb') diff --git a/db/schema.rb b/db/schema.rb index 983e1c90682..633107f7db7 100644 --- a/db/schema.rb +++ b/db/schema.rb @@ -13,107 +13,142 @@ ActiveRecord::Schema.define(version: 20161109150329) do - # These are extensions that must be enabled in order to support this database - enable_extension "plpgsql" - enable_extension "pg_trgm" - create_table "abuse_reports", force: :cascade do |t| - t.integer "reporter_id" - t.integer "user_id" - t.text "message" + t.integer "reporter_id", limit: 4 + t.integer "user_id", limit: 4 + t.text "message", limit: 65535 t.datetime "created_at" t.datetime "updated_at" - t.text "message_html" + t.text "message_html", limit: 65535 end create_table "appearances", force: :cascade do |t| - t.string "title" - t.text "description" - t.string "header_logo" - t.string "logo" - t.datetime "created_at", null: false - t.datetime "updated_at", null: false - t.text "description_html" + t.string "title", limit: 255 + t.text "description", limit: 65535 + t.string "logo", limit: 255 + t.integer "updated_by", limit: 4 + t.datetime "created_at" + t.datetime "updated_at" + t.string "header_logo", limit: 255 + t.text "description_html", limit: 65535 end create_table "application_settings", force: :cascade do |t| - t.integer "default_projects_limit" + t.integer "default_projects_limit", limit: 4 t.boolean "signup_enabled" t.boolean "signin_enabled" t.boolean "gravatar_enabled" - t.text "sign_in_text" + t.text "sign_in_text", limit: 65535 t.datetime "created_at" t.datetime "updated_at" - t.string "home_page_url" - t.integer "default_branch_protection", default: 2 - t.text "restricted_visibility_levels" + t.string "home_page_url", limit: 255 + t.integer "default_branch_protection", limit: 4, default: 2 + t.text "help_text", limit: 65535 + t.text "restricted_visibility_levels", limit: 65535 t.boolean "version_check_enabled", default: true - t.integer "max_attachment_size", default: 10, null: false - t.integer "default_project_visibility" - t.integer "default_snippet_visibility" - t.text "domain_whitelist" + t.integer "max_attachment_size", limit: 4, default: 10, null: false + t.integer "default_project_visibility", limit: 4 + t.integer "default_snippet_visibility", limit: 4 + t.text "domain_whitelist", limit: 65535 t.boolean "user_oauth_applications", default: true - t.string "after_sign_out_path" - t.integer "session_expire_delay", default: 10080, null: false - t.text "import_sources" - t.text "help_page_text" - t.string "admin_notification_email" + t.string "after_sign_out_path", limit: 255 + t.integer "session_expire_delay", limit: 4, default: 10080, null: false + t.text "import_sources", limit: 65535 + t.text "help_page_text", limit: 65535 + t.string "admin_notification_email", limit: 255 t.boolean "shared_runners_enabled", default: true, null: false - t.integer "max_artifacts_size", default: 100, null: false - t.string "runners_registration_token" + t.integer "max_artifacts_size", limit: 4, default: 100, null: false + t.string "runners_registration_token", limit: 255 + t.integer "max_pages_size", limit: 4, default: 100, null: false t.boolean "require_two_factor_authentication", default: false - t.integer "two_factor_grace_period", default: 48 + t.integer "two_factor_grace_period", limit: 4, default: 48 t.boolean "metrics_enabled", default: false - t.string "metrics_host", default: "localhost" - t.integer "metrics_pool_size", default: 16 - t.integer "metrics_timeout", default: 10 - t.integer "metrics_method_call_threshold", default: 10 + t.string "metrics_host", limit: 255, default: "localhost" + t.integer "metrics_pool_size", limit: 4, default: 16 + t.integer "metrics_timeout", limit: 4, default: 10 + t.integer "metrics_method_call_threshold", limit: 4, default: 10 t.boolean "recaptcha_enabled", default: false - t.string "recaptcha_site_key" - t.string "recaptcha_private_key" - t.integer "metrics_port", default: 8089 + t.string "recaptcha_site_key", limit: 255 + t.string "recaptcha_private_key", limit: 255 + t.integer "metrics_port", limit: 4, default: 8089 t.boolean "akismet_enabled", default: false - t.string "akismet_api_key" - t.integer "metrics_sample_interval", default: 15 + t.string "akismet_api_key", limit: 255 + t.integer "metrics_sample_interval", limit: 4, default: 15 t.boolean "sentry_enabled", default: false - t.string "sentry_dsn" + t.string "sentry_dsn", limit: 255 t.boolean "email_author_in_body", default: false - t.integer "default_group_visibility" + t.integer "default_group_visibility", limit: 4 t.boolean "repository_checks_enabled", default: false - t.text "shared_runners_text" - t.integer "metrics_packet_size", default: 1 - t.text "disabled_oauth_sign_in_sources" - t.string "health_check_access_token" + t.text "shared_runners_text", limit: 65535 + t.integer "metrics_packet_size", limit: 4, default: 1 + t.text "disabled_oauth_sign_in_sources", limit: 65535 + t.string "health_check_access_token", limit: 255 t.boolean "send_user_confirmation_email", default: false - t.integer "container_registry_token_expire_delay", default: 5 - t.text "after_sign_up_text" + t.integer "container_registry_token_expire_delay", limit: 4, default: 5 + t.text "after_sign_up_text", limit: 65535 t.boolean "user_default_external", default: false, null: false - t.string "repository_storages", default: "default" - t.string "enabled_git_access_protocol" + t.boolean "elasticsearch_indexing", default: false, null: false + t.boolean "elasticsearch_search", default: false, null: false + t.string "elasticsearch_host", limit: 255, default: "localhost" + t.string "elasticsearch_port", limit: 255, default: "9200" + t.string "repository_storages", limit: 255, default: "default" + t.string "enabled_git_access_protocol", limit: 255 t.boolean "domain_blacklist_enabled", default: false - t.text "domain_blacklist" + t.text "domain_blacklist", limit: 65535 + t.boolean "usage_ping_enabled", default: true, null: false t.boolean "koding_enabled" - t.string "koding_url" - t.text "sign_in_text_html" - t.text "help_page_text_html" - t.text "shared_runners_text_html" - t.text "after_sign_up_text_html" - t.boolean "sidekiq_throttling_enabled", default: false - t.string "sidekiq_throttling_queues" - t.decimal "sidekiq_throttling_factor" + t.string "koding_url", limit: 255 + t.integer "repository_size_limit", limit: 4, default: 0 + t.text "sign_in_text_html", limit: 65535 + t.text "help_page_text_html", limit: 65535 + t.text "shared_runners_text_html", limit: 65535 + t.text "after_sign_up_text_html", limit: 65535 + t.boolean "user_activity_enabled", default: true, null: false t.boolean "housekeeping_enabled", default: true, null: false t.boolean "housekeeping_bitmaps_enabled", default: true, null: false - t.integer "housekeeping_incremental_repack_period", default: 10, null: false - t.integer "housekeeping_full_repack_period", default: 50, null: false - t.integer "housekeeping_gc_period", default: 200, null: false + t.integer "housekeeping_incremental_repack_period", limit: 4, default: 10, null: false + t.integer "housekeeping_full_repack_period", limit: 4, default: 50, null: false + t.integer "housekeeping_gc_period", limit: 4, default: 200, null: false + t.boolean "sidekiq_throttling_enabled", default: false + t.string "sidekiq_throttling_queues", limit: 255 + t.decimal "sidekiq_throttling_factor", precision: 10 + end + + create_table "approvals", force: :cascade do |t| + t.integer "merge_request_id", limit: 4, null: false + t.integer "user_id", limit: 4, null: false + t.datetime "created_at" + t.datetime "updated_at" + end + + create_table "approver_groups", force: :cascade do |t| + t.integer "target_id", limit: 4, null: false + t.string "target_type", limit: 255, null: false + t.integer "group_id", limit: 4, null: false + t.datetime "created_at" + t.datetime "updated_at" end + add_index "approver_groups", ["group_id"], name: "index_approver_groups_on_group_id", using: :btree + add_index "approver_groups", ["target_id", "target_type"], name: "index_approver_groups_on_target_id_and_target_type", using: :btree + + create_table "approvers", force: :cascade do |t| + t.integer "target_id", limit: 4, null: false + t.string "target_type", limit: 255 + t.integer "user_id", limit: 4, null: false + t.datetime "created_at" + t.datetime "updated_at" + end + + add_index "approvers", ["target_id", "target_type"], name: "index_approvers_on_target_id_and_target_type", using: :btree + add_index "approvers", ["user_id"], name: "index_approvers_on_user_id", using: :btree + create_table "audit_events", force: :cascade do |t| - t.integer "author_id", null: false - t.string "type", null: false - t.integer "entity_id", null: false - t.string "entity_type", null: false - t.text "details" + t.integer "author_id", limit: 4, null: false + t.string "type", limit: 255, null: false + t.integer "entity_id", limit: 4, null: false + t.string "entity_type", limit: 255, null: false + t.text "details", limit: 65535 t.datetime "created_at" t.datetime "updated_at" end @@ -121,10 +156,10 @@ ActiveRecord::Schema.define(version: 20161109150329) do add_index "audit_events", ["entity_id", "entity_type"], name: "index_audit_events_on_entity_id_and_entity_type", using: :btree create_table "award_emoji", force: :cascade do |t| - t.string "name" - t.integer "user_id" - t.integer "awardable_id" - t.string "awardable_type" + t.string "name", limit: 255 + t.integer "user_id", limit: 4 + t.integer "awardable_id", limit: 4 + t.string "awardable_type", limit: 255 t.datetime "created_at" t.datetime "updated_at" end @@ -134,22 +169,23 @@ ActiveRecord::Schema.define(version: 20161109150329) do add_index "award_emoji", ["user_id"], name: "index_award_emoji_on_user_id", using: :btree create_table "boards", force: :cascade do |t| - t.integer "project_id", null: false + t.integer "project_id", limit: 4, null: false t.datetime "created_at", null: false t.datetime "updated_at", null: false + t.string "name", limit: 255, default: "Development", null: false end add_index "boards", ["project_id"], name: "index_boards_on_project_id", using: :btree create_table "broadcast_messages", force: :cascade do |t| - t.text "message", null: false + t.text "message", limit: 65535, null: false t.datetime "starts_at" t.datetime "ends_at" t.datetime "created_at" t.datetime "updated_at" - t.string "color" - t.string "font" - t.text "message_html" + t.string "color", limit: 255 + t.string "font", limit: 255 + t.text "message_html", limit: 65535 end create_table "ci_application_settings", force: :cascade do |t| @@ -160,44 +196,44 @@ ActiveRecord::Schema.define(version: 20161109150329) do end create_table "ci_builds", force: :cascade do |t| - t.integer "project_id" - t.string "status" + t.integer "project_id", limit: 4 + t.string "status", limit: 255 t.datetime "finished_at" - t.text "trace" + t.text "trace", limit: 65535 t.datetime "created_at" t.datetime "updated_at" t.datetime "started_at" - t.integer "runner_id" - t.float "coverage" - t.integer "commit_id" - t.text "commands" - t.integer "job_id" - t.string "name" + t.integer "runner_id", limit: 4 + t.float "coverage", limit: 24 + t.integer "commit_id", limit: 4 + t.text "commands", limit: 65535 + t.integer "job_id", limit: 4 + t.string "name", limit: 255 t.boolean "deploy", default: false - t.text "options" + t.text "options", limit: 65535 t.boolean "allow_failure", default: false, null: false - t.string "stage" - t.integer "trigger_request_id" - t.integer "stage_idx" + t.string "stage", limit: 255 + t.integer "trigger_request_id", limit: 4 + t.integer "stage_idx", limit: 4 t.boolean "tag" - t.string "ref" - t.integer "user_id" - t.string "type" - t.string "target_url" - t.string "description" - t.text "artifacts_file" - t.integer "gl_project_id" - t.text "artifacts_metadata" - t.integer "erased_by_id" + t.string "ref", limit: 255 + t.integer "user_id", limit: 4 + t.string "type", limit: 255 + t.string "target_url", limit: 255 + t.string "description", limit: 255 + t.text "artifacts_file", limit: 65535 + t.integer "gl_project_id", limit: 4 + t.text "artifacts_metadata", limit: 65535 + t.integer "erased_by_id", limit: 4 t.datetime "erased_at" t.datetime "artifacts_expire_at" - t.string "environment" + t.string "environment", limit: 255 t.integer "artifacts_size", limit: 8 - t.string "when" - t.text "yaml_variables" + t.string "when", limit: 255 + t.text "yaml_variables", limit: 65535 t.datetime "queued_at" - t.string "token" - t.integer "lock_version" + t.string "token", limit: 255 + t.integer "lock_version", limit: 4 end add_index "ci_builds", ["commit_id", "stage_idx", "created_at"], name: "index_ci_builds_on_commit_id_and_stage_idx_and_created_at", using: :btree @@ -212,23 +248,23 @@ ActiveRecord::Schema.define(version: 20161109150329) do add_index "ci_builds", ["token"], name: "index_ci_builds_on_token", unique: true, using: :btree create_table "ci_commits", force: :cascade do |t| - t.integer "project_id" - t.string "ref" - t.string "sha" - t.string "before_sha" - t.text "push_data" + t.integer "project_id", limit: 4 + t.string "ref", limit: 255 + t.string "sha", limit: 255 + t.string "before_sha", limit: 255 + t.text "push_data", limit: 65535 t.datetime "created_at" t.datetime "updated_at" t.boolean "tag", default: false - t.text "yaml_errors" + t.text "yaml_errors", limit: 65535 t.datetime "committed_at" - t.integer "gl_project_id" - t.string "status" + t.integer "gl_project_id", limit: 4 + t.string "status", limit: 255 t.datetime "started_at" t.datetime "finished_at" - t.integer "duration" - t.integer "user_id" - t.integer "lock_version" + t.integer "duration", limit: 4 + t.integer "user_id", limit: 4 + t.integer "lock_version", limit: 4 end add_index "ci_commits", ["gl_project_id", "sha"], name: "index_ci_commits_on_gl_project_id_and_sha", using: :btree @@ -238,75 +274,75 @@ ActiveRecord::Schema.define(version: 20161109150329) do add_index "ci_commits", ["user_id"], name: "index_ci_commits_on_user_id", using: :btree create_table "ci_events", force: :cascade do |t| - t.integer "project_id" - t.integer "user_id" - t.integer "is_admin" - t.text "description" + t.integer "project_id", limit: 4 + t.integer "user_id", limit: 4 + t.integer "is_admin", limit: 4 + t.text "description", limit: 65535 t.datetime "created_at" t.datetime "updated_at" end create_table "ci_jobs", force: :cascade do |t| - t.integer "project_id", null: false - t.text "commands" + t.integer "project_id", limit: 4, null: false + t.text "commands", limit: 65535 t.boolean "active", default: true, null: false t.datetime "created_at" t.datetime "updated_at" - t.string "name" + t.string "name", limit: 255 t.boolean "build_branches", default: true, null: false t.boolean "build_tags", default: false, null: false - t.string "job_type", default: "parallel" - t.string "refs" + t.string "job_type", limit: 255, default: "parallel" + t.string "refs", limit: 255 t.datetime "deleted_at" end create_table "ci_projects", force: :cascade do |t| - t.string "name" - t.integer "timeout", default: 3600, null: false + t.string "name", limit: 255 + t.integer "timeout", limit: 4, default: 3600, null: false t.datetime "created_at" t.datetime "updated_at" - t.string "token" - t.string "default_ref" - t.string "path" + t.string "token", limit: 255 + t.string "default_ref", limit: 255 + t.string "path", limit: 255 t.boolean "always_build", default: false, null: false - t.integer "polling_interval" + t.integer "polling_interval", limit: 4 t.boolean "public", default: false, null: false - t.string "ssh_url_to_repo" - t.integer "gitlab_id" + t.string "ssh_url_to_repo", limit: 255 + t.integer "gitlab_id", limit: 4 t.boolean "allow_git_fetch", default: true, null: false - t.string "email_recipients", default: "", null: false + t.string "email_recipients", limit: 255, default: "", null: false t.boolean "email_add_pusher", default: true, null: false t.boolean "email_only_broken_builds", default: true, null: false - t.string "skip_refs" - t.string "coverage_regex" + t.string "skip_refs", limit: 255 + t.string "coverage_regex", limit: 255 t.boolean "shared_runners_enabled", default: false - t.text "generated_yaml_config" + t.text "generated_yaml_config", limit: 65535 end create_table "ci_runner_projects", force: :cascade do |t| - t.integer "runner_id", null: false - t.integer "project_id" + t.integer "runner_id", limit: 4, null: false + t.integer "project_id", limit: 4 t.datetime "created_at" t.datetime "updated_at" - t.integer "gl_project_id" + t.integer "gl_project_id", limit: 4 end add_index "ci_runner_projects", ["gl_project_id"], name: "index_ci_runner_projects_on_gl_project_id", using: :btree add_index "ci_runner_projects", ["runner_id"], name: "index_ci_runner_projects_on_runner_id", using: :btree create_table "ci_runners", force: :cascade do |t| - t.string "token" + t.string "token", limit: 255 t.datetime "created_at" t.datetime "updated_at" - t.string "description" + t.string "description", limit: 255 t.datetime "contacted_at" t.boolean "active", default: true, null: false t.boolean "is_shared", default: false - t.string "name" - t.string "version" - t.string "revision" - t.string "platform" - t.string "architecture" + t.string "name", limit: 255 + t.string "version", limit: 255 + t.string "revision", limit: 255 + t.string "platform", limit: 255 + t.string "architecture", limit: 255 t.boolean "run_untagged", default: true, null: false t.boolean "locked", default: false, null: false end @@ -315,18 +351,18 @@ ActiveRecord::Schema.define(version: 20161109150329) do add_index "ci_runners", ["token"], name: "index_ci_runners_on_token", using: :btree create_table "ci_sessions", force: :cascade do |t| - t.string "session_id", null: false - t.text "data" + t.string "session_id", limit: 255, null: false + t.text "data", limit: 65535 t.datetime "created_at" t.datetime "updated_at" end create_table "ci_taggings", force: :cascade do |t| - t.integer "tag_id" - t.integer "taggable_id" - t.string "taggable_type" - t.integer "tagger_id" - t.string "tagger_type" + t.integer "tag_id", limit: 4 + t.integer "taggable_id", limit: 4 + t.string "taggable_type", limit: 255 + t.integer "tagger_id", limit: 4 + t.string "tagger_type", limit: 255 t.string "context", limit: 128 t.datetime "created_at" end @@ -334,44 +370,44 @@ ActiveRecord::Schema.define(version: 20161109150329) do add_index "ci_taggings", ["taggable_id", "taggable_type", "context"], name: "index_ci_taggings_on_taggable_id_and_taggable_type_and_context", using: :btree create_table "ci_tags", force: :cascade do |t| - t.string "name" - t.integer "taggings_count", default: 0 + t.string "name", limit: 255 + t.integer "taggings_count", limit: 4, default: 0 end create_table "ci_trigger_requests", force: :cascade do |t| - t.integer "trigger_id", null: false - t.text "variables" + t.integer "trigger_id", limit: 4, null: false + t.text "variables", limit: 65535 t.datetime "created_at" t.datetime "updated_at" - t.integer "commit_id" + t.integer "commit_id", limit: 4 end create_table "ci_triggers", force: :cascade do |t| - t.string "token" - t.integer "project_id" + t.string "token", limit: 255 + t.integer "project_id", limit: 4 t.datetime "deleted_at" t.datetime "created_at" t.datetime "updated_at" - t.integer "gl_project_id" + t.integer "gl_project_id", limit: 4 end add_index "ci_triggers", ["gl_project_id"], name: "index_ci_triggers_on_gl_project_id", using: :btree create_table "ci_variables", force: :cascade do |t| - t.integer "project_id" - t.string "key" - t.text "value" - t.text "encrypted_value" - t.string "encrypted_value_salt" - t.string "encrypted_value_iv" - t.integer "gl_project_id" + t.integer "project_id", limit: 4 + t.string "key", limit: 255 + t.text "value", limit: 65535 + t.text "encrypted_value", limit: 65535 + t.string "encrypted_value_salt", limit: 255 + t.string "encrypted_value_iv", limit: 255 + t.integer "gl_project_id", limit: 4 end add_index "ci_variables", ["gl_project_id"], name: "index_ci_variables_on_gl_project_id", using: :btree create_table "deploy_keys_projects", force: :cascade do |t| - t.integer "deploy_key_id", null: false - t.integer "project_id", null: false + t.integer "deploy_key_id", limit: 4, null: false + t.integer "project_id", limit: 4, null: false t.datetime "created_at" t.datetime "updated_at" end @@ -379,18 +415,18 @@ ActiveRecord::Schema.define(version: 20161109150329) do add_index "deploy_keys_projects", ["project_id"], name: "index_deploy_keys_projects_on_project_id", using: :btree create_table "deployments", force: :cascade do |t| - t.integer "iid", null: false - t.integer "project_id", null: false - t.integer "environment_id", null: false - t.string "ref", null: false + t.integer "iid", limit: 4, null: false + t.integer "project_id", limit: 4, null: false + t.integer "environment_id", limit: 4, null: false + t.string "ref", limit: 255, null: false t.boolean "tag", null: false - t.string "sha", null: false - t.integer "user_id" - t.integer "deployable_id" - t.string "deployable_type" + t.string "sha", limit: 255, null: false + t.integer "user_id", limit: 4 + t.integer "deployable_id", limit: 4 + t.string "deployable_type", limit: 255 t.datetime "created_at" t.datetime "updated_at" - t.string "on_stop" + t.string "on_stop", limit: 255 end add_index "deployments", ["project_id", "environment_id", "iid"], name: "index_deployments_on_project_id_and_environment_id_and_iid", using: :btree @@ -399,8 +435,8 @@ ActiveRecord::Schema.define(version: 20161109150329) do add_index "deployments", ["project_id"], name: "index_deployments_on_project_id", using: :btree create_table "emails", force: :cascade do |t| - t.integer "user_id", null: false - t.string "email", null: false + t.integer "user_id", limit: 4, null: false + t.string "email", limit: 255, null: false t.datetime "created_at" t.datetime "updated_at" end @@ -409,27 +445,27 @@ ActiveRecord::Schema.define(version: 20161109150329) do add_index "emails", ["user_id"], name: "index_emails_on_user_id", using: :btree create_table "environments", force: :cascade do |t| - t.integer "project_id" - t.string "name", null: false + t.integer "project_id", limit: 4 + t.string "name", limit: 255, null: false t.datetime "created_at" t.datetime "updated_at" - t.string "external_url" - t.string "environment_type" - t.string "state", default: "available", null: false + t.string "external_url", limit: 255 + t.string "environment_type", limit: 255 + t.string "state", limit: 255, default: "available", null: false end add_index "environments", ["project_id", "name"], name: "index_environments_on_project_id_and_name", using: :btree create_table "events", force: :cascade do |t| - t.string "target_type" - t.integer "target_id" - t.string "title" - t.text "data" - t.integer "project_id" + t.string "target_type", limit: 255 + t.integer "target_id", limit: 4 + t.string "title", limit: 255 + t.text "data", limit: 4294967295 + t.integer "project_id", limit: 4 t.datetime "created_at" t.datetime "updated_at" - t.integer "action" - t.integer "author_id" + t.integer "action", limit: 4 + t.integer "author_id", limit: 4 end add_index "events", ["action"], name: "index_events_on_action", using: :btree @@ -440,26 +476,59 @@ ActiveRecord::Schema.define(version: 20161109150329) do add_index "events", ["target_type"], name: "index_events_on_target_type", using: :btree create_table "forked_project_links", force: :cascade do |t| - t.integer "forked_to_project_id", null: false - t.integer "forked_from_project_id", null: false + t.integer "forked_to_project_id", limit: 4, null: false + t.integer "forked_from_project_id", limit: 4, null: false t.datetime "created_at" t.datetime "updated_at" end add_index "forked_project_links", ["forked_to_project_id"], name: "index_forked_project_links_on_forked_to_project_id", unique: true, using: :btree + create_table "geo_nodes", force: :cascade do |t| + t.string "schema", limit: 255 + t.string "host", limit: 255 + t.integer "port", limit: 4 + t.string "relative_url_root", limit: 255 + t.boolean "primary" + t.integer "geo_node_key_id", limit: 4 + t.integer "oauth_application_id", limit: 4 + t.integer "system_hook_id", limit: 4 + end + + add_index "geo_nodes", ["host"], name: "index_geo_nodes_on_host", using: :btree + add_index "geo_nodes", ["primary"], name: "index_geo_nodes_on_primary", using: :btree + + create_table "historical_data", force: :cascade do |t| + t.date "date", null: false + t.integer "active_user_count", limit: 4 + t.datetime "created_at" + t.datetime "updated_at" + end + create_table "identities", force: :cascade do |t| - t.string "extern_uid" - t.string "provider" - t.integer "user_id" + t.string "extern_uid", limit: 255 + t.string "provider", limit: 255 + t.integer "user_id", limit: 4 t.datetime "created_at" t.datetime "updated_at" + t.string "secondary_extern_uid", limit: 255 end add_index "identities", ["user_id"], name: "index_identities_on_user_id", using: :btree + create_table "index_statuses", force: :cascade do |t| + t.integer "project_id", limit: 4, null: false + t.datetime "indexed_at" + t.text "note", limit: 65535 + t.string "last_commit", limit: 255 + t.datetime "created_at", null: false + t.datetime "updated_at", null: false + end + + add_index "index_statuses", ["project_id"], name: "index_index_statuses_on_project_id", unique: true, using: :btree + create_table "issue_metrics", force: :cascade do |t| - t.integer "issue_id", null: false + t.integer "issue_id", limit: 4, null: false t.datetime "first_mentioned_in_commit_at" t.datetime "first_associated_with_milestone_at" t.datetime "first_added_to_board_at" @@ -470,26 +539,27 @@ ActiveRecord::Schema.define(version: 20161109150329) do add_index "issue_metrics", ["issue_id"], name: "index_issue_metrics", using: :btree create_table "issues", force: :cascade do |t| - t.string "title" - t.integer "assignee_id" - t.integer "author_id" - t.integer "project_id" + t.string "title", limit: 255 + t.integer "assignee_id", limit: 4 + t.integer "author_id", limit: 4 + t.integer "project_id", limit: 4 t.datetime "created_at" t.datetime "updated_at" - t.integer "position", default: 0 - t.string "branch_name" - t.text "description" - t.integer "milestone_id" - t.string "state" - t.integer "iid" - t.integer "updated_by_id" + t.integer "position", limit: 4, default: 0 + t.string "branch_name", limit: 255 + t.text "description", limit: 65535 + t.integer "milestone_id", limit: 4 + t.string "state", limit: 255 + t.integer "iid", limit: 4 + t.integer "updated_by_id", limit: 4 + t.integer "weight", limit: 4 t.boolean "confidential", default: false t.datetime "deleted_at" t.date "due_date" - t.integer "moved_to_id" - t.integer "lock_version" - t.text "title_html" - t.text "description_html" + t.integer "moved_to_id", limit: 4 + t.integer "lock_version", limit: 4 + t.text "title_html", limit: 65535 + t.text "description_html", limit: 65535 end add_index "issues", ["assignee_id"], name: "index_issues_on_assignee_id", using: :btree @@ -497,21 +567,19 @@ ActiveRecord::Schema.define(version: 20161109150329) do add_index "issues", ["confidential"], name: "index_issues_on_confidential", using: :btree add_index "issues", ["created_at"], name: "index_issues_on_created_at", using: :btree add_index "issues", ["deleted_at"], name: "index_issues_on_deleted_at", using: :btree - add_index "issues", ["description"], name: "index_issues_on_description_trigram", using: :gin, opclasses: {"description"=>"gin_trgm_ops"} add_index "issues", ["due_date"], name: "index_issues_on_due_date", using: :btree add_index "issues", ["milestone_id"], name: "index_issues_on_milestone_id", using: :btree add_index "issues", ["project_id", "iid"], name: "index_issues_on_project_id_and_iid", unique: true, using: :btree add_index "issues", ["state"], name: "index_issues_on_state", using: :btree - add_index "issues", ["title"], name: "index_issues_on_title_trigram", using: :gin, opclasses: {"title"=>"gin_trgm_ops"} create_table "keys", force: :cascade do |t| - t.integer "user_id" + t.integer "user_id", limit: 4 t.datetime "created_at" t.datetime "updated_at" - t.text "key" - t.string "title" - t.string "type" - t.string "fingerprint" + t.text "key", limit: 65535 + t.string "title", limit: 255 + t.string "type", limit: 255 + t.string "fingerprint", limit: 255 t.boolean "public", default: false, null: false end @@ -519,9 +587,9 @@ ActiveRecord::Schema.define(version: 20161109150329) do add_index "keys", ["user_id"], name: "index_keys_on_user_id", using: :btree create_table "label_links", force: :cascade do |t| - t.integer "label_id" - t.integer "target_id" - t.string "target_type" + t.integer "label_id", limit: 4 + t.integer "target_id", limit: 4 + t.string "target_type", limit: 255 t.datetime "created_at" t.datetime "updated_at" end @@ -530,56 +598,72 @@ ActiveRecord::Schema.define(version: 20161109150329) do add_index "label_links", ["target_id", "target_type"], name: "index_label_links_on_target_id_and_target_type", using: :btree create_table "label_priorities", force: :cascade do |t| - t.integer "project_id", null: false - t.integer "label_id", null: false - t.integer "priority", null: false + t.integer "project_id", limit: 4, null: false + t.integer "label_id", limit: 4, null: false + t.integer "priority", limit: 4, null: false t.datetime "created_at", null: false t.datetime "updated_at", null: false end + add_index "label_priorities", ["label_id"], name: "fk_rails_e161058b0f", using: :btree add_index "label_priorities", ["priority"], name: "index_label_priorities_on_priority", using: :btree add_index "label_priorities", ["project_id", "label_id"], name: "index_label_priorities_on_project_id_and_label_id", unique: true, using: :btree create_table "labels", force: :cascade do |t| - t.string "title" - t.string "color" - t.integer "project_id" + t.string "title", limit: 255 + t.string "color", limit: 255 + t.integer "project_id", limit: 4 t.datetime "created_at" t.datetime "updated_at" t.boolean "template", default: false - t.string "description" - t.text "description_html" - t.string "type" - t.integer "group_id" + t.string "description", limit: 255 + t.text "description_html", limit: 65535 + t.string "type", limit: 255 + t.integer "group_id", limit: 4 end add_index "labels", ["group_id", "project_id", "title"], name: "index_labels_on_group_id_and_project_id_and_title", unique: true, using: :btree add_index "labels", ["group_id"], name: "index_labels_on_group_id", using: :btree + create_table "ldap_group_links", force: :cascade do |t| + t.string "cn", limit: 255, null: false + t.integer "group_access", limit: 4, null: false + t.integer "group_id", limit: 4, null: false + t.datetime "created_at" + t.datetime "updated_at" + t.string "provider", limit: 255 + end + create_table "lfs_objects", force: :cascade do |t| - t.string "oid", null: false + t.string "oid", limit: 255, null: false t.integer "size", limit: 8, null: false t.datetime "created_at" t.datetime "updated_at" - t.string "file" + t.string "file", limit: 255 end add_index "lfs_objects", ["oid"], name: "index_lfs_objects_on_oid", unique: true, using: :btree create_table "lfs_objects_projects", force: :cascade do |t| - t.integer "lfs_object_id", null: false - t.integer "project_id", null: false + t.integer "lfs_object_id", limit: 4, null: false + t.integer "project_id", limit: 4, null: false t.datetime "created_at" t.datetime "updated_at" end add_index "lfs_objects_projects", ["project_id"], name: "index_lfs_objects_projects_on_project_id", using: :btree + create_table "licenses", force: :cascade do |t| + t.text "data", limit: 65535, null: false + t.datetime "created_at" + t.datetime "updated_at" + end + create_table "lists", force: :cascade do |t| - t.integer "board_id", null: false - t.integer "label_id" - t.integer "list_type", default: 1, null: false - t.integer "position" + t.integer "board_id", limit: 4, null: false + t.integer "label_id", limit: 4 + t.integer "list_type", limit: 4, default: 1, null: false + t.integer "position", limit: 4 t.datetime "created_at", null: false t.datetime "updated_at", null: false end @@ -589,20 +673,22 @@ ActiveRecord::Schema.define(version: 20161109150329) do add_index "lists", ["label_id"], name: "index_lists_on_label_id", using: :btree create_table "members", force: :cascade do |t| - t.integer "access_level", null: false - t.integer "source_id", null: false - t.string "source_type", null: false - t.integer "user_id" - t.integer "notification_level", null: false - t.string "type" + t.integer "access_level", limit: 4, null: false + t.integer "source_id", limit: 4, null: false + t.string "source_type", limit: 255, null: false + t.integer "user_id", limit: 4 + t.integer "notification_level", limit: 4, null: false + t.string "type", limit: 255 t.datetime "created_at" t.datetime "updated_at" - t.integer "created_by_id" - t.string "invite_email" - t.string "invite_token" + t.integer "created_by_id", limit: 4 + t.string "invite_email", limit: 255 + t.string "invite_token", limit: 255 t.datetime "invite_accepted_at" t.datetime "requested_at" t.date "expires_at" + t.boolean "ldap", default: false, null: false + t.boolean "override", default: false, null: false end add_index "members", ["access_level"], name: "index_members_on_access_level", using: :btree @@ -612,29 +698,29 @@ ActiveRecord::Schema.define(version: 20161109150329) do add_index "members", ["user_id"], name: "index_members_on_user_id", using: :btree create_table "merge_request_diffs", force: :cascade do |t| - t.string "state" - t.text "st_commits" - t.text "st_diffs" - t.integer "merge_request_id", null: false + t.string "state", limit: 255 + t.text "st_commits", limit: 4294967295 + t.text "st_diffs", limit: 4294967295 + t.integer "merge_request_id", limit: 4, null: false t.datetime "created_at" t.datetime "updated_at" - t.string "base_commit_sha" - t.string "real_size" - t.string "head_commit_sha" - t.string "start_commit_sha" + t.string "base_commit_sha", limit: 255 + t.string "real_size", limit: 255 + t.string "head_commit_sha", limit: 255 + t.string "start_commit_sha", limit: 255 end add_index "merge_request_diffs", ["merge_request_id"], name: "index_merge_request_diffs_on_merge_request_id", using: :btree create_table "merge_request_metrics", force: :cascade do |t| - t.integer "merge_request_id", null: false + t.integer "merge_request_id", limit: 4, null: false t.datetime "latest_build_started_at" t.datetime "latest_build_finished_at" t.datetime "first_deployed_to_production_at" t.datetime "merged_at" t.datetime "created_at", null: false t.datetime "updated_at", null: false - t.integer "pipeline_id" + t.integer "pipeline_id", limit: 4 end add_index "merge_request_metrics", ["first_deployed_to_production_at"], name: "index_merge_request_metrics_on_first_deployed_to_production_at", using: :btree @@ -642,51 +728,51 @@ ActiveRecord::Schema.define(version: 20161109150329) do add_index "merge_request_metrics", ["pipeline_id"], name: "index_merge_request_metrics_on_pipeline_id", using: :btree create_table "merge_requests", force: :cascade do |t| - t.string "target_branch", null: false - t.string "source_branch", null: false - t.integer "source_project_id", null: false - t.integer "author_id" - t.integer "assignee_id" - t.string "title" + t.string "target_branch", limit: 255, null: false + t.string "source_branch", limit: 255, null: false + t.integer "source_project_id", limit: 4, null: false + t.integer "author_id", limit: 4 + t.integer "assignee_id", limit: 4 + t.string "title", limit: 255 t.datetime "created_at" t.datetime "updated_at" - t.integer "milestone_id" - t.string "state" - t.string "merge_status" - t.integer "target_project_id", null: false - t.integer "iid" - t.text "description" - t.integer "position", default: 0 + t.integer "milestone_id", limit: 4 + t.string "state", limit: 255 + t.string "merge_status", limit: 255 + t.integer "target_project_id", limit: 4, null: false + t.integer "iid", limit: 4 + t.text "description", limit: 65535 + t.integer "position", limit: 4, default: 0 t.datetime "locked_at" - t.integer "updated_by_id" - t.text "merge_error" - t.text "merge_params" + t.integer "updated_by_id", limit: 4 + t.text "merge_error", limit: 65535 + t.text "merge_params", limit: 65535 t.boolean "merge_when_build_succeeds", default: false, null: false - t.integer "merge_user_id" - t.string "merge_commit_sha" + t.integer "merge_user_id", limit: 4 + t.string "merge_commit_sha", limit: 255 t.datetime "deleted_at" - t.string "in_progress_merge_commit_sha" - t.integer "lock_version" - t.text "title_html" - t.text "description_html" + t.integer "approvals_before_merge", limit: 4 + t.string "rebase_commit_sha", limit: 255 + t.string "in_progress_merge_commit_sha", limit: 255 + t.integer "lock_version", limit: 4 + t.text "title_html", limit: 65535 + t.text "description_html", limit: 65535 end add_index "merge_requests", ["assignee_id"], name: "index_merge_requests_on_assignee_id", using: :btree add_index "merge_requests", ["author_id"], name: "index_merge_requests_on_author_id", using: :btree add_index "merge_requests", ["created_at"], name: "index_merge_requests_on_created_at", using: :btree add_index "merge_requests", ["deleted_at"], name: "index_merge_requests_on_deleted_at", using: :btree - add_index "merge_requests", ["description"], name: "index_merge_requests_on_description_trigram", using: :gin, opclasses: {"description"=>"gin_trgm_ops"} add_index "merge_requests", ["milestone_id"], name: "index_merge_requests_on_milestone_id", using: :btree add_index "merge_requests", ["source_branch"], name: "index_merge_requests_on_source_branch", using: :btree add_index "merge_requests", ["source_project_id"], name: "index_merge_requests_on_source_project_id", using: :btree add_index "merge_requests", ["target_branch"], name: "index_merge_requests_on_target_branch", using: :btree add_index "merge_requests", ["target_project_id", "iid"], name: "index_merge_requests_on_target_project_id_and_iid", unique: true, using: :btree add_index "merge_requests", ["title"], name: "index_merge_requests_on_title", using: :btree - add_index "merge_requests", ["title"], name: "index_merge_requests_on_title_trigram", using: :gin, opclasses: {"title"=>"gin_trgm_ops"} create_table "merge_requests_closing_issues", force: :cascade do |t| - t.integer "merge_request_id", null: false - t.integer "issue_id", null: false + t.integer "merge_request_id", limit: 4, null: false + t.integer "issue_id", limit: 4, null: false t.datetime "created_at", null: false t.datetime "updated_at", null: false end @@ -695,73 +781,78 @@ ActiveRecord::Schema.define(version: 20161109150329) do add_index "merge_requests_closing_issues", ["merge_request_id"], name: "index_merge_requests_closing_issues_on_merge_request_id", using: :btree create_table "milestones", force: :cascade do |t| - t.string "title", null: false - t.integer "project_id", null: false - t.text "description" + t.string "title", limit: 255, null: false + t.integer "project_id", limit: 4, null: false + t.text "description", limit: 65535 t.date "due_date" t.datetime "created_at" t.datetime "updated_at" - t.string "state" - t.integer "iid" - t.text "title_html" - t.text "description_html" + t.string "state", limit: 255 + t.integer "iid", limit: 4 + t.text "title_html", limit: 65535 + t.text "description_html", limit: 65535 end - add_index "milestones", ["description"], name: "index_milestones_on_description_trigram", using: :gin, opclasses: {"description"=>"gin_trgm_ops"} add_index "milestones", ["due_date"], name: "index_milestones_on_due_date", using: :btree add_index "milestones", ["project_id", "iid"], name: "index_milestones_on_project_id_and_iid", unique: true, using: :btree add_index "milestones", ["project_id"], name: "index_milestones_on_project_id", using: :btree add_index "milestones", ["title"], name: "index_milestones_on_title", using: :btree - add_index "milestones", ["title"], name: "index_milestones_on_title_trigram", using: :gin, opclasses: {"title"=>"gin_trgm_ops"} create_table "namespaces", force: :cascade do |t| - t.string "name", null: false - t.string "path", null: false - t.integer "owner_id" + t.string "name", limit: 255, null: false + t.string "path", limit: 255, null: false + t.integer "owner_id", limit: 4 t.datetime "created_at" t.datetime "updated_at" - t.string "type" - t.string "description", default: "", null: false - t.string "avatar" + t.string "type", limit: 255 + t.string "description", limit: 255, default: "", null: false + t.string "avatar", limit: 255 + t.boolean "membership_lock", default: false t.boolean "share_with_group_lock", default: false - t.integer "visibility_level", default: 20, null: false + t.integer "visibility_level", limit: 4, default: 20, null: false t.boolean "request_access_enabled", default: false, null: false t.datetime "deleted_at" + t.string "ldap_sync_status", limit: 255, default: "ready", null: false + t.string "ldap_sync_error", limit: 255 + t.datetime "ldap_sync_last_update_at" + t.datetime "ldap_sync_last_successful_update_at" + t.datetime "ldap_sync_last_sync_at" t.boolean "lfs_enabled" - t.text "description_html" + t.integer "repository_size_limit", limit: 4 + t.text "description_html", limit: 65535 end add_index "namespaces", ["created_at"], name: "index_namespaces_on_created_at", using: :btree add_index "namespaces", ["deleted_at"], name: "index_namespaces_on_deleted_at", using: :btree + add_index "namespaces", ["ldap_sync_last_successful_update_at"], name: "index_namespaces_on_ldap_sync_last_successful_update_at", using: :btree + add_index "namespaces", ["ldap_sync_last_update_at"], name: "index_namespaces_on_ldap_sync_last_update_at", using: :btree add_index "namespaces", ["name"], name: "index_namespaces_on_name", unique: true, using: :btree - add_index "namespaces", ["name"], name: "index_namespaces_on_name_trigram", using: :gin, opclasses: {"name"=>"gin_trgm_ops"} add_index "namespaces", ["owner_id"], name: "index_namespaces_on_owner_id", using: :btree add_index "namespaces", ["path"], name: "index_namespaces_on_path", unique: true, using: :btree - add_index "namespaces", ["path"], name: "index_namespaces_on_path_trigram", using: :gin, opclasses: {"path"=>"gin_trgm_ops"} add_index "namespaces", ["type"], name: "index_namespaces_on_type", using: :btree create_table "notes", force: :cascade do |t| - t.text "note" - t.string "noteable_type" - t.integer "author_id" + t.text "note", limit: 65535 + t.string "noteable_type", limit: 255 + t.integer "author_id", limit: 4 t.datetime "created_at" t.datetime "updated_at" - t.integer "project_id" - t.string "attachment" - t.string "line_code" - t.string "commit_id" - t.integer "noteable_id" + t.integer "project_id", limit: 4 + t.string "attachment", limit: 255 + t.string "line_code", limit: 255 + t.string "commit_id", limit: 255 + t.integer "noteable_id", limit: 4 t.boolean "system", default: false, null: false - t.text "st_diff" - t.integer "updated_by_id" - t.string "type" - t.text "position" - t.text "original_position" + t.text "st_diff", limit: 4294967295 + t.integer "updated_by_id", limit: 4 + t.string "type", limit: 255 + t.text "position", limit: 65535 + t.text "original_position", limit: 65535 t.datetime "resolved_at" - t.integer "resolved_by_id" - t.string "discussion_id" - t.string "original_discussion_id" - t.text "note_html" + t.integer "resolved_by_id", limit: 4 + t.string "discussion_id", limit: 255 + t.string "original_discussion_id", limit: 255 + t.text "note_html", limit: 65535 end add_index "notes", ["author_id"], name: "index_notes_on_author_id", using: :btree @@ -769,7 +860,6 @@ ActiveRecord::Schema.define(version: 20161109150329) do add_index "notes", ["created_at"], name: "index_notes_on_created_at", using: :btree add_index "notes", ["discussion_id"], name: "index_notes_on_discussion_id", using: :btree add_index "notes", ["line_code"], name: "index_notes_on_line_code", using: :btree - add_index "notes", ["note"], name: "index_notes_on_note_trigram", using: :gin, opclasses: {"note"=>"gin_trgm_ops"} add_index "notes", ["noteable_id", "noteable_type"], name: "index_notes_on_noteable_id_and_noteable_type", using: :btree add_index "notes", ["noteable_type"], name: "index_notes_on_noteable_type", using: :btree add_index "notes", ["project_id", "noteable_type"], name: "index_notes_on_project_id_and_noteable_type", using: :btree @@ -777,13 +867,13 @@ ActiveRecord::Schema.define(version: 20161109150329) do add_index "notes", ["updated_at"], name: "index_notes_on_updated_at", using: :btree create_table "notification_settings", force: :cascade do |t| - t.integer "user_id", null: false - t.integer "source_id" - t.string "source_type" - t.integer "level", default: 0, null: false + t.integer "user_id", limit: 4, null: false + t.integer "source_id", limit: 4 + t.string "source_type", limit: 255 + t.integer "level", limit: 4, default: 0, null: false t.datetime "created_at", null: false t.datetime "updated_at", null: false - t.text "events" + t.text "events", limit: 65535 end add_index "notification_settings", ["source_id", "source_type"], name: "index_notification_settings_on_source_id_and_source_type", using: :btree @@ -791,27 +881,27 @@ ActiveRecord::Schema.define(version: 20161109150329) do add_index "notification_settings", ["user_id"], name: "index_notification_settings_on_user_id", using: :btree create_table "oauth_access_grants", force: :cascade do |t| - t.integer "resource_owner_id", null: false - t.integer "application_id", null: false - t.string "token", null: false - t.integer "expires_in", null: false - t.text "redirect_uri", null: false + t.integer "resource_owner_id", limit: 4, null: false + t.integer "application_id", limit: 4, null: false + t.string "token", limit: 255, null: false + t.integer "expires_in", limit: 4, null: false + t.text "redirect_uri", limit: 65535, null: false t.datetime "created_at", null: false t.datetime "revoked_at" - t.string "scopes" + t.string "scopes", limit: 255 end add_index "oauth_access_grants", ["token"], name: "index_oauth_access_grants_on_token", unique: true, using: :btree create_table "oauth_access_tokens", force: :cascade do |t| - t.integer "resource_owner_id" - t.integer "application_id" - t.string "token", null: false - t.string "refresh_token" - t.integer "expires_in" + t.integer "resource_owner_id", limit: 4 + t.integer "application_id", limit: 4 + t.string "token", limit: 255, null: false + t.string "refresh_token", limit: 255 + t.integer "expires_in", limit: 4 t.datetime "revoked_at" t.datetime "created_at", null: false - t.string "scopes" + t.string "scopes", limit: 255 end add_index "oauth_access_tokens", ["refresh_token"], name: "index_oauth_access_tokens_on_refresh_token", unique: true, using: :btree @@ -819,24 +909,47 @@ ActiveRecord::Schema.define(version: 20161109150329) do add_index "oauth_access_tokens", ["token"], name: "index_oauth_access_tokens_on_token", unique: true, using: :btree create_table "oauth_applications", force: :cascade do |t| - t.string "name", null: false - t.string "uid", null: false - t.string "secret", null: false - t.text "redirect_uri", null: false - t.string "scopes", default: "", null: false + t.string "name", limit: 255, null: false + t.string "uid", limit: 255, null: false + t.string "secret", limit: 255, null: false + t.text "redirect_uri", limit: 65535, null: false + t.string "scopes", limit: 255, default: "", null: false t.datetime "created_at" t.datetime "updated_at" - t.integer "owner_id" - t.string "owner_type" + t.integer "owner_id", limit: 4 + t.string "owner_type", limit: 255 end add_index "oauth_applications", ["owner_id", "owner_type"], name: "index_oauth_applications_on_owner_id_and_owner_type", using: :btree add_index "oauth_applications", ["uid"], name: "index_oauth_applications_on_uid", unique: true, using: :btree + create_table "pages_domains", force: :cascade do |t| + t.integer "project_id", limit: 4 + t.text "certificate", limit: 65535 + t.text "encrypted_key", limit: 65535 + t.string "encrypted_key_iv", limit: 255 + t.string "encrypted_key_salt", limit: 255 + t.string "domain", limit: 255 + end + + add_index "pages_domains", ["domain"], name: "index_pages_domains_on_domain", unique: true, using: :btree + + create_table "path_locks", force: :cascade do |t| + t.string "path", limit: 255, null: false + t.integer "project_id", limit: 4 + t.integer "user_id", limit: 4 + t.datetime "created_at", null: false + t.datetime "updated_at", null: false + end + + add_index "path_locks", ["path"], name: "index_path_locks_on_path", using: :btree + add_index "path_locks", ["project_id"], name: "index_path_locks_on_project_id", using: :btree + add_index "path_locks", ["user_id"], name: "index_path_locks_on_user_id", using: :btree + create_table "personal_access_tokens", force: :cascade do |t| - t.integer "user_id", null: false - t.string "token", null: false - t.string "name", null: false + t.integer "user_id", limit: 4, null: false + t.string "token", limit: 255, null: false + t.string "name", limit: 255, null: false t.boolean "revoked", default: false t.datetime "expires_at" t.datetime "created_at", null: false @@ -847,64 +960,75 @@ ActiveRecord::Schema.define(version: 20161109150329) do add_index "personal_access_tokens", ["user_id"], name: "index_personal_access_tokens_on_user_id", using: :btree create_table "project_features", force: :cascade do |t| - t.integer "project_id" - t.integer "merge_requests_access_level" - t.integer "issues_access_level" - t.integer "wiki_access_level" - t.integer "snippets_access_level" - t.integer "builds_access_level" + t.integer "project_id", limit: 4 + t.integer "merge_requests_access_level", limit: 4 + t.integer "issues_access_level", limit: 4 + t.integer "wiki_access_level", limit: 4 + t.integer "snippets_access_level", limit: 4 + t.integer "builds_access_level", limit: 4 t.datetime "created_at" t.datetime "updated_at" - t.integer "repository_access_level", default: 20, null: false + t.integer "repository_access_level", limit: 4, default: 20, null: false end add_index "project_features", ["project_id"], name: "index_project_features_on_project_id", using: :btree create_table "project_group_links", force: :cascade do |t| - t.integer "project_id", null: false - t.integer "group_id", null: false + t.integer "project_id", limit: 4, null: false + t.integer "group_id", limit: 4, null: false t.datetime "created_at" t.datetime "updated_at" - t.integer "group_access", default: 30, null: false + t.integer "group_access", limit: 4, default: 30, null: false t.date "expires_at" end create_table "project_import_data", force: :cascade do |t| - t.integer "project_id" - t.text "data" - t.text "encrypted_credentials" - t.string "encrypted_credentials_iv" - t.string "encrypted_credentials_salt" + t.integer "project_id", limit: 4 + t.text "data", limit: 65535 + t.text "encrypted_credentials", limit: 65535 + t.string "encrypted_credentials_iv", limit: 255 + t.string "encrypted_credentials_salt", limit: 255 end add_index "project_import_data", ["project_id"], name: "index_project_import_data_on_project_id", using: :btree create_table "projects", force: :cascade do |t| - t.string "name" - t.string "path" - t.text "description" + t.string "name", limit: 255 + t.string "path", limit: 255 + t.text "description", limit: 65535 t.datetime "created_at" t.datetime "updated_at" - t.integer "creator_id" - t.integer "namespace_id" + t.integer "creator_id", limit: 4 + t.integer "namespace_id", limit: 4 t.datetime "last_activity_at" - t.string "import_url" - t.integer "visibility_level", default: 0, null: false + t.string "import_url", limit: 255 + t.integer "visibility_level", limit: 4, default: 0, null: false t.boolean "archived", default: false, null: false - t.string "avatar" - t.string "import_status" - t.float "repository_size", default: 0.0 - t.integer "star_count", default: 0, null: false - t.string "import_type" - t.string "import_source" - t.integer "commit_count", default: 0 - t.text "import_error" - t.integer "ci_id" + t.string "avatar", limit: 255 + t.string "import_status", limit: 255 + t.float "repository_size", limit: 24, default: 0.0 + t.text "merge_requests_template", limit: 65535 + t.integer "star_count", limit: 4, default: 0, null: false + t.boolean "merge_requests_rebase_enabled", default: false + t.string "import_type", limit: 255 + t.string "import_source", limit: 255 + t.integer "approvals_before_merge", limit: 4, default: 0, null: false + t.boolean "reset_approvals_on_push", default: true + t.integer "commit_count", limit: 4, default: 0 + t.boolean "merge_requests_ff_only_enabled", default: false + t.text "issues_template", limit: 65535 + t.boolean "mirror", default: false, null: false + t.datetime "mirror_last_update_at" + t.datetime "mirror_last_successful_update_at" + t.integer "mirror_user_id", limit: 4 + t.text "import_error", limit: 65535 + t.integer "ci_id", limit: 4 t.boolean "shared_runners_enabled", default: true, null: false - t.string "runners_token" - t.string "build_coverage_regex" + t.string "runners_token", limit: 255 + t.string "build_coverage_regex", limit: 255 t.boolean "build_allow_git_fetch", default: true, null: false - t.integer "build_timeout", default: 3600, null: false + t.integer "build_timeout", limit: 4, default: 3600, null: false + t.boolean "mirror_trigger_builds", default: false, null: false t.boolean "pending_delete", default: false t.boolean "public_builds", default: true, null: false t.boolean "last_repository_check_failed" @@ -912,90 +1036,132 @@ ActiveRecord::Schema.define(version: 20161109150329) do t.boolean "container_registry_enabled" t.boolean "only_allow_merge_if_build_succeeds", default: false, null: false t.boolean "has_external_issue_tracker" - t.string "repository_storage", default: "default", null: false + t.string "repository_storage", limit: 255, default: "default", null: false t.boolean "request_access_enabled", default: false, null: false t.boolean "has_external_wiki" + t.boolean "repository_read_only" t.boolean "lfs_enabled" - t.text "description_html" - t.boolean "only_allow_merge_if_all_discussions_are_resolved" + t.integer "repository_size_limit", limit: 4 + t.text "description_html", limit: 65535 + t.boolean "only_allow_merge_if_all_discussions_are_resolved", default: false, null: false end add_index "projects", ["ci_id"], name: "index_projects_on_ci_id", using: :btree add_index "projects", ["created_at"], name: "index_projects_on_created_at", using: :btree add_index "projects", ["creator_id"], name: "index_projects_on_creator_id", using: :btree - add_index "projects", ["description"], name: "index_projects_on_description_trigram", using: :gin, opclasses: {"description"=>"gin_trgm_ops"} add_index "projects", ["last_activity_at"], name: "index_projects_on_last_activity_at", using: :btree add_index "projects", ["last_repository_check_failed"], name: "index_projects_on_last_repository_check_failed", using: :btree - add_index "projects", ["name"], name: "index_projects_on_name_trigram", using: :gin, opclasses: {"name"=>"gin_trgm_ops"} add_index "projects", ["namespace_id"], name: "index_projects_on_namespace_id", using: :btree add_index "projects", ["path"], name: "index_projects_on_path", using: :btree - add_index "projects", ["path"], name: "index_projects_on_path_trigram", using: :gin, opclasses: {"path"=>"gin_trgm_ops"} add_index "projects", ["pending_delete"], name: "index_projects_on_pending_delete", using: :btree add_index "projects", ["runners_token"], name: "index_projects_on_runners_token", using: :btree add_index "projects", ["star_count"], name: "index_projects_on_star_count", using: :btree add_index "projects", ["visibility_level"], name: "index_projects_on_visibility_level", using: :btree create_table "protected_branch_merge_access_levels", force: :cascade do |t| - t.integer "protected_branch_id", null: false - t.integer "access_level", default: 40, null: false + t.integer "protected_branch_id", limit: 4, null: false + t.integer "access_level", limit: 4, default: 40 t.datetime "created_at", null: false t.datetime "updated_at", null: false + t.integer "user_id", limit: 4 + t.integer "group_id", limit: 4 end + add_index "protected_branch_merge_access_levels", ["group_id"], name: "fk_rails_98f3d044fe", using: :btree add_index "protected_branch_merge_access_levels", ["protected_branch_id"], name: "index_protected_branch_merge_access", using: :btree + add_index "protected_branch_merge_access_levels", ["user_id"], name: "index_protected_branch_merge_access_levels_on_user_id", using: :btree create_table "protected_branch_push_access_levels", force: :cascade do |t| - t.integer "protected_branch_id", null: false - t.integer "access_level", default: 40, null: false + t.integer "protected_branch_id", limit: 4, null: false + t.integer "access_level", limit: 4, default: 40 t.datetime "created_at", null: false t.datetime "updated_at", null: false + t.integer "user_id", limit: 4 + t.integer "group_id", limit: 4 end + add_index "protected_branch_push_access_levels", ["group_id"], name: "fk_rails_7111b68cdb", using: :btree add_index "protected_branch_push_access_levels", ["protected_branch_id"], name: "index_protected_branch_push_access", using: :btree + add_index "protected_branch_push_access_levels", ["user_id"], name: "index_protected_branch_push_access_levels_on_user_id", using: :btree create_table "protected_branches", force: :cascade do |t| - t.integer "project_id", null: false - t.string "name", null: false + t.integer "project_id", limit: 4, null: false + t.string "name", limit: 255, null: false t.datetime "created_at" t.datetime "updated_at" end add_index "protected_branches", ["project_id"], name: "index_protected_branches_on_project_id", using: :btree + create_table "push_rules", force: :cascade do |t| + t.string "force_push_regex", limit: 255 + t.string "delete_branch_regex", limit: 255 + t.string "commit_message_regex", limit: 255 + t.boolean "deny_delete_tag" + t.integer "project_id", limit: 4 + t.datetime "created_at" + t.datetime "updated_at" + t.string "author_email_regex", limit: 255 + t.boolean "member_check", default: false, null: false + t.string "file_name_regex", limit: 255 + t.boolean "is_sample", default: false + t.integer "max_file_size", limit: 4, default: 0, null: false + t.boolean "prevent_secrets", default: false, null: false + end + + add_index "push_rules", ["project_id"], name: "index_push_rules_on_project_id", using: :btree + create_table "releases", force: :cascade do |t| - t.string "tag" - t.text "description" - t.integer "project_id" + t.string "tag", limit: 255 + t.text "description", limit: 65535 + t.integer "project_id", limit: 4 t.datetime "created_at" t.datetime "updated_at" - t.text "description_html" + t.text "description_html", limit: 65535 end add_index "releases", ["project_id", "tag"], name: "index_releases_on_project_id_and_tag", using: :btree add_index "releases", ["project_id"], name: "index_releases_on_project_id", using: :btree + create_table "remote_mirrors", force: :cascade do |t| + t.integer "project_id", limit: 4 + t.string "url", limit: 255 + t.boolean "enabled", default: false + t.string "update_status", limit: 255 + t.datetime "last_update_at" + t.datetime "last_successful_update_at" + t.string "last_error", limit: 255 + t.text "encrypted_credentials", limit: 65535 + t.string "encrypted_credentials_iv", limit: 255 + t.string "encrypted_credentials_salt", limit: 255 + t.datetime "created_at", null: false + t.datetime "updated_at", null: false + end + + add_index "remote_mirrors", ["project_id"], name: "index_remote_mirrors_on_project_id", using: :btree + create_table "sent_notifications", force: :cascade do |t| - t.integer "project_id" - t.integer "noteable_id" - t.string "noteable_type" - t.integer "recipient_id" - t.string "commit_id" - t.string "reply_key", null: false - t.string "line_code" - t.string "note_type" - t.text "position" + t.integer "project_id", limit: 4 + t.integer "noteable_id", limit: 4 + t.string "noteable_type", limit: 255 + t.integer "recipient_id", limit: 4 + t.string "commit_id", limit: 255 + t.string "reply_key", limit: 255, null: false + t.string "line_code", limit: 255 + t.string "note_type", limit: 255 + t.text "position", limit: 65535 end add_index "sent_notifications", ["reply_key"], name: "index_sent_notifications_on_reply_key", unique: true, using: :btree create_table "services", force: :cascade do |t| - t.string "type" - t.string "title" - t.integer "project_id" + t.string "type", limit: 255 + t.string "title", limit: 255 + t.integer "project_id", limit: 4 t.datetime "created_at" t.datetime "updated_at" t.boolean "active", default: false, null: false - t.text "properties" + t.text "properties", limit: 65535 t.boolean "template", default: false t.boolean "push_events", default: true t.boolean "issues_events", default: true @@ -1003,7 +1169,7 @@ ActiveRecord::Schema.define(version: 20161109150329) do t.boolean "tag_push_events", default: true t.boolean "note_events", default: true, null: false t.boolean "build_events", default: false, null: false - t.string "category", default: "common", null: false + t.string "category", limit: 255, default: "common", null: false t.boolean "default", default: false t.boolean "wiki_page_events", default: true t.boolean "pipeline_events", default: false, null: false @@ -1014,43 +1180,41 @@ ActiveRecord::Schema.define(version: 20161109150329) do add_index "services", ["template"], name: "index_services_on_template", using: :btree create_table "snippets", force: :cascade do |t| - t.string "title" - t.text "content" - t.integer "author_id", null: false - t.integer "project_id" + t.string "title", limit: 255 + t.text "content", limit: 4294967295 + t.integer "author_id", limit: 4, null: false + t.integer "project_id", limit: 4 t.datetime "created_at" t.datetime "updated_at" - t.string "file_name" - t.string "type" - t.integer "visibility_level", default: 0, null: false - t.text "title_html" - t.text "content_html" + t.string "file_name", limit: 255 + t.string "type", limit: 255 + t.integer "visibility_level", limit: 4, default: 0, null: false + t.text "title_html", limit: 65535 + t.text "content_html", limit: 65535 end add_index "snippets", ["author_id"], name: "index_snippets_on_author_id", using: :btree - add_index "snippets", ["file_name"], name: "index_snippets_on_file_name_trigram", using: :gin, opclasses: {"file_name"=>"gin_trgm_ops"} add_index "snippets", ["project_id"], name: "index_snippets_on_project_id", using: :btree - add_index "snippets", ["title"], name: "index_snippets_on_title_trigram", using: :gin, opclasses: {"title"=>"gin_trgm_ops"} add_index "snippets", ["updated_at"], name: "index_snippets_on_updated_at", using: :btree add_index "snippets", ["visibility_level"], name: "index_snippets_on_visibility_level", using: :btree create_table "spam_logs", force: :cascade do |t| - t.integer "user_id" - t.string "source_ip" - t.string "user_agent" + t.integer "user_id", limit: 4 + t.string "source_ip", limit: 255 + t.string "user_agent", limit: 255 t.boolean "via_api" - t.string "noteable_type" - t.string "title" - t.text "description" + t.string "noteable_type", limit: 255 + t.string "title", limit: 255 + t.text "description", limit: 65535 t.datetime "created_at", null: false t.datetime "updated_at", null: false t.boolean "submitted_as_ham", default: false, null: false end create_table "subscriptions", force: :cascade do |t| - t.integer "user_id" - t.integer "subscribable_id" - t.string "subscribable_type" + t.integer "user_id", limit: 4 + t.integer "subscribable_id", limit: 4 + t.string "subscribable_type", limit: 255 t.boolean "subscribed" t.datetime "created_at" t.datetime "updated_at" @@ -1059,12 +1223,12 @@ ActiveRecord::Schema.define(version: 20161109150329) do add_index "subscriptions", ["subscribable_id", "subscribable_type", "user_id"], name: "subscriptions_user_id_and_ref_fields", unique: true, using: :btree create_table "taggings", force: :cascade do |t| - t.integer "tag_id" - t.integer "taggable_id" - t.string "taggable_type" - t.integer "tagger_id" - t.string "tagger_type" - t.string "context" + t.integer "tag_id", limit: 4 + t.integer "taggable_id", limit: 4 + t.string "taggable_type", limit: 255 + t.integer "tagger_id", limit: 4 + t.string "tagger_type", limit: 255 + t.string "context", limit: 255 t.datetime "created_at" end @@ -1072,24 +1236,24 @@ ActiveRecord::Schema.define(version: 20161109150329) do add_index "taggings", ["taggable_id", "taggable_type", "context"], name: "index_taggings_on_taggable_id_and_taggable_type_and_context", using: :btree create_table "tags", force: :cascade do |t| - t.string "name" - t.integer "taggings_count", default: 0 + t.string "name", limit: 255 + t.integer "taggings_count", limit: 4, default: 0 end add_index "tags", ["name"], name: "index_tags_on_name", unique: true, using: :btree create_table "todos", force: :cascade do |t| - t.integer "user_id", null: false - t.integer "project_id", null: false - t.integer "target_id" - t.string "target_type", null: false - t.integer "author_id" - t.integer "action", null: false - t.string "state", null: false + t.integer "user_id", limit: 4, null: false + t.integer "project_id", limit: 4, null: false + t.integer "target_id", limit: 4 + t.string "target_type", limit: 255, null: false + t.integer "author_id", limit: 4 + t.integer "action", limit: 4, null: false + t.string "state", limit: 255, null: false t.datetime "created_at" t.datetime "updated_at" - t.integer "note_id" - t.string "commit_id" + t.integer "note_id", limit: 4 + t.string "commit_id", limit: 255 end add_index "todos", ["author_id"], name: "index_todos_on_author_id", using: :btree @@ -1100,95 +1264,104 @@ ActiveRecord::Schema.define(version: 20161109150329) do add_index "todos", ["user_id"], name: "index_todos_on_user_id", using: :btree create_table "trending_projects", force: :cascade do |t| - t.integer "project_id", null: false + t.integer "project_id", limit: 4, null: false end add_index "trending_projects", ["project_id"], name: "index_trending_projects_on_project_id", using: :btree create_table "u2f_registrations", force: :cascade do |t| - t.text "certificate" - t.string "key_handle" - t.string "public_key" - t.integer "counter" - t.integer "user_id" + t.text "certificate", limit: 65535 + t.string "key_handle", limit: 255 + t.string "public_key", limit: 255 + t.integer "counter", limit: 4 + t.integer "user_id", limit: 4 t.datetime "created_at", null: false t.datetime "updated_at", null: false - t.string "name" + t.string "name", limit: 255 end add_index "u2f_registrations", ["key_handle"], name: "index_u2f_registrations_on_key_handle", using: :btree add_index "u2f_registrations", ["user_id"], name: "index_u2f_registrations_on_user_id", using: :btree + create_table "user_activities", force: :cascade do |t| + t.integer "user_id", limit: 4 + t.datetime "last_activity_at", null: false + end + + add_index "user_activities", ["user_id"], name: "index_user_activities_on_user_id", unique: true, using: :btree + create_table "user_agent_details", force: :cascade do |t| - t.string "user_agent", null: false - t.string "ip_address", null: false - t.integer "subject_id", null: false - t.string "subject_type", null: false + t.string "user_agent", limit: 255, null: false + t.string "ip_address", limit: 255, null: false + t.integer "subject_id", limit: 4, null: false + t.string "subject_type", limit: 255, null: false t.boolean "submitted", default: false, null: false t.datetime "created_at", null: false t.datetime "updated_at", null: false end create_table "users", force: :cascade do |t| - t.string "email", default: "", null: false - t.string "encrypted_password", default: "", null: false - t.string "reset_password_token" + t.string "email", limit: 255, default: "", null: false + t.string "encrypted_password", limit: 255, default: "", null: false + t.string "reset_password_token", limit: 255 t.datetime "reset_password_sent_at" t.datetime "remember_created_at" - t.integer "sign_in_count", default: 0 + t.integer "sign_in_count", limit: 4, default: 0 t.datetime "current_sign_in_at" t.datetime "last_sign_in_at" - t.string "current_sign_in_ip" - t.string "last_sign_in_ip" + t.string "current_sign_in_ip", limit: 255 + t.string "last_sign_in_ip", limit: 255 t.datetime "created_at" t.datetime "updated_at" - t.string "name" + t.string "name", limit: 255 t.boolean "admin", default: false, null: false - t.integer "projects_limit", default: 10 - t.string "skype", default: "", null: false - t.string "linkedin", default: "", null: false - t.string "twitter", default: "", null: false - t.string "authentication_token" - t.integer "theme_id", default: 1, null: false - t.string "bio" - t.integer "failed_attempts", default: 0 + t.integer "projects_limit", limit: 4, default: 10 + t.string "skype", limit: 255, default: "", null: false + t.string "linkedin", limit: 255, default: "", null: false + t.string "twitter", limit: 255, default: "", null: false + t.string "authentication_token", limit: 255 + t.integer "theme_id", limit: 4, default: 1, null: false + t.string "bio", limit: 255 + t.integer "failed_attempts", limit: 4, default: 0 t.datetime "locked_at" - t.string "username" + t.string "username", limit: 255 t.boolean "can_create_group", default: true, null: false t.boolean "can_create_team", default: true, null: false - t.string "state" - t.integer "color_scheme_id", default: 1, null: false + t.string "state", limit: 255 + t.integer "color_scheme_id", limit: 4, default: 1, null: false t.datetime "password_expires_at" - t.integer "created_by_id" + t.integer "created_by_id", limit: 4 t.datetime "last_credential_check_at" - t.string "avatar" - t.string "confirmation_token" + t.string "avatar", limit: 255 + t.string "confirmation_token", limit: 255 t.datetime "confirmed_at" t.datetime "confirmation_sent_at" - t.string "unconfirmed_email" + t.string "unconfirmed_email", limit: 255 t.boolean "hide_no_ssh_key", default: false - t.string "website_url", default: "", null: false - t.string "notification_email" + t.string "website_url", limit: 255, default: "", null: false + t.datetime "admin_email_unsubscribed_at" + t.string "notification_email", limit: 255 t.boolean "hide_no_password", default: false t.boolean "password_automatically_set", default: false - t.string "location" - t.string "encrypted_otp_secret" - t.string "encrypted_otp_secret_iv" - t.string "encrypted_otp_secret_salt" + t.string "location", limit: 255 + t.string "encrypted_otp_secret", limit: 255 + t.string "encrypted_otp_secret_iv", limit: 255 + t.string "encrypted_otp_secret_salt", limit: 255 t.boolean "otp_required_for_login", default: false, null: false - t.text "otp_backup_codes" - t.string "public_email", default: "", null: false - t.integer "dashboard", default: 0 - t.integer "project_view", default: 0 - t.integer "consumed_timestep" - t.integer "layout", default: 0 + t.text "otp_backup_codes", limit: 65535 + t.string "public_email", limit: 255, default: "", null: false + t.integer "dashboard", limit: 4, default: 0 + t.integer "project_view", limit: 4, default: 0 + t.integer "consumed_timestep", limit: 4 + t.integer "layout", limit: 4, default: 0 t.boolean "hide_project_limit", default: false - t.string "unlock_token" + t.text "note", limit: 65535 + t.string "unlock_token", limit: 255 t.datetime "otp_grace_period_started_at" t.boolean "ldap_email", default: false, null: false t.boolean "external", default: false - t.string "organization" - t.string "incoming_email_token" + t.string "organization", limit: 255 + t.string "incoming_email_token", limit: 255 end add_index "users", ["admin"], name: "index_users_on_admin", using: :btree @@ -1197,18 +1370,15 @@ ActiveRecord::Schema.define(version: 20161109150329) do add_index "users", ["created_at"], name: "index_users_on_created_at", using: :btree add_index "users", ["current_sign_in_at"], name: "index_users_on_current_sign_in_at", using: :btree add_index "users", ["email"], name: "index_users_on_email", unique: true, using: :btree - add_index "users", ["email"], name: "index_users_on_email_trigram", using: :gin, opclasses: {"email"=>"gin_trgm_ops"} add_index "users", ["incoming_email_token"], name: "index_users_on_incoming_email_token", using: :btree add_index "users", ["name"], name: "index_users_on_name", using: :btree - add_index "users", ["name"], name: "index_users_on_name_trigram", using: :gin, opclasses: {"name"=>"gin_trgm_ops"} add_index "users", ["reset_password_token"], name: "index_users_on_reset_password_token", unique: true, using: :btree add_index "users", ["state"], name: "index_users_on_state", using: :btree add_index "users", ["username"], name: "index_users_on_username", using: :btree - add_index "users", ["username"], name: "index_users_on_username_trigram", using: :gin, opclasses: {"username"=>"gin_trgm_ops"} create_table "users_star_projects", force: :cascade do |t| - t.integer "project_id", null: false - t.integer "user_id", null: false + t.integer "project_id", limit: 4, null: false + t.integer "user_id", limit: 4, null: false t.datetime "created_at" t.datetime "updated_at" end @@ -1219,26 +1389,28 @@ ActiveRecord::Schema.define(version: 20161109150329) do create_table "web_hooks", force: :cascade do |t| t.string "url", limit: 2000 - t.integer "project_id" + t.integer "project_id", limit: 4 t.datetime "created_at" t.datetime "updated_at" - t.string "type", default: "ProjectHook" - t.integer "service_id" + t.string "type", limit: 255, default: "ProjectHook" + t.integer "service_id", limit: 4 t.boolean "push_events", default: true, null: false t.boolean "issues_events", default: false, null: false t.boolean "merge_requests_events", default: false, null: false t.boolean "tag_push_events", default: false + t.integer "group_id", limit: 4 t.boolean "note_events", default: false, null: false t.boolean "enable_ssl_verification", default: true t.boolean "build_events", default: false, null: false + t.string "token", limit: 255 t.boolean "wiki_page_events", default: false, null: false - t.string "token" t.boolean "pipeline_events", default: false, null: false t.boolean "confidential_issues_events", default: false, null: false end add_index "web_hooks", ["project_id"], name: "index_web_hooks_on_project_id", using: :btree + add_foreign_key "approver_groups", "namespaces", column: "group_id", on_delete: :cascade add_foreign_key "boards", "projects" add_foreign_key "issue_metrics", "issues", on_delete: :cascade add_foreign_key "label_priorities", "labels", on_delete: :cascade @@ -1250,9 +1422,17 @@ ActiveRecord::Schema.define(version: 20161109150329) do add_foreign_key "merge_request_metrics", "merge_requests", on_delete: :cascade add_foreign_key "merge_requests_closing_issues", "issues", on_delete: :cascade add_foreign_key "merge_requests_closing_issues", "merge_requests", on_delete: :cascade + add_foreign_key "path_locks", "projects" + add_foreign_key "path_locks", "users" add_foreign_key "personal_access_tokens", "users" + add_foreign_key "protected_branch_merge_access_levels", "namespaces", column: "group_id" add_foreign_key "protected_branch_merge_access_levels", "protected_branches" + add_foreign_key "protected_branch_merge_access_levels", "users" + add_foreign_key "protected_branch_push_access_levels", "namespaces", column: "group_id" add_foreign_key "protected_branch_push_access_levels", "protected_branches" + add_foreign_key "protected_branch_push_access_levels", "users" + add_foreign_key "remote_mirrors", "projects" add_foreign_key "trending_projects", "projects", on_delete: :cascade add_foreign_key "u2f_registrations", "users" + add_foreign_key "user_activities", "users", on_delete: :cascade end -- cgit v1.2.1 From d5b673da79c7c350090dc9982a9a2477fac56eb5 Mon Sep 17 00:00:00 2001 From: James Lopez Date: Thu, 17 Nov 2016 18:00:37 +0100 Subject: more refactoring and added some auth checks --- db/schema.rb | 1194 +++++++++++++++++++++++++--------------------------------- 1 file changed, 507 insertions(+), 687 deletions(-) (limited to 'db/schema.rb') diff --git a/db/schema.rb b/db/schema.rb index 633107f7db7..22318612796 100644 --- a/db/schema.rb +++ b/db/schema.rb @@ -13,142 +13,107 @@ ActiveRecord::Schema.define(version: 20161109150329) do + # These are extensions that must be enabled in order to support this database + enable_extension "plpgsql" + enable_extension "pg_trgm" + create_table "abuse_reports", force: :cascade do |t| - t.integer "reporter_id", limit: 4 - t.integer "user_id", limit: 4 - t.text "message", limit: 65535 + t.integer "reporter_id" + t.integer "user_id" + t.text "message" t.datetime "created_at" t.datetime "updated_at" - t.text "message_html", limit: 65535 + t.text "message_html" end create_table "appearances", force: :cascade do |t| - t.string "title", limit: 255 - t.text "description", limit: 65535 - t.string "logo", limit: 255 - t.integer "updated_by", limit: 4 - t.datetime "created_at" - t.datetime "updated_at" - t.string "header_logo", limit: 255 - t.text "description_html", limit: 65535 + t.string "title" + t.text "description" + t.string "header_logo" + t.string "logo" + t.datetime "created_at", null: false + t.datetime "updated_at", null: false + t.text "description_html" end create_table "application_settings", force: :cascade do |t| - t.integer "default_projects_limit", limit: 4 + t.integer "default_projects_limit" t.boolean "signup_enabled" t.boolean "signin_enabled" t.boolean "gravatar_enabled" - t.text "sign_in_text", limit: 65535 + t.text "sign_in_text" t.datetime "created_at" t.datetime "updated_at" - t.string "home_page_url", limit: 255 - t.integer "default_branch_protection", limit: 4, default: 2 - t.text "help_text", limit: 65535 - t.text "restricted_visibility_levels", limit: 65535 + t.string "home_page_url" + t.integer "default_branch_protection", default: 2 + t.text "restricted_visibility_levels" t.boolean "version_check_enabled", default: true - t.integer "max_attachment_size", limit: 4, default: 10, null: false - t.integer "default_project_visibility", limit: 4 - t.integer "default_snippet_visibility", limit: 4 - t.text "domain_whitelist", limit: 65535 + t.integer "max_attachment_size", default: 10, null: false + t.integer "default_project_visibility" + t.integer "default_snippet_visibility" + t.text "domain_whitelist" t.boolean "user_oauth_applications", default: true - t.string "after_sign_out_path", limit: 255 - t.integer "session_expire_delay", limit: 4, default: 10080, null: false - t.text "import_sources", limit: 65535 - t.text "help_page_text", limit: 65535 - t.string "admin_notification_email", limit: 255 + t.string "after_sign_out_path" + t.integer "session_expire_delay", default: 10080, null: false + t.text "import_sources" + t.text "help_page_text" + t.string "admin_notification_email" t.boolean "shared_runners_enabled", default: true, null: false - t.integer "max_artifacts_size", limit: 4, default: 100, null: false - t.string "runners_registration_token", limit: 255 - t.integer "max_pages_size", limit: 4, default: 100, null: false + t.integer "max_artifacts_size", default: 100, null: false + t.string "runners_registration_token" t.boolean "require_two_factor_authentication", default: false - t.integer "two_factor_grace_period", limit: 4, default: 48 + t.integer "two_factor_grace_period", default: 48 t.boolean "metrics_enabled", default: false - t.string "metrics_host", limit: 255, default: "localhost" - t.integer "metrics_pool_size", limit: 4, default: 16 - t.integer "metrics_timeout", limit: 4, default: 10 - t.integer "metrics_method_call_threshold", limit: 4, default: 10 + t.string "metrics_host", default: "localhost" + t.integer "metrics_pool_size", default: 16 + t.integer "metrics_timeout", default: 10 + t.integer "metrics_method_call_threshold", default: 10 t.boolean "recaptcha_enabled", default: false - t.string "recaptcha_site_key", limit: 255 - t.string "recaptcha_private_key", limit: 255 - t.integer "metrics_port", limit: 4, default: 8089 + t.string "recaptcha_site_key" + t.string "recaptcha_private_key" + t.integer "metrics_port", default: 8089 t.boolean "akismet_enabled", default: false - t.string "akismet_api_key", limit: 255 - t.integer "metrics_sample_interval", limit: 4, default: 15 + t.string "akismet_api_key" + t.integer "metrics_sample_interval", default: 15 t.boolean "sentry_enabled", default: false - t.string "sentry_dsn", limit: 255 + t.string "sentry_dsn" t.boolean "email_author_in_body", default: false - t.integer "default_group_visibility", limit: 4 + t.integer "default_group_visibility" t.boolean "repository_checks_enabled", default: false - t.text "shared_runners_text", limit: 65535 - t.integer "metrics_packet_size", limit: 4, default: 1 - t.text "disabled_oauth_sign_in_sources", limit: 65535 - t.string "health_check_access_token", limit: 255 + t.text "shared_runners_text" + t.integer "metrics_packet_size", default: 1 + t.text "disabled_oauth_sign_in_sources" + t.string "health_check_access_token" t.boolean "send_user_confirmation_email", default: false - t.integer "container_registry_token_expire_delay", limit: 4, default: 5 - t.text "after_sign_up_text", limit: 65535 + t.integer "container_registry_token_expire_delay", default: 5 + t.text "after_sign_up_text" t.boolean "user_default_external", default: false, null: false - t.boolean "elasticsearch_indexing", default: false, null: false - t.boolean "elasticsearch_search", default: false, null: false - t.string "elasticsearch_host", limit: 255, default: "localhost" - t.string "elasticsearch_port", limit: 255, default: "9200" - t.string "repository_storages", limit: 255, default: "default" - t.string "enabled_git_access_protocol", limit: 255 + t.string "repository_storages", default: "default" + t.string "enabled_git_access_protocol" t.boolean "domain_blacklist_enabled", default: false - t.text "domain_blacklist", limit: 65535 - t.boolean "usage_ping_enabled", default: true, null: false + t.text "domain_blacklist" t.boolean "koding_enabled" - t.string "koding_url", limit: 255 - t.integer "repository_size_limit", limit: 4, default: 0 - t.text "sign_in_text_html", limit: 65535 - t.text "help_page_text_html", limit: 65535 - t.text "shared_runners_text_html", limit: 65535 - t.text "after_sign_up_text_html", limit: 65535 - t.boolean "user_activity_enabled", default: true, null: false + t.string "koding_url" + t.text "sign_in_text_html" + t.text "help_page_text_html" + t.text "shared_runners_text_html" + t.text "after_sign_up_text_html" t.boolean "housekeeping_enabled", default: true, null: false t.boolean "housekeeping_bitmaps_enabled", default: true, null: false - t.integer "housekeeping_incremental_repack_period", limit: 4, default: 10, null: false - t.integer "housekeeping_full_repack_period", limit: 4, default: 50, null: false - t.integer "housekeeping_gc_period", limit: 4, default: 200, null: false + t.integer "housekeeping_incremental_repack_period", default: 10, null: false + t.integer "housekeeping_full_repack_period", default: 50, null: false + t.integer "housekeeping_gc_period", default: 200, null: false t.boolean "sidekiq_throttling_enabled", default: false - t.string "sidekiq_throttling_queues", limit: 255 - t.decimal "sidekiq_throttling_factor", precision: 10 - end - - create_table "approvals", force: :cascade do |t| - t.integer "merge_request_id", limit: 4, null: false - t.integer "user_id", limit: 4, null: false - t.datetime "created_at" - t.datetime "updated_at" - end - - create_table "approver_groups", force: :cascade do |t| - t.integer "target_id", limit: 4, null: false - t.string "target_type", limit: 255, null: false - t.integer "group_id", limit: 4, null: false - t.datetime "created_at" - t.datetime "updated_at" - end - - add_index "approver_groups", ["group_id"], name: "index_approver_groups_on_group_id", using: :btree - add_index "approver_groups", ["target_id", "target_type"], name: "index_approver_groups_on_target_id_and_target_type", using: :btree - - create_table "approvers", force: :cascade do |t| - t.integer "target_id", limit: 4, null: false - t.string "target_type", limit: 255 - t.integer "user_id", limit: 4, null: false - t.datetime "created_at" - t.datetime "updated_at" + t.string "sidekiq_throttling_queues" + t.decimal "sidekiq_throttling_factor" end - add_index "approvers", ["target_id", "target_type"], name: "index_approvers_on_target_id_and_target_type", using: :btree - add_index "approvers", ["user_id"], name: "index_approvers_on_user_id", using: :btree - create_table "audit_events", force: :cascade do |t| - t.integer "author_id", limit: 4, null: false - t.string "type", limit: 255, null: false - t.integer "entity_id", limit: 4, null: false - t.string "entity_type", limit: 255, null: false - t.text "details", limit: 65535 + t.integer "author_id", null: false + t.string "type", null: false + t.integer "entity_id", null: false + t.string "entity_type", null: false + t.text "details" t.datetime "created_at" t.datetime "updated_at" end @@ -156,10 +121,10 @@ ActiveRecord::Schema.define(version: 20161109150329) do add_index "audit_events", ["entity_id", "entity_type"], name: "index_audit_events_on_entity_id_and_entity_type", using: :btree create_table "award_emoji", force: :cascade do |t| - t.string "name", limit: 255 - t.integer "user_id", limit: 4 - t.integer "awardable_id", limit: 4 - t.string "awardable_type", limit: 255 + t.string "name" + t.integer "user_id" + t.integer "awardable_id" + t.string "awardable_type" t.datetime "created_at" t.datetime "updated_at" end @@ -169,23 +134,22 @@ ActiveRecord::Schema.define(version: 20161109150329) do add_index "award_emoji", ["user_id"], name: "index_award_emoji_on_user_id", using: :btree create_table "boards", force: :cascade do |t| - t.integer "project_id", limit: 4, null: false + t.integer "project_id", null: false t.datetime "created_at", null: false t.datetime "updated_at", null: false - t.string "name", limit: 255, default: "Development", null: false end add_index "boards", ["project_id"], name: "index_boards_on_project_id", using: :btree create_table "broadcast_messages", force: :cascade do |t| - t.text "message", limit: 65535, null: false + t.text "message", null: false t.datetime "starts_at" t.datetime "ends_at" t.datetime "created_at" t.datetime "updated_at" - t.string "color", limit: 255 - t.string "font", limit: 255 - t.text "message_html", limit: 65535 + t.string "color" + t.string "font" + t.text "message_html" end create_table "ci_application_settings", force: :cascade do |t| @@ -196,44 +160,44 @@ ActiveRecord::Schema.define(version: 20161109150329) do end create_table "ci_builds", force: :cascade do |t| - t.integer "project_id", limit: 4 - t.string "status", limit: 255 + t.integer "project_id" + t.string "status" t.datetime "finished_at" - t.text "trace", limit: 65535 + t.text "trace" t.datetime "created_at" t.datetime "updated_at" t.datetime "started_at" - t.integer "runner_id", limit: 4 - t.float "coverage", limit: 24 - t.integer "commit_id", limit: 4 - t.text "commands", limit: 65535 - t.integer "job_id", limit: 4 - t.string "name", limit: 255 + t.integer "runner_id" + t.float "coverage" + t.integer "commit_id" + t.text "commands" + t.integer "job_id" + t.string "name" t.boolean "deploy", default: false - t.text "options", limit: 65535 + t.text "options" t.boolean "allow_failure", default: false, null: false - t.string "stage", limit: 255 - t.integer "trigger_request_id", limit: 4 - t.integer "stage_idx", limit: 4 + t.string "stage" + t.integer "trigger_request_id" + t.integer "stage_idx" t.boolean "tag" - t.string "ref", limit: 255 - t.integer "user_id", limit: 4 - t.string "type", limit: 255 - t.string "target_url", limit: 255 - t.string "description", limit: 255 - t.text "artifacts_file", limit: 65535 - t.integer "gl_project_id", limit: 4 - t.text "artifacts_metadata", limit: 65535 - t.integer "erased_by_id", limit: 4 + t.string "ref" + t.integer "user_id" + t.string "type" + t.string "target_url" + t.string "description" + t.text "artifacts_file" + t.integer "gl_project_id" + t.text "artifacts_metadata" + t.integer "erased_by_id" t.datetime "erased_at" t.datetime "artifacts_expire_at" - t.string "environment", limit: 255 + t.string "environment" t.integer "artifacts_size", limit: 8 - t.string "when", limit: 255 - t.text "yaml_variables", limit: 65535 + t.string "when" + t.text "yaml_variables" t.datetime "queued_at" - t.string "token", limit: 255 - t.integer "lock_version", limit: 4 + t.string "token" + t.integer "lock_version" end add_index "ci_builds", ["commit_id", "stage_idx", "created_at"], name: "index_ci_builds_on_commit_id_and_stage_idx_and_created_at", using: :btree @@ -248,23 +212,23 @@ ActiveRecord::Schema.define(version: 20161109150329) do add_index "ci_builds", ["token"], name: "index_ci_builds_on_token", unique: true, using: :btree create_table "ci_commits", force: :cascade do |t| - t.integer "project_id", limit: 4 - t.string "ref", limit: 255 - t.string "sha", limit: 255 - t.string "before_sha", limit: 255 - t.text "push_data", limit: 65535 + t.integer "project_id" + t.string "ref" + t.string "sha" + t.string "before_sha" + t.text "push_data" t.datetime "created_at" t.datetime "updated_at" t.boolean "tag", default: false - t.text "yaml_errors", limit: 65535 + t.text "yaml_errors" t.datetime "committed_at" - t.integer "gl_project_id", limit: 4 - t.string "status", limit: 255 + t.integer "gl_project_id" + t.string "status" t.datetime "started_at" t.datetime "finished_at" - t.integer "duration", limit: 4 - t.integer "user_id", limit: 4 - t.integer "lock_version", limit: 4 + t.integer "duration" + t.integer "user_id" + t.integer "lock_version" end add_index "ci_commits", ["gl_project_id", "sha"], name: "index_ci_commits_on_gl_project_id_and_sha", using: :btree @@ -274,75 +238,75 @@ ActiveRecord::Schema.define(version: 20161109150329) do add_index "ci_commits", ["user_id"], name: "index_ci_commits_on_user_id", using: :btree create_table "ci_events", force: :cascade do |t| - t.integer "project_id", limit: 4 - t.integer "user_id", limit: 4 - t.integer "is_admin", limit: 4 - t.text "description", limit: 65535 + t.integer "project_id" + t.integer "user_id" + t.integer "is_admin" + t.text "description" t.datetime "created_at" t.datetime "updated_at" end create_table "ci_jobs", force: :cascade do |t| - t.integer "project_id", limit: 4, null: false - t.text "commands", limit: 65535 + t.integer "project_id", null: false + t.text "commands" t.boolean "active", default: true, null: false t.datetime "created_at" t.datetime "updated_at" - t.string "name", limit: 255 + t.string "name" t.boolean "build_branches", default: true, null: false t.boolean "build_tags", default: false, null: false - t.string "job_type", limit: 255, default: "parallel" - t.string "refs", limit: 255 + t.string "job_type", default: "parallel" + t.string "refs" t.datetime "deleted_at" end create_table "ci_projects", force: :cascade do |t| - t.string "name", limit: 255 - t.integer "timeout", limit: 4, default: 3600, null: false + t.string "name" + t.integer "timeout", default: 3600, null: false t.datetime "created_at" t.datetime "updated_at" - t.string "token", limit: 255 - t.string "default_ref", limit: 255 - t.string "path", limit: 255 + t.string "token" + t.string "default_ref" + t.string "path" t.boolean "always_build", default: false, null: false - t.integer "polling_interval", limit: 4 + t.integer "polling_interval" t.boolean "public", default: false, null: false - t.string "ssh_url_to_repo", limit: 255 - t.integer "gitlab_id", limit: 4 + t.string "ssh_url_to_repo" + t.integer "gitlab_id" t.boolean "allow_git_fetch", default: true, null: false - t.string "email_recipients", limit: 255, default: "", null: false + t.string "email_recipients", default: "", null: false t.boolean "email_add_pusher", default: true, null: false t.boolean "email_only_broken_builds", default: true, null: false - t.string "skip_refs", limit: 255 - t.string "coverage_regex", limit: 255 + t.string "skip_refs" + t.string "coverage_regex" t.boolean "shared_runners_enabled", default: false - t.text "generated_yaml_config", limit: 65535 + t.text "generated_yaml_config" end create_table "ci_runner_projects", force: :cascade do |t| - t.integer "runner_id", limit: 4, null: false - t.integer "project_id", limit: 4 + t.integer "runner_id", null: false + t.integer "project_id" t.datetime "created_at" t.datetime "updated_at" - t.integer "gl_project_id", limit: 4 + t.integer "gl_project_id" end add_index "ci_runner_projects", ["gl_project_id"], name: "index_ci_runner_projects_on_gl_project_id", using: :btree add_index "ci_runner_projects", ["runner_id"], name: "index_ci_runner_projects_on_runner_id", using: :btree create_table "ci_runners", force: :cascade do |t| - t.string "token", limit: 255 + t.string "token" t.datetime "created_at" t.datetime "updated_at" - t.string "description", limit: 255 + t.string "description" t.datetime "contacted_at" t.boolean "active", default: true, null: false t.boolean "is_shared", default: false - t.string "name", limit: 255 - t.string "version", limit: 255 - t.string "revision", limit: 255 - t.string "platform", limit: 255 - t.string "architecture", limit: 255 + t.string "name" + t.string "version" + t.string "revision" + t.string "platform" + t.string "architecture" t.boolean "run_untagged", default: true, null: false t.boolean "locked", default: false, null: false end @@ -351,18 +315,18 @@ ActiveRecord::Schema.define(version: 20161109150329) do add_index "ci_runners", ["token"], name: "index_ci_runners_on_token", using: :btree create_table "ci_sessions", force: :cascade do |t| - t.string "session_id", limit: 255, null: false - t.text "data", limit: 65535 + t.string "session_id", null: false + t.text "data" t.datetime "created_at" t.datetime "updated_at" end create_table "ci_taggings", force: :cascade do |t| - t.integer "tag_id", limit: 4 - t.integer "taggable_id", limit: 4 - t.string "taggable_type", limit: 255 - t.integer "tagger_id", limit: 4 - t.string "tagger_type", limit: 255 + t.integer "tag_id" + t.integer "taggable_id" + t.string "taggable_type" + t.integer "tagger_id" + t.string "tagger_type" t.string "context", limit: 128 t.datetime "created_at" end @@ -370,44 +334,44 @@ ActiveRecord::Schema.define(version: 20161109150329) do add_index "ci_taggings", ["taggable_id", "taggable_type", "context"], name: "index_ci_taggings_on_taggable_id_and_taggable_type_and_context", using: :btree create_table "ci_tags", force: :cascade do |t| - t.string "name", limit: 255 - t.integer "taggings_count", limit: 4, default: 0 + t.string "name" + t.integer "taggings_count", default: 0 end create_table "ci_trigger_requests", force: :cascade do |t| - t.integer "trigger_id", limit: 4, null: false - t.text "variables", limit: 65535 + t.integer "trigger_id", null: false + t.text "variables" t.datetime "created_at" t.datetime "updated_at" - t.integer "commit_id", limit: 4 + t.integer "commit_id" end create_table "ci_triggers", force: :cascade do |t| - t.string "token", limit: 255 - t.integer "project_id", limit: 4 + t.string "token" + t.integer "project_id" t.datetime "deleted_at" t.datetime "created_at" t.datetime "updated_at" - t.integer "gl_project_id", limit: 4 + t.integer "gl_project_id" end add_index "ci_triggers", ["gl_project_id"], name: "index_ci_triggers_on_gl_project_id", using: :btree create_table "ci_variables", force: :cascade do |t| - t.integer "project_id", limit: 4 - t.string "key", limit: 255 - t.text "value", limit: 65535 - t.text "encrypted_value", limit: 65535 - t.string "encrypted_value_salt", limit: 255 - t.string "encrypted_value_iv", limit: 255 - t.integer "gl_project_id", limit: 4 + t.integer "project_id" + t.string "key" + t.text "value" + t.text "encrypted_value" + t.string "encrypted_value_salt" + t.string "encrypted_value_iv" + t.integer "gl_project_id" end add_index "ci_variables", ["gl_project_id"], name: "index_ci_variables_on_gl_project_id", using: :btree create_table "deploy_keys_projects", force: :cascade do |t| - t.integer "deploy_key_id", limit: 4, null: false - t.integer "project_id", limit: 4, null: false + t.integer "deploy_key_id", null: false + t.integer "project_id", null: false t.datetime "created_at" t.datetime "updated_at" end @@ -415,18 +379,18 @@ ActiveRecord::Schema.define(version: 20161109150329) do add_index "deploy_keys_projects", ["project_id"], name: "index_deploy_keys_projects_on_project_id", using: :btree create_table "deployments", force: :cascade do |t| - t.integer "iid", limit: 4, null: false - t.integer "project_id", limit: 4, null: false - t.integer "environment_id", limit: 4, null: false - t.string "ref", limit: 255, null: false + t.integer "iid", null: false + t.integer "project_id", null: false + t.integer "environment_id", null: false + t.string "ref", null: false t.boolean "tag", null: false - t.string "sha", limit: 255, null: false - t.integer "user_id", limit: 4 - t.integer "deployable_id", limit: 4 - t.string "deployable_type", limit: 255 + t.string "sha", null: false + t.integer "user_id" + t.integer "deployable_id" + t.string "deployable_type" t.datetime "created_at" t.datetime "updated_at" - t.string "on_stop", limit: 255 + t.string "on_stop" end add_index "deployments", ["project_id", "environment_id", "iid"], name: "index_deployments_on_project_id_and_environment_id_and_iid", using: :btree @@ -435,8 +399,8 @@ ActiveRecord::Schema.define(version: 20161109150329) do add_index "deployments", ["project_id"], name: "index_deployments_on_project_id", using: :btree create_table "emails", force: :cascade do |t| - t.integer "user_id", limit: 4, null: false - t.string "email", limit: 255, null: false + t.integer "user_id", null: false + t.string "email", null: false t.datetime "created_at" t.datetime "updated_at" end @@ -445,27 +409,27 @@ ActiveRecord::Schema.define(version: 20161109150329) do add_index "emails", ["user_id"], name: "index_emails_on_user_id", using: :btree create_table "environments", force: :cascade do |t| - t.integer "project_id", limit: 4 - t.string "name", limit: 255, null: false + t.integer "project_id" + t.string "name", null: false t.datetime "created_at" t.datetime "updated_at" - t.string "external_url", limit: 255 - t.string "environment_type", limit: 255 - t.string "state", limit: 255, default: "available", null: false + t.string "external_url" + t.string "environment_type" + t.string "state", default: "available", null: false end add_index "environments", ["project_id", "name"], name: "index_environments_on_project_id_and_name", using: :btree create_table "events", force: :cascade do |t| - t.string "target_type", limit: 255 - t.integer "target_id", limit: 4 - t.string "title", limit: 255 - t.text "data", limit: 4294967295 - t.integer "project_id", limit: 4 + t.string "target_type" + t.integer "target_id" + t.string "title" + t.text "data" + t.integer "project_id" t.datetime "created_at" t.datetime "updated_at" - t.integer "action", limit: 4 - t.integer "author_id", limit: 4 + t.integer "action" + t.integer "author_id" end add_index "events", ["action"], name: "index_events_on_action", using: :btree @@ -476,59 +440,26 @@ ActiveRecord::Schema.define(version: 20161109150329) do add_index "events", ["target_type"], name: "index_events_on_target_type", using: :btree create_table "forked_project_links", force: :cascade do |t| - t.integer "forked_to_project_id", limit: 4, null: false - t.integer "forked_from_project_id", limit: 4, null: false + t.integer "forked_to_project_id", null: false + t.integer "forked_from_project_id", null: false t.datetime "created_at" t.datetime "updated_at" end add_index "forked_project_links", ["forked_to_project_id"], name: "index_forked_project_links_on_forked_to_project_id", unique: true, using: :btree - create_table "geo_nodes", force: :cascade do |t| - t.string "schema", limit: 255 - t.string "host", limit: 255 - t.integer "port", limit: 4 - t.string "relative_url_root", limit: 255 - t.boolean "primary" - t.integer "geo_node_key_id", limit: 4 - t.integer "oauth_application_id", limit: 4 - t.integer "system_hook_id", limit: 4 - end - - add_index "geo_nodes", ["host"], name: "index_geo_nodes_on_host", using: :btree - add_index "geo_nodes", ["primary"], name: "index_geo_nodes_on_primary", using: :btree - - create_table "historical_data", force: :cascade do |t| - t.date "date", null: false - t.integer "active_user_count", limit: 4 - t.datetime "created_at" - t.datetime "updated_at" - end - create_table "identities", force: :cascade do |t| - t.string "extern_uid", limit: 255 - t.string "provider", limit: 255 - t.integer "user_id", limit: 4 + t.string "extern_uid" + t.string "provider" + t.integer "user_id" t.datetime "created_at" t.datetime "updated_at" - t.string "secondary_extern_uid", limit: 255 end add_index "identities", ["user_id"], name: "index_identities_on_user_id", using: :btree - create_table "index_statuses", force: :cascade do |t| - t.integer "project_id", limit: 4, null: false - t.datetime "indexed_at" - t.text "note", limit: 65535 - t.string "last_commit", limit: 255 - t.datetime "created_at", null: false - t.datetime "updated_at", null: false - end - - add_index "index_statuses", ["project_id"], name: "index_index_statuses_on_project_id", unique: true, using: :btree - create_table "issue_metrics", force: :cascade do |t| - t.integer "issue_id", limit: 4, null: false + t.integer "issue_id", null: false t.datetime "first_mentioned_in_commit_at" t.datetime "first_associated_with_milestone_at" t.datetime "first_added_to_board_at" @@ -539,27 +470,26 @@ ActiveRecord::Schema.define(version: 20161109150329) do add_index "issue_metrics", ["issue_id"], name: "index_issue_metrics", using: :btree create_table "issues", force: :cascade do |t| - t.string "title", limit: 255 - t.integer "assignee_id", limit: 4 - t.integer "author_id", limit: 4 - t.integer "project_id", limit: 4 + t.string "title" + t.integer "assignee_id" + t.integer "author_id" + t.integer "project_id" t.datetime "created_at" t.datetime "updated_at" - t.integer "position", limit: 4, default: 0 - t.string "branch_name", limit: 255 - t.text "description", limit: 65535 - t.integer "milestone_id", limit: 4 - t.string "state", limit: 255 - t.integer "iid", limit: 4 - t.integer "updated_by_id", limit: 4 - t.integer "weight", limit: 4 + t.integer "position", default: 0 + t.string "branch_name" + t.text "description" + t.integer "milestone_id" + t.string "state" + t.integer "iid" + t.integer "updated_by_id" t.boolean "confidential", default: false t.datetime "deleted_at" t.date "due_date" - t.integer "moved_to_id", limit: 4 - t.integer "lock_version", limit: 4 - t.text "title_html", limit: 65535 - t.text "description_html", limit: 65535 + t.integer "moved_to_id" + t.integer "lock_version" + t.text "title_html" + t.text "description_html" end add_index "issues", ["assignee_id"], name: "index_issues_on_assignee_id", using: :btree @@ -567,19 +497,21 @@ ActiveRecord::Schema.define(version: 20161109150329) do add_index "issues", ["confidential"], name: "index_issues_on_confidential", using: :btree add_index "issues", ["created_at"], name: "index_issues_on_created_at", using: :btree add_index "issues", ["deleted_at"], name: "index_issues_on_deleted_at", using: :btree + add_index "issues", ["description"], name: "index_issues_on_description_trigram", using: :gin, opclasses: {"description"=>"gin_trgm_ops"} add_index "issues", ["due_date"], name: "index_issues_on_due_date", using: :btree add_index "issues", ["milestone_id"], name: "index_issues_on_milestone_id", using: :btree add_index "issues", ["project_id", "iid"], name: "index_issues_on_project_id_and_iid", unique: true, using: :btree add_index "issues", ["state"], name: "index_issues_on_state", using: :btree + add_index "issues", ["title"], name: "index_issues_on_title_trigram", using: :gin, opclasses: {"title"=>"gin_trgm_ops"} create_table "keys", force: :cascade do |t| - t.integer "user_id", limit: 4 + t.integer "user_id" t.datetime "created_at" t.datetime "updated_at" - t.text "key", limit: 65535 - t.string "title", limit: 255 - t.string "type", limit: 255 - t.string "fingerprint", limit: 255 + t.text "key" + t.string "title" + t.string "type" + t.string "fingerprint" t.boolean "public", default: false, null: false end @@ -587,9 +519,9 @@ ActiveRecord::Schema.define(version: 20161109150329) do add_index "keys", ["user_id"], name: "index_keys_on_user_id", using: :btree create_table "label_links", force: :cascade do |t| - t.integer "label_id", limit: 4 - t.integer "target_id", limit: 4 - t.string "target_type", limit: 255 + t.integer "label_id" + t.integer "target_id" + t.string "target_type" t.datetime "created_at" t.datetime "updated_at" end @@ -598,72 +530,56 @@ ActiveRecord::Schema.define(version: 20161109150329) do add_index "label_links", ["target_id", "target_type"], name: "index_label_links_on_target_id_and_target_type", using: :btree create_table "label_priorities", force: :cascade do |t| - t.integer "project_id", limit: 4, null: false - t.integer "label_id", limit: 4, null: false - t.integer "priority", limit: 4, null: false + t.integer "project_id", null: false + t.integer "label_id", null: false + t.integer "priority", null: false t.datetime "created_at", null: false t.datetime "updated_at", null: false end - add_index "label_priorities", ["label_id"], name: "fk_rails_e161058b0f", using: :btree add_index "label_priorities", ["priority"], name: "index_label_priorities_on_priority", using: :btree add_index "label_priorities", ["project_id", "label_id"], name: "index_label_priorities_on_project_id_and_label_id", unique: true, using: :btree create_table "labels", force: :cascade do |t| - t.string "title", limit: 255 - t.string "color", limit: 255 - t.integer "project_id", limit: 4 + t.string "title" + t.string "color" + t.integer "project_id" t.datetime "created_at" t.datetime "updated_at" t.boolean "template", default: false - t.string "description", limit: 255 - t.text "description_html", limit: 65535 - t.string "type", limit: 255 - t.integer "group_id", limit: 4 + t.string "description" + t.text "description_html" + t.string "type" + t.integer "group_id" end add_index "labels", ["group_id", "project_id", "title"], name: "index_labels_on_group_id_and_project_id_and_title", unique: true, using: :btree add_index "labels", ["group_id"], name: "index_labels_on_group_id", using: :btree - create_table "ldap_group_links", force: :cascade do |t| - t.string "cn", limit: 255, null: false - t.integer "group_access", limit: 4, null: false - t.integer "group_id", limit: 4, null: false - t.datetime "created_at" - t.datetime "updated_at" - t.string "provider", limit: 255 - end - create_table "lfs_objects", force: :cascade do |t| - t.string "oid", limit: 255, null: false + t.string "oid", null: false t.integer "size", limit: 8, null: false t.datetime "created_at" t.datetime "updated_at" - t.string "file", limit: 255 + t.string "file" end add_index "lfs_objects", ["oid"], name: "index_lfs_objects_on_oid", unique: true, using: :btree create_table "lfs_objects_projects", force: :cascade do |t| - t.integer "lfs_object_id", limit: 4, null: false - t.integer "project_id", limit: 4, null: false + t.integer "lfs_object_id", null: false + t.integer "project_id", null: false t.datetime "created_at" t.datetime "updated_at" end add_index "lfs_objects_projects", ["project_id"], name: "index_lfs_objects_projects_on_project_id", using: :btree - create_table "licenses", force: :cascade do |t| - t.text "data", limit: 65535, null: false - t.datetime "created_at" - t.datetime "updated_at" - end - create_table "lists", force: :cascade do |t| - t.integer "board_id", limit: 4, null: false - t.integer "label_id", limit: 4 - t.integer "list_type", limit: 4, default: 1, null: false - t.integer "position", limit: 4 + t.integer "board_id", null: false + t.integer "label_id" + t.integer "list_type", default: 1, null: false + t.integer "position" t.datetime "created_at", null: false t.datetime "updated_at", null: false end @@ -673,22 +589,20 @@ ActiveRecord::Schema.define(version: 20161109150329) do add_index "lists", ["label_id"], name: "index_lists_on_label_id", using: :btree create_table "members", force: :cascade do |t| - t.integer "access_level", limit: 4, null: false - t.integer "source_id", limit: 4, null: false - t.string "source_type", limit: 255, null: false - t.integer "user_id", limit: 4 - t.integer "notification_level", limit: 4, null: false - t.string "type", limit: 255 + t.integer "access_level", null: false + t.integer "source_id", null: false + t.string "source_type", null: false + t.integer "user_id" + t.integer "notification_level", null: false + t.string "type" t.datetime "created_at" t.datetime "updated_at" - t.integer "created_by_id", limit: 4 - t.string "invite_email", limit: 255 - t.string "invite_token", limit: 255 + t.integer "created_by_id" + t.string "invite_email" + t.string "invite_token" t.datetime "invite_accepted_at" t.datetime "requested_at" t.date "expires_at" - t.boolean "ldap", default: false, null: false - t.boolean "override", default: false, null: false end add_index "members", ["access_level"], name: "index_members_on_access_level", using: :btree @@ -698,29 +612,29 @@ ActiveRecord::Schema.define(version: 20161109150329) do add_index "members", ["user_id"], name: "index_members_on_user_id", using: :btree create_table "merge_request_diffs", force: :cascade do |t| - t.string "state", limit: 255 - t.text "st_commits", limit: 4294967295 - t.text "st_diffs", limit: 4294967295 - t.integer "merge_request_id", limit: 4, null: false + t.string "state" + t.text "st_commits" + t.text "st_diffs" + t.integer "merge_request_id", null: false t.datetime "created_at" t.datetime "updated_at" - t.string "base_commit_sha", limit: 255 - t.string "real_size", limit: 255 - t.string "head_commit_sha", limit: 255 - t.string "start_commit_sha", limit: 255 + t.string "base_commit_sha" + t.string "real_size" + t.string "head_commit_sha" + t.string "start_commit_sha" end add_index "merge_request_diffs", ["merge_request_id"], name: "index_merge_request_diffs_on_merge_request_id", using: :btree create_table "merge_request_metrics", force: :cascade do |t| - t.integer "merge_request_id", limit: 4, null: false + t.integer "merge_request_id", null: false t.datetime "latest_build_started_at" t.datetime "latest_build_finished_at" t.datetime "first_deployed_to_production_at" t.datetime "merged_at" t.datetime "created_at", null: false t.datetime "updated_at", null: false - t.integer "pipeline_id", limit: 4 + t.integer "pipeline_id" end add_index "merge_request_metrics", ["first_deployed_to_production_at"], name: "index_merge_request_metrics_on_first_deployed_to_production_at", using: :btree @@ -728,51 +642,51 @@ ActiveRecord::Schema.define(version: 20161109150329) do add_index "merge_request_metrics", ["pipeline_id"], name: "index_merge_request_metrics_on_pipeline_id", using: :btree create_table "merge_requests", force: :cascade do |t| - t.string "target_branch", limit: 255, null: false - t.string "source_branch", limit: 255, null: false - t.integer "source_project_id", limit: 4, null: false - t.integer "author_id", limit: 4 - t.integer "assignee_id", limit: 4 - t.string "title", limit: 255 + t.string "target_branch", null: false + t.string "source_branch", null: false + t.integer "source_project_id", null: false + t.integer "author_id" + t.integer "assignee_id" + t.string "title" t.datetime "created_at" t.datetime "updated_at" - t.integer "milestone_id", limit: 4 - t.string "state", limit: 255 - t.string "merge_status", limit: 255 - t.integer "target_project_id", limit: 4, null: false - t.integer "iid", limit: 4 - t.text "description", limit: 65535 - t.integer "position", limit: 4, default: 0 + t.integer "milestone_id" + t.string "state" + t.string "merge_status" + t.integer "target_project_id", null: false + t.integer "iid" + t.text "description" + t.integer "position", default: 0 t.datetime "locked_at" - t.integer "updated_by_id", limit: 4 - t.text "merge_error", limit: 65535 - t.text "merge_params", limit: 65535 + t.integer "updated_by_id" + t.text "merge_error" + t.text "merge_params" t.boolean "merge_when_build_succeeds", default: false, null: false - t.integer "merge_user_id", limit: 4 - t.string "merge_commit_sha", limit: 255 + t.integer "merge_user_id" + t.string "merge_commit_sha" t.datetime "deleted_at" - t.integer "approvals_before_merge", limit: 4 - t.string "rebase_commit_sha", limit: 255 - t.string "in_progress_merge_commit_sha", limit: 255 - t.integer "lock_version", limit: 4 - t.text "title_html", limit: 65535 - t.text "description_html", limit: 65535 + t.string "in_progress_merge_commit_sha" + t.integer "lock_version" + t.text "title_html" + t.text "description_html" end add_index "merge_requests", ["assignee_id"], name: "index_merge_requests_on_assignee_id", using: :btree add_index "merge_requests", ["author_id"], name: "index_merge_requests_on_author_id", using: :btree add_index "merge_requests", ["created_at"], name: "index_merge_requests_on_created_at", using: :btree add_index "merge_requests", ["deleted_at"], name: "index_merge_requests_on_deleted_at", using: :btree + add_index "merge_requests", ["description"], name: "index_merge_requests_on_description_trigram", using: :gin, opclasses: {"description"=>"gin_trgm_ops"} add_index "merge_requests", ["milestone_id"], name: "index_merge_requests_on_milestone_id", using: :btree add_index "merge_requests", ["source_branch"], name: "index_merge_requests_on_source_branch", using: :btree add_index "merge_requests", ["source_project_id"], name: "index_merge_requests_on_source_project_id", using: :btree add_index "merge_requests", ["target_branch"], name: "index_merge_requests_on_target_branch", using: :btree add_index "merge_requests", ["target_project_id", "iid"], name: "index_merge_requests_on_target_project_id_and_iid", unique: true, using: :btree add_index "merge_requests", ["title"], name: "index_merge_requests_on_title", using: :btree + add_index "merge_requests", ["title"], name: "index_merge_requests_on_title_trigram", using: :gin, opclasses: {"title"=>"gin_trgm_ops"} create_table "merge_requests_closing_issues", force: :cascade do |t| - t.integer "merge_request_id", limit: 4, null: false - t.integer "issue_id", limit: 4, null: false + t.integer "merge_request_id", null: false + t.integer "issue_id", null: false t.datetime "created_at", null: false t.datetime "updated_at", null: false end @@ -781,78 +695,73 @@ ActiveRecord::Schema.define(version: 20161109150329) do add_index "merge_requests_closing_issues", ["merge_request_id"], name: "index_merge_requests_closing_issues_on_merge_request_id", using: :btree create_table "milestones", force: :cascade do |t| - t.string "title", limit: 255, null: false - t.integer "project_id", limit: 4, null: false - t.text "description", limit: 65535 + t.string "title", null: false + t.integer "project_id", null: false + t.text "description" t.date "due_date" t.datetime "created_at" t.datetime "updated_at" - t.string "state", limit: 255 - t.integer "iid", limit: 4 - t.text "title_html", limit: 65535 - t.text "description_html", limit: 65535 + t.string "state" + t.integer "iid" + t.text "title_html" + t.text "description_html" end + add_index "milestones", ["description"], name: "index_milestones_on_description_trigram", using: :gin, opclasses: {"description"=>"gin_trgm_ops"} add_index "milestones", ["due_date"], name: "index_milestones_on_due_date", using: :btree add_index "milestones", ["project_id", "iid"], name: "index_milestones_on_project_id_and_iid", unique: true, using: :btree add_index "milestones", ["project_id"], name: "index_milestones_on_project_id", using: :btree add_index "milestones", ["title"], name: "index_milestones_on_title", using: :btree + add_index "milestones", ["title"], name: "index_milestones_on_title_trigram", using: :gin, opclasses: {"title"=>"gin_trgm_ops"} create_table "namespaces", force: :cascade do |t| - t.string "name", limit: 255, null: false - t.string "path", limit: 255, null: false - t.integer "owner_id", limit: 4 + t.string "name", null: false + t.string "path", null: false + t.integer "owner_id" t.datetime "created_at" t.datetime "updated_at" - t.string "type", limit: 255 - t.string "description", limit: 255, default: "", null: false - t.string "avatar", limit: 255 - t.boolean "membership_lock", default: false + t.string "type" + t.string "description", default: "", null: false + t.string "avatar" t.boolean "share_with_group_lock", default: false - t.integer "visibility_level", limit: 4, default: 20, null: false + t.integer "visibility_level", default: 20, null: false t.boolean "request_access_enabled", default: false, null: false t.datetime "deleted_at" - t.string "ldap_sync_status", limit: 255, default: "ready", null: false - t.string "ldap_sync_error", limit: 255 - t.datetime "ldap_sync_last_update_at" - t.datetime "ldap_sync_last_successful_update_at" - t.datetime "ldap_sync_last_sync_at" t.boolean "lfs_enabled" - t.integer "repository_size_limit", limit: 4 - t.text "description_html", limit: 65535 + t.text "description_html" end add_index "namespaces", ["created_at"], name: "index_namespaces_on_created_at", using: :btree add_index "namespaces", ["deleted_at"], name: "index_namespaces_on_deleted_at", using: :btree - add_index "namespaces", ["ldap_sync_last_successful_update_at"], name: "index_namespaces_on_ldap_sync_last_successful_update_at", using: :btree - add_index "namespaces", ["ldap_sync_last_update_at"], name: "index_namespaces_on_ldap_sync_last_update_at", using: :btree add_index "namespaces", ["name"], name: "index_namespaces_on_name", unique: true, using: :btree + add_index "namespaces", ["name"], name: "index_namespaces_on_name_trigram", using: :gin, opclasses: {"name"=>"gin_trgm_ops"} add_index "namespaces", ["owner_id"], name: "index_namespaces_on_owner_id", using: :btree add_index "namespaces", ["path"], name: "index_namespaces_on_path", unique: true, using: :btree + add_index "namespaces", ["path"], name: "index_namespaces_on_path_trigram", using: :gin, opclasses: {"path"=>"gin_trgm_ops"} add_index "namespaces", ["type"], name: "index_namespaces_on_type", using: :btree create_table "notes", force: :cascade do |t| - t.text "note", limit: 65535 - t.string "noteable_type", limit: 255 - t.integer "author_id", limit: 4 + t.text "note" + t.string "noteable_type" + t.integer "author_id" t.datetime "created_at" t.datetime "updated_at" - t.integer "project_id", limit: 4 - t.string "attachment", limit: 255 - t.string "line_code", limit: 255 - t.string "commit_id", limit: 255 - t.integer "noteable_id", limit: 4 + t.integer "project_id" + t.string "attachment" + t.string "line_code" + t.string "commit_id" + t.integer "noteable_id" t.boolean "system", default: false, null: false - t.text "st_diff", limit: 4294967295 - t.integer "updated_by_id", limit: 4 - t.string "type", limit: 255 - t.text "position", limit: 65535 - t.text "original_position", limit: 65535 + t.text "st_diff" + t.integer "updated_by_id" + t.string "type" + t.text "position" + t.text "original_position" t.datetime "resolved_at" - t.integer "resolved_by_id", limit: 4 - t.string "discussion_id", limit: 255 - t.string "original_discussion_id", limit: 255 - t.text "note_html", limit: 65535 + t.integer "resolved_by_id" + t.string "discussion_id" + t.string "original_discussion_id" + t.text "note_html" end add_index "notes", ["author_id"], name: "index_notes_on_author_id", using: :btree @@ -860,6 +769,7 @@ ActiveRecord::Schema.define(version: 20161109150329) do add_index "notes", ["created_at"], name: "index_notes_on_created_at", using: :btree add_index "notes", ["discussion_id"], name: "index_notes_on_discussion_id", using: :btree add_index "notes", ["line_code"], name: "index_notes_on_line_code", using: :btree + add_index "notes", ["note"], name: "index_notes_on_note_trigram", using: :gin, opclasses: {"note"=>"gin_trgm_ops"} add_index "notes", ["noteable_id", "noteable_type"], name: "index_notes_on_noteable_id_and_noteable_type", using: :btree add_index "notes", ["noteable_type"], name: "index_notes_on_noteable_type", using: :btree add_index "notes", ["project_id", "noteable_type"], name: "index_notes_on_project_id_and_noteable_type", using: :btree @@ -867,13 +777,13 @@ ActiveRecord::Schema.define(version: 20161109150329) do add_index "notes", ["updated_at"], name: "index_notes_on_updated_at", using: :btree create_table "notification_settings", force: :cascade do |t| - t.integer "user_id", limit: 4, null: false - t.integer "source_id", limit: 4 - t.string "source_type", limit: 255 - t.integer "level", limit: 4, default: 0, null: false + t.integer "user_id", null: false + t.integer "source_id" + t.string "source_type" + t.integer "level", default: 0, null: false t.datetime "created_at", null: false t.datetime "updated_at", null: false - t.text "events", limit: 65535 + t.text "events" end add_index "notification_settings", ["source_id", "source_type"], name: "index_notification_settings_on_source_id_and_source_type", using: :btree @@ -881,27 +791,27 @@ ActiveRecord::Schema.define(version: 20161109150329) do add_index "notification_settings", ["user_id"], name: "index_notification_settings_on_user_id", using: :btree create_table "oauth_access_grants", force: :cascade do |t| - t.integer "resource_owner_id", limit: 4, null: false - t.integer "application_id", limit: 4, null: false - t.string "token", limit: 255, null: false - t.integer "expires_in", limit: 4, null: false - t.text "redirect_uri", limit: 65535, null: false + t.integer "resource_owner_id", null: false + t.integer "application_id", null: false + t.string "token", null: false + t.integer "expires_in", null: false + t.text "redirect_uri", null: false t.datetime "created_at", null: false t.datetime "revoked_at" - t.string "scopes", limit: 255 + t.string "scopes" end add_index "oauth_access_grants", ["token"], name: "index_oauth_access_grants_on_token", unique: true, using: :btree create_table "oauth_access_tokens", force: :cascade do |t| - t.integer "resource_owner_id", limit: 4 - t.integer "application_id", limit: 4 - t.string "token", limit: 255, null: false - t.string "refresh_token", limit: 255 - t.integer "expires_in", limit: 4 + t.integer "resource_owner_id" + t.integer "application_id" + t.string "token", null: false + t.string "refresh_token" + t.integer "expires_in" t.datetime "revoked_at" t.datetime "created_at", null: false - t.string "scopes", limit: 255 + t.string "scopes" end add_index "oauth_access_tokens", ["refresh_token"], name: "index_oauth_access_tokens_on_refresh_token", unique: true, using: :btree @@ -909,47 +819,24 @@ ActiveRecord::Schema.define(version: 20161109150329) do add_index "oauth_access_tokens", ["token"], name: "index_oauth_access_tokens_on_token", unique: true, using: :btree create_table "oauth_applications", force: :cascade do |t| - t.string "name", limit: 255, null: false - t.string "uid", limit: 255, null: false - t.string "secret", limit: 255, null: false - t.text "redirect_uri", limit: 65535, null: false - t.string "scopes", limit: 255, default: "", null: false + t.string "name", null: false + t.string "uid", null: false + t.string "secret", null: false + t.text "redirect_uri", null: false + t.string "scopes", default: "", null: false t.datetime "created_at" t.datetime "updated_at" - t.integer "owner_id", limit: 4 - t.string "owner_type", limit: 255 + t.integer "owner_id" + t.string "owner_type" end add_index "oauth_applications", ["owner_id", "owner_type"], name: "index_oauth_applications_on_owner_id_and_owner_type", using: :btree add_index "oauth_applications", ["uid"], name: "index_oauth_applications_on_uid", unique: true, using: :btree - create_table "pages_domains", force: :cascade do |t| - t.integer "project_id", limit: 4 - t.text "certificate", limit: 65535 - t.text "encrypted_key", limit: 65535 - t.string "encrypted_key_iv", limit: 255 - t.string "encrypted_key_salt", limit: 255 - t.string "domain", limit: 255 - end - - add_index "pages_domains", ["domain"], name: "index_pages_domains_on_domain", unique: true, using: :btree - - create_table "path_locks", force: :cascade do |t| - t.string "path", limit: 255, null: false - t.integer "project_id", limit: 4 - t.integer "user_id", limit: 4 - t.datetime "created_at", null: false - t.datetime "updated_at", null: false - end - - add_index "path_locks", ["path"], name: "index_path_locks_on_path", using: :btree - add_index "path_locks", ["project_id"], name: "index_path_locks_on_project_id", using: :btree - add_index "path_locks", ["user_id"], name: "index_path_locks_on_user_id", using: :btree - create_table "personal_access_tokens", force: :cascade do |t| - t.integer "user_id", limit: 4, null: false - t.string "token", limit: 255, null: false - t.string "name", limit: 255, null: false + t.integer "user_id", null: false + t.string "token", null: false + t.string "name", null: false t.boolean "revoked", default: false t.datetime "expires_at" t.datetime "created_at", null: false @@ -960,75 +847,64 @@ ActiveRecord::Schema.define(version: 20161109150329) do add_index "personal_access_tokens", ["user_id"], name: "index_personal_access_tokens_on_user_id", using: :btree create_table "project_features", force: :cascade do |t| - t.integer "project_id", limit: 4 - t.integer "merge_requests_access_level", limit: 4 - t.integer "issues_access_level", limit: 4 - t.integer "wiki_access_level", limit: 4 - t.integer "snippets_access_level", limit: 4 - t.integer "builds_access_level", limit: 4 + t.integer "project_id" + t.integer "merge_requests_access_level" + t.integer "issues_access_level" + t.integer "wiki_access_level" + t.integer "snippets_access_level" + t.integer "builds_access_level" t.datetime "created_at" t.datetime "updated_at" - t.integer "repository_access_level", limit: 4, default: 20, null: false + t.integer "repository_access_level", default: 20, null: false end add_index "project_features", ["project_id"], name: "index_project_features_on_project_id", using: :btree create_table "project_group_links", force: :cascade do |t| - t.integer "project_id", limit: 4, null: false - t.integer "group_id", limit: 4, null: false + t.integer "project_id", null: false + t.integer "group_id", null: false t.datetime "created_at" t.datetime "updated_at" - t.integer "group_access", limit: 4, default: 30, null: false + t.integer "group_access", default: 30, null: false t.date "expires_at" end create_table "project_import_data", force: :cascade do |t| - t.integer "project_id", limit: 4 - t.text "data", limit: 65535 - t.text "encrypted_credentials", limit: 65535 - t.string "encrypted_credentials_iv", limit: 255 - t.string "encrypted_credentials_salt", limit: 255 + t.integer "project_id" + t.text "data" + t.text "encrypted_credentials" + t.string "encrypted_credentials_iv" + t.string "encrypted_credentials_salt" end add_index "project_import_data", ["project_id"], name: "index_project_import_data_on_project_id", using: :btree create_table "projects", force: :cascade do |t| - t.string "name", limit: 255 - t.string "path", limit: 255 - t.text "description", limit: 65535 + t.string "name" + t.string "path" + t.text "description" t.datetime "created_at" t.datetime "updated_at" - t.integer "creator_id", limit: 4 - t.integer "namespace_id", limit: 4 + t.integer "creator_id" + t.integer "namespace_id" t.datetime "last_activity_at" - t.string "import_url", limit: 255 - t.integer "visibility_level", limit: 4, default: 0, null: false + t.string "import_url" + t.integer "visibility_level", default: 0, null: false t.boolean "archived", default: false, null: false - t.string "avatar", limit: 255 - t.string "import_status", limit: 255 - t.float "repository_size", limit: 24, default: 0.0 - t.text "merge_requests_template", limit: 65535 - t.integer "star_count", limit: 4, default: 0, null: false - t.boolean "merge_requests_rebase_enabled", default: false - t.string "import_type", limit: 255 - t.string "import_source", limit: 255 - t.integer "approvals_before_merge", limit: 4, default: 0, null: false - t.boolean "reset_approvals_on_push", default: true - t.integer "commit_count", limit: 4, default: 0 - t.boolean "merge_requests_ff_only_enabled", default: false - t.text "issues_template", limit: 65535 - t.boolean "mirror", default: false, null: false - t.datetime "mirror_last_update_at" - t.datetime "mirror_last_successful_update_at" - t.integer "mirror_user_id", limit: 4 - t.text "import_error", limit: 65535 - t.integer "ci_id", limit: 4 + t.string "avatar" + t.string "import_status" + t.float "repository_size", default: 0.0 + t.integer "star_count", default: 0, null: false + t.string "import_type" + t.string "import_source" + t.integer "commit_count", default: 0 + t.text "import_error" + t.integer "ci_id" t.boolean "shared_runners_enabled", default: true, null: false - t.string "runners_token", limit: 255 - t.string "build_coverage_regex", limit: 255 + t.string "runners_token" + t.string "build_coverage_regex" t.boolean "build_allow_git_fetch", default: true, null: false - t.integer "build_timeout", limit: 4, default: 3600, null: false - t.boolean "mirror_trigger_builds", default: false, null: false + t.integer "build_timeout", default: 3600, null: false t.boolean "pending_delete", default: false t.boolean "public_builds", default: true, null: false t.boolean "last_repository_check_failed" @@ -1036,132 +912,90 @@ ActiveRecord::Schema.define(version: 20161109150329) do t.boolean "container_registry_enabled" t.boolean "only_allow_merge_if_build_succeeds", default: false, null: false t.boolean "has_external_issue_tracker" - t.string "repository_storage", limit: 255, default: "default", null: false + t.string "repository_storage", default: "default", null: false t.boolean "request_access_enabled", default: false, null: false t.boolean "has_external_wiki" - t.boolean "repository_read_only" t.boolean "lfs_enabled" - t.integer "repository_size_limit", limit: 4 - t.text "description_html", limit: 65535 + t.text "description_html" t.boolean "only_allow_merge_if_all_discussions_are_resolved", default: false, null: false end add_index "projects", ["ci_id"], name: "index_projects_on_ci_id", using: :btree add_index "projects", ["created_at"], name: "index_projects_on_created_at", using: :btree add_index "projects", ["creator_id"], name: "index_projects_on_creator_id", using: :btree + add_index "projects", ["description"], name: "index_projects_on_description_trigram", using: :gin, opclasses: {"description"=>"gin_trgm_ops"} add_index "projects", ["last_activity_at"], name: "index_projects_on_last_activity_at", using: :btree add_index "projects", ["last_repository_check_failed"], name: "index_projects_on_last_repository_check_failed", using: :btree + add_index "projects", ["name"], name: "index_projects_on_name_trigram", using: :gin, opclasses: {"name"=>"gin_trgm_ops"} add_index "projects", ["namespace_id"], name: "index_projects_on_namespace_id", using: :btree add_index "projects", ["path"], name: "index_projects_on_path", using: :btree + add_index "projects", ["path"], name: "index_projects_on_path_trigram", using: :gin, opclasses: {"path"=>"gin_trgm_ops"} add_index "projects", ["pending_delete"], name: "index_projects_on_pending_delete", using: :btree add_index "projects", ["runners_token"], name: "index_projects_on_runners_token", using: :btree add_index "projects", ["star_count"], name: "index_projects_on_star_count", using: :btree add_index "projects", ["visibility_level"], name: "index_projects_on_visibility_level", using: :btree create_table "protected_branch_merge_access_levels", force: :cascade do |t| - t.integer "protected_branch_id", limit: 4, null: false - t.integer "access_level", limit: 4, default: 40 + t.integer "protected_branch_id", null: false + t.integer "access_level", default: 40, null: false t.datetime "created_at", null: false t.datetime "updated_at", null: false - t.integer "user_id", limit: 4 - t.integer "group_id", limit: 4 end - add_index "protected_branch_merge_access_levels", ["group_id"], name: "fk_rails_98f3d044fe", using: :btree add_index "protected_branch_merge_access_levels", ["protected_branch_id"], name: "index_protected_branch_merge_access", using: :btree - add_index "protected_branch_merge_access_levels", ["user_id"], name: "index_protected_branch_merge_access_levels_on_user_id", using: :btree create_table "protected_branch_push_access_levels", force: :cascade do |t| - t.integer "protected_branch_id", limit: 4, null: false - t.integer "access_level", limit: 4, default: 40 + t.integer "protected_branch_id", null: false + t.integer "access_level", default: 40, null: false t.datetime "created_at", null: false t.datetime "updated_at", null: false - t.integer "user_id", limit: 4 - t.integer "group_id", limit: 4 end - add_index "protected_branch_push_access_levels", ["group_id"], name: "fk_rails_7111b68cdb", using: :btree add_index "protected_branch_push_access_levels", ["protected_branch_id"], name: "index_protected_branch_push_access", using: :btree - add_index "protected_branch_push_access_levels", ["user_id"], name: "index_protected_branch_push_access_levels_on_user_id", using: :btree create_table "protected_branches", force: :cascade do |t| - t.integer "project_id", limit: 4, null: false - t.string "name", limit: 255, null: false + t.integer "project_id", null: false + t.string "name", null: false t.datetime "created_at" t.datetime "updated_at" end add_index "protected_branches", ["project_id"], name: "index_protected_branches_on_project_id", using: :btree - create_table "push_rules", force: :cascade do |t| - t.string "force_push_regex", limit: 255 - t.string "delete_branch_regex", limit: 255 - t.string "commit_message_regex", limit: 255 - t.boolean "deny_delete_tag" - t.integer "project_id", limit: 4 - t.datetime "created_at" - t.datetime "updated_at" - t.string "author_email_regex", limit: 255 - t.boolean "member_check", default: false, null: false - t.string "file_name_regex", limit: 255 - t.boolean "is_sample", default: false - t.integer "max_file_size", limit: 4, default: 0, null: false - t.boolean "prevent_secrets", default: false, null: false - end - - add_index "push_rules", ["project_id"], name: "index_push_rules_on_project_id", using: :btree - create_table "releases", force: :cascade do |t| - t.string "tag", limit: 255 - t.text "description", limit: 65535 - t.integer "project_id", limit: 4 + t.string "tag" + t.text "description" + t.integer "project_id" t.datetime "created_at" t.datetime "updated_at" - t.text "description_html", limit: 65535 + t.text "description_html" end add_index "releases", ["project_id", "tag"], name: "index_releases_on_project_id_and_tag", using: :btree add_index "releases", ["project_id"], name: "index_releases_on_project_id", using: :btree - create_table "remote_mirrors", force: :cascade do |t| - t.integer "project_id", limit: 4 - t.string "url", limit: 255 - t.boolean "enabled", default: false - t.string "update_status", limit: 255 - t.datetime "last_update_at" - t.datetime "last_successful_update_at" - t.string "last_error", limit: 255 - t.text "encrypted_credentials", limit: 65535 - t.string "encrypted_credentials_iv", limit: 255 - t.string "encrypted_credentials_salt", limit: 255 - t.datetime "created_at", null: false - t.datetime "updated_at", null: false - end - - add_index "remote_mirrors", ["project_id"], name: "index_remote_mirrors_on_project_id", using: :btree - create_table "sent_notifications", force: :cascade do |t| - t.integer "project_id", limit: 4 - t.integer "noteable_id", limit: 4 - t.string "noteable_type", limit: 255 - t.integer "recipient_id", limit: 4 - t.string "commit_id", limit: 255 - t.string "reply_key", limit: 255, null: false - t.string "line_code", limit: 255 - t.string "note_type", limit: 255 - t.text "position", limit: 65535 + t.integer "project_id" + t.integer "noteable_id" + t.string "noteable_type" + t.integer "recipient_id" + t.string "commit_id" + t.string "reply_key", null: false + t.string "line_code" + t.string "note_type" + t.text "position" end add_index "sent_notifications", ["reply_key"], name: "index_sent_notifications_on_reply_key", unique: true, using: :btree create_table "services", force: :cascade do |t| - t.string "type", limit: 255 - t.string "title", limit: 255 - t.integer "project_id", limit: 4 + t.string "type" + t.string "title" + t.integer "project_id" t.datetime "created_at" t.datetime "updated_at" t.boolean "active", default: false, null: false - t.text "properties", limit: 65535 + t.text "properties" t.boolean "template", default: false t.boolean "push_events", default: true t.boolean "issues_events", default: true @@ -1169,7 +1003,7 @@ ActiveRecord::Schema.define(version: 20161109150329) do t.boolean "tag_push_events", default: true t.boolean "note_events", default: true, null: false t.boolean "build_events", default: false, null: false - t.string "category", limit: 255, default: "common", null: false + t.string "category", default: "common", null: false t.boolean "default", default: false t.boolean "wiki_page_events", default: true t.boolean "pipeline_events", default: false, null: false @@ -1180,41 +1014,43 @@ ActiveRecord::Schema.define(version: 20161109150329) do add_index "services", ["template"], name: "index_services_on_template", using: :btree create_table "snippets", force: :cascade do |t| - t.string "title", limit: 255 - t.text "content", limit: 4294967295 - t.integer "author_id", limit: 4, null: false - t.integer "project_id", limit: 4 + t.string "title" + t.text "content" + t.integer "author_id", null: false + t.integer "project_id" t.datetime "created_at" t.datetime "updated_at" - t.string "file_name", limit: 255 - t.string "type", limit: 255 - t.integer "visibility_level", limit: 4, default: 0, null: false - t.text "title_html", limit: 65535 - t.text "content_html", limit: 65535 + t.string "file_name" + t.string "type" + t.integer "visibility_level", default: 0, null: false + t.text "title_html" + t.text "content_html" end add_index "snippets", ["author_id"], name: "index_snippets_on_author_id", using: :btree + add_index "snippets", ["file_name"], name: "index_snippets_on_file_name_trigram", using: :gin, opclasses: {"file_name"=>"gin_trgm_ops"} add_index "snippets", ["project_id"], name: "index_snippets_on_project_id", using: :btree + add_index "snippets", ["title"], name: "index_snippets_on_title_trigram", using: :gin, opclasses: {"title"=>"gin_trgm_ops"} add_index "snippets", ["updated_at"], name: "index_snippets_on_updated_at", using: :btree add_index "snippets", ["visibility_level"], name: "index_snippets_on_visibility_level", using: :btree create_table "spam_logs", force: :cascade do |t| - t.integer "user_id", limit: 4 - t.string "source_ip", limit: 255 - t.string "user_agent", limit: 255 + t.integer "user_id" + t.string "source_ip" + t.string "user_agent" t.boolean "via_api" - t.string "noteable_type", limit: 255 - t.string "title", limit: 255 - t.text "description", limit: 65535 + t.string "noteable_type" + t.string "title" + t.text "description" t.datetime "created_at", null: false t.datetime "updated_at", null: false t.boolean "submitted_as_ham", default: false, null: false end create_table "subscriptions", force: :cascade do |t| - t.integer "user_id", limit: 4 - t.integer "subscribable_id", limit: 4 - t.string "subscribable_type", limit: 255 + t.integer "user_id" + t.integer "subscribable_id" + t.string "subscribable_type" t.boolean "subscribed" t.datetime "created_at" t.datetime "updated_at" @@ -1223,12 +1059,12 @@ ActiveRecord::Schema.define(version: 20161109150329) do add_index "subscriptions", ["subscribable_id", "subscribable_type", "user_id"], name: "subscriptions_user_id_and_ref_fields", unique: true, using: :btree create_table "taggings", force: :cascade do |t| - t.integer "tag_id", limit: 4 - t.integer "taggable_id", limit: 4 - t.string "taggable_type", limit: 255 - t.integer "tagger_id", limit: 4 - t.string "tagger_type", limit: 255 - t.string "context", limit: 255 + t.integer "tag_id" + t.integer "taggable_id" + t.string "taggable_type" + t.integer "tagger_id" + t.string "tagger_type" + t.string "context" t.datetime "created_at" end @@ -1236,24 +1072,24 @@ ActiveRecord::Schema.define(version: 20161109150329) do add_index "taggings", ["taggable_id", "taggable_type", "context"], name: "index_taggings_on_taggable_id_and_taggable_type_and_context", using: :btree create_table "tags", force: :cascade do |t| - t.string "name", limit: 255 - t.integer "taggings_count", limit: 4, default: 0 + t.string "name" + t.integer "taggings_count", default: 0 end add_index "tags", ["name"], name: "index_tags_on_name", unique: true, using: :btree create_table "todos", force: :cascade do |t| - t.integer "user_id", limit: 4, null: false - t.integer "project_id", limit: 4, null: false - t.integer "target_id", limit: 4 - t.string "target_type", limit: 255, null: false - t.integer "author_id", limit: 4 - t.integer "action", limit: 4, null: false - t.string "state", limit: 255, null: false + t.integer "user_id", null: false + t.integer "project_id", null: false + t.integer "target_id" + t.string "target_type", null: false + t.integer "author_id" + t.integer "action", null: false + t.string "state", null: false t.datetime "created_at" t.datetime "updated_at" - t.integer "note_id", limit: 4 - t.string "commit_id", limit: 255 + t.integer "note_id" + t.string "commit_id" end add_index "todos", ["author_id"], name: "index_todos_on_author_id", using: :btree @@ -1264,104 +1100,95 @@ ActiveRecord::Schema.define(version: 20161109150329) do add_index "todos", ["user_id"], name: "index_todos_on_user_id", using: :btree create_table "trending_projects", force: :cascade do |t| - t.integer "project_id", limit: 4, null: false + t.integer "project_id", null: false end add_index "trending_projects", ["project_id"], name: "index_trending_projects_on_project_id", using: :btree create_table "u2f_registrations", force: :cascade do |t| - t.text "certificate", limit: 65535 - t.string "key_handle", limit: 255 - t.string "public_key", limit: 255 - t.integer "counter", limit: 4 - t.integer "user_id", limit: 4 + t.text "certificate" + t.string "key_handle" + t.string "public_key" + t.integer "counter" + t.integer "user_id" t.datetime "created_at", null: false t.datetime "updated_at", null: false - t.string "name", limit: 255 + t.string "name" end add_index "u2f_registrations", ["key_handle"], name: "index_u2f_registrations_on_key_handle", using: :btree add_index "u2f_registrations", ["user_id"], name: "index_u2f_registrations_on_user_id", using: :btree - create_table "user_activities", force: :cascade do |t| - t.integer "user_id", limit: 4 - t.datetime "last_activity_at", null: false - end - - add_index "user_activities", ["user_id"], name: "index_user_activities_on_user_id", unique: true, using: :btree - create_table "user_agent_details", force: :cascade do |t| - t.string "user_agent", limit: 255, null: false - t.string "ip_address", limit: 255, null: false - t.integer "subject_id", limit: 4, null: false - t.string "subject_type", limit: 255, null: false + t.string "user_agent", null: false + t.string "ip_address", null: false + t.integer "subject_id", null: false + t.string "subject_type", null: false t.boolean "submitted", default: false, null: false t.datetime "created_at", null: false t.datetime "updated_at", null: false end create_table "users", force: :cascade do |t| - t.string "email", limit: 255, default: "", null: false - t.string "encrypted_password", limit: 255, default: "", null: false - t.string "reset_password_token", limit: 255 + t.string "email", default: "", null: false + t.string "encrypted_password", default: "", null: false + t.string "reset_password_token" t.datetime "reset_password_sent_at" t.datetime "remember_created_at" - t.integer "sign_in_count", limit: 4, default: 0 + t.integer "sign_in_count", default: 0 t.datetime "current_sign_in_at" t.datetime "last_sign_in_at" - t.string "current_sign_in_ip", limit: 255 - t.string "last_sign_in_ip", limit: 255 + t.string "current_sign_in_ip" + t.string "last_sign_in_ip" t.datetime "created_at" t.datetime "updated_at" - t.string "name", limit: 255 + t.string "name" t.boolean "admin", default: false, null: false - t.integer "projects_limit", limit: 4, default: 10 - t.string "skype", limit: 255, default: "", null: false - t.string "linkedin", limit: 255, default: "", null: false - t.string "twitter", limit: 255, default: "", null: false - t.string "authentication_token", limit: 255 - t.integer "theme_id", limit: 4, default: 1, null: false - t.string "bio", limit: 255 - t.integer "failed_attempts", limit: 4, default: 0 + t.integer "projects_limit", default: 10 + t.string "skype", default: "", null: false + t.string "linkedin", default: "", null: false + t.string "twitter", default: "", null: false + t.string "authentication_token" + t.integer "theme_id", default: 1, null: false + t.string "bio" + t.integer "failed_attempts", default: 0 t.datetime "locked_at" - t.string "username", limit: 255 + t.string "username" t.boolean "can_create_group", default: true, null: false t.boolean "can_create_team", default: true, null: false - t.string "state", limit: 255 - t.integer "color_scheme_id", limit: 4, default: 1, null: false + t.string "state" + t.integer "color_scheme_id", default: 1, null: false t.datetime "password_expires_at" - t.integer "created_by_id", limit: 4 + t.integer "created_by_id" t.datetime "last_credential_check_at" - t.string "avatar", limit: 255 - t.string "confirmation_token", limit: 255 + t.string "avatar" + t.string "confirmation_token" t.datetime "confirmed_at" t.datetime "confirmation_sent_at" - t.string "unconfirmed_email", limit: 255 + t.string "unconfirmed_email" t.boolean "hide_no_ssh_key", default: false - t.string "website_url", limit: 255, default: "", null: false - t.datetime "admin_email_unsubscribed_at" - t.string "notification_email", limit: 255 + t.string "website_url", default: "", null: false + t.string "notification_email" t.boolean "hide_no_password", default: false t.boolean "password_automatically_set", default: false - t.string "location", limit: 255 - t.string "encrypted_otp_secret", limit: 255 - t.string "encrypted_otp_secret_iv", limit: 255 - t.string "encrypted_otp_secret_salt", limit: 255 + t.string "location" + t.string "encrypted_otp_secret" + t.string "encrypted_otp_secret_iv" + t.string "encrypted_otp_secret_salt" t.boolean "otp_required_for_login", default: false, null: false - t.text "otp_backup_codes", limit: 65535 - t.string "public_email", limit: 255, default: "", null: false - t.integer "dashboard", limit: 4, default: 0 - t.integer "project_view", limit: 4, default: 0 - t.integer "consumed_timestep", limit: 4 - t.integer "layout", limit: 4, default: 0 + t.text "otp_backup_codes" + t.string "public_email", default: "", null: false + t.integer "dashboard", default: 0 + t.integer "project_view", default: 0 + t.integer "consumed_timestep" + t.integer "layout", default: 0 t.boolean "hide_project_limit", default: false - t.text "note", limit: 65535 - t.string "unlock_token", limit: 255 + t.string "unlock_token" t.datetime "otp_grace_period_started_at" t.boolean "ldap_email", default: false, null: false t.boolean "external", default: false - t.string "organization", limit: 255 - t.string "incoming_email_token", limit: 255 + t.string "organization" + t.string "incoming_email_token" end add_index "users", ["admin"], name: "index_users_on_admin", using: :btree @@ -1370,15 +1197,18 @@ ActiveRecord::Schema.define(version: 20161109150329) do add_index "users", ["created_at"], name: "index_users_on_created_at", using: :btree add_index "users", ["current_sign_in_at"], name: "index_users_on_current_sign_in_at", using: :btree add_index "users", ["email"], name: "index_users_on_email", unique: true, using: :btree + add_index "users", ["email"], name: "index_users_on_email_trigram", using: :gin, opclasses: {"email"=>"gin_trgm_ops"} add_index "users", ["incoming_email_token"], name: "index_users_on_incoming_email_token", using: :btree add_index "users", ["name"], name: "index_users_on_name", using: :btree + add_index "users", ["name"], name: "index_users_on_name_trigram", using: :gin, opclasses: {"name"=>"gin_trgm_ops"} add_index "users", ["reset_password_token"], name: "index_users_on_reset_password_token", unique: true, using: :btree add_index "users", ["state"], name: "index_users_on_state", using: :btree add_index "users", ["username"], name: "index_users_on_username", using: :btree + add_index "users", ["username"], name: "index_users_on_username_trigram", using: :gin, opclasses: {"username"=>"gin_trgm_ops"} create_table "users_star_projects", force: :cascade do |t| - t.integer "project_id", limit: 4, null: false - t.integer "user_id", limit: 4, null: false + t.integer "project_id", null: false + t.integer "user_id", null: false t.datetime "created_at" t.datetime "updated_at" end @@ -1389,28 +1219,26 @@ ActiveRecord::Schema.define(version: 20161109150329) do create_table "web_hooks", force: :cascade do |t| t.string "url", limit: 2000 - t.integer "project_id", limit: 4 + t.integer "project_id" t.datetime "created_at" t.datetime "updated_at" - t.string "type", limit: 255, default: "ProjectHook" - t.integer "service_id", limit: 4 + t.string "type", default: "ProjectHook" + t.integer "service_id" t.boolean "push_events", default: true, null: false t.boolean "issues_events", default: false, null: false t.boolean "merge_requests_events", default: false, null: false t.boolean "tag_push_events", default: false - t.integer "group_id", limit: 4 t.boolean "note_events", default: false, null: false t.boolean "enable_ssl_verification", default: true t.boolean "build_events", default: false, null: false - t.string "token", limit: 255 t.boolean "wiki_page_events", default: false, null: false + t.string "token" t.boolean "pipeline_events", default: false, null: false t.boolean "confidential_issues_events", default: false, null: false end add_index "web_hooks", ["project_id"], name: "index_web_hooks_on_project_id", using: :btree - add_foreign_key "approver_groups", "namespaces", column: "group_id", on_delete: :cascade add_foreign_key "boards", "projects" add_foreign_key "issue_metrics", "issues", on_delete: :cascade add_foreign_key "label_priorities", "labels", on_delete: :cascade @@ -1422,17 +1250,9 @@ ActiveRecord::Schema.define(version: 20161109150329) do add_foreign_key "merge_request_metrics", "merge_requests", on_delete: :cascade add_foreign_key "merge_requests_closing_issues", "issues", on_delete: :cascade add_foreign_key "merge_requests_closing_issues", "merge_requests", on_delete: :cascade - add_foreign_key "path_locks", "projects" - add_foreign_key "path_locks", "users" add_foreign_key "personal_access_tokens", "users" - add_foreign_key "protected_branch_merge_access_levels", "namespaces", column: "group_id" add_foreign_key "protected_branch_merge_access_levels", "protected_branches" - add_foreign_key "protected_branch_merge_access_levels", "users" - add_foreign_key "protected_branch_push_access_levels", "namespaces", column: "group_id" add_foreign_key "protected_branch_push_access_levels", "protected_branches" - add_foreign_key "protected_branch_push_access_levels", "users" - add_foreign_key "remote_mirrors", "projects" add_foreign_key "trending_projects", "projects", on_delete: :cascade add_foreign_key "u2f_registrations", "users" - add_foreign_key "user_activities", "users", on_delete: :cascade end -- cgit v1.2.1 From 4fcae04f7bb4823d740a18419f21b8d154b4ef89 Mon Sep 17 00:00:00 2001 From: Douglas Barbosa Alexandre Date: Mon, 31 Oct 2016 15:40:27 -0200 Subject: Add project_id to subscriptions --- db/schema.rb | 2 ++ 1 file changed, 2 insertions(+) (limited to 'db/schema.rb') diff --git a/db/schema.rb b/db/schema.rb index ed4dfc786f6..fcdb5ab7dde 100644 --- a/db/schema.rb +++ b/db/schema.rb @@ -1052,6 +1052,7 @@ ActiveRecord::Schema.define(version: 20161109150329) do t.boolean "subscribed" t.datetime "created_at" t.datetime "updated_at" + t.integer "project_id" end add_index "subscriptions", ["subscribable_id", "subscribable_type", "user_id"], name: "subscriptions_user_id_and_ref_fields", unique: true, using: :btree @@ -1250,6 +1251,7 @@ ActiveRecord::Schema.define(version: 20161109150329) do add_foreign_key "personal_access_tokens", "users" add_foreign_key "protected_branch_merge_access_levels", "protected_branches" add_foreign_key "protected_branch_push_access_levels", "protected_branches" + add_foreign_key "subscriptions", "projects", on_delete: :cascade add_foreign_key "trending_projects", "projects", on_delete: :cascade add_foreign_key "u2f_registrations", "users" end -- cgit v1.2.1 From bde0202693508aa9eb3ce76876b1c64120d51ef3 Mon Sep 17 00:00:00 2001 From: Douglas Barbosa Alexandre Date: Mon, 31 Oct 2016 16:36:28 -0200 Subject: Add unique index to subscriptions on subscribable and user and project --- db/schema.rb | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'db/schema.rb') diff --git a/db/schema.rb b/db/schema.rb index fcdb5ab7dde..e3a4cf9b96d 100644 --- a/db/schema.rb +++ b/db/schema.rb @@ -1055,7 +1055,7 @@ ActiveRecord::Schema.define(version: 20161109150329) do t.integer "project_id" end - add_index "subscriptions", ["subscribable_id", "subscribable_type", "user_id"], name: "subscriptions_user_id_and_ref_fields", unique: true, using: :btree + add_index "subscriptions", ["subscribable_id", "subscribable_type", "user_id", "project_id"], name: "index_subscriptions_on_subscribable_and_user_id_and_project_id", unique: true, using: :btree create_table "taggings", force: :cascade do |t| t.integer "tag_id" -- cgit v1.2.1 From de96f295a2c08ee2888de91b910d714a15204fb2 Mon Sep 17 00:00:00 2001 From: James Lopez Date: Thu, 17 Nov 2016 18:10:28 +0100 Subject: fix schema.rb --- db/schema.rb | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) (limited to 'db/schema.rb') diff --git a/db/schema.rb b/db/schema.rb index 22318612796..983e1c90682 100644 --- a/db/schema.rb +++ b/db/schema.rb @@ -98,14 +98,14 @@ ActiveRecord::Schema.define(version: 20161109150329) do t.text "help_page_text_html" t.text "shared_runners_text_html" t.text "after_sign_up_text_html" + t.boolean "sidekiq_throttling_enabled", default: false + t.string "sidekiq_throttling_queues" + t.decimal "sidekiq_throttling_factor" t.boolean "housekeeping_enabled", default: true, null: false t.boolean "housekeeping_bitmaps_enabled", default: true, null: false t.integer "housekeeping_incremental_repack_period", default: 10, null: false t.integer "housekeeping_full_repack_period", default: 50, null: false t.integer "housekeeping_gc_period", default: 200, null: false - t.boolean "sidekiq_throttling_enabled", default: false - t.string "sidekiq_throttling_queues" - t.decimal "sidekiq_throttling_factor" end create_table "audit_events", force: :cascade do |t| @@ -917,7 +917,7 @@ ActiveRecord::Schema.define(version: 20161109150329) do t.boolean "has_external_wiki" t.boolean "lfs_enabled" t.text "description_html" - t.boolean "only_allow_merge_if_all_discussions_are_resolved", default: false, null: false + t.boolean "only_allow_merge_if_all_discussions_are_resolved" end add_index "projects", ["ci_id"], name: "index_projects_on_ci_id", using: :btree -- cgit v1.2.1 From bf28506f673e728bfaf0f8fb29d07d3e1cf517a2 Mon Sep 17 00:00:00 2001 From: Timothy Andrew Date: Thu, 17 Nov 2016 17:21:17 +0530 Subject: Add a migration to remove soft-deleted groups. The database should not have any soft-deleted groups. Due to a race condition (soft-delete completes after the hard-delete), soft-deleted groups were (incorrectly) left in the database, causing issues while trying to create a new group with the same name. --- db/schema.rb | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'db/schema.rb') diff --git a/db/schema.rb b/db/schema.rb index 8f8a03e1534..9382f8adc4d 100644 --- a/db/schema.rb +++ b/db/schema.rb @@ -11,7 +11,7 @@ # # It's strongly recommended that you check this file into your version control system. -ActiveRecord::Schema.define(version: 20161113184239) do +ActiveRecord::Schema.define(version: 20161117114805) do # These are extensions that must be enabled in order to support this database enable_extension "plpgsql" -- cgit v1.2.1 From d399e1ae2b92bc399962a286fddc59eaa09670a7 Mon Sep 17 00:00:00 2001 From: Felipe Artur Date: Mon, 14 Nov 2016 19:30:01 -0200 Subject: Allow enabling and disabling commit and MR events for JIRA --- db/schema.rb | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) (limited to 'db/schema.rb') diff --git a/db/schema.rb b/db/schema.rb index 19bd6b63acb..b098392581b 100644 --- a/db/schema.rb +++ b/db/schema.rb @@ -11,7 +11,7 @@ # # It's strongly recommended that you check this file into your version control system. -ActiveRecord::Schema.define(version: 20161117114805) do +ActiveRecord::Schema.define(version: 20161118183841) do # These are extensions that must be enabled in order to support this database enable_extension "plpgsql" @@ -1023,6 +1023,7 @@ ActiveRecord::Schema.define(version: 20161117114805) do t.boolean "wiki_page_events", default: true t.boolean "pipeline_events", default: false, null: false t.boolean "confidential_issues_events", default: true, null: false + t.boolean "commit_events", default: true, null: false end add_index "services", ["project_id"], name: "index_services_on_project_id", using: :btree -- cgit v1.2.1 From fd05e26618dd0c123ca476b6f5a3d85f1cfe397a Mon Sep 17 00:00:00 2001 From: Ahmad Sherif Date: Tue, 11 Oct 2016 14:25:17 +0200 Subject: Precalculate user's authorized projects in database Closes #23150 --- db/schema.rb | 11 +++++++++++ 1 file changed, 11 insertions(+) (limited to 'db/schema.rb') diff --git a/db/schema.rb b/db/schema.rb index ed4dfc786f6..83846877ef6 100644 --- a/db/schema.rb +++ b/db/schema.rb @@ -844,6 +844,14 @@ ActiveRecord::Schema.define(version: 20161109150329) do add_index "personal_access_tokens", ["token"], name: "index_personal_access_tokens_on_token", unique: true, using: :btree add_index "personal_access_tokens", ["user_id"], name: "index_personal_access_tokens_on_user_id", using: :btree + create_table "project_authorizations", force: :cascade do |t| + t.integer "user_id" + t.integer "project_id" + t.integer "access_level" + end + + add_index "project_authorizations", ["user_id", "project_id", "access_level"], name: "index_project_authorizations_on_user_id_project_id_access_level", unique: true, using: :btree + create_table "project_features", force: :cascade do |t| t.integer "project_id" t.integer "merge_requests_access_level" @@ -1187,6 +1195,7 @@ ActiveRecord::Schema.define(version: 20161109150329) do t.boolean "external", default: false t.string "organization" t.string "incoming_email_token" + t.boolean "authorized_projects_populated" end add_index "users", ["admin"], name: "index_users_on_admin", using: :btree @@ -1248,6 +1257,8 @@ ActiveRecord::Schema.define(version: 20161109150329) do add_foreign_key "merge_requests_closing_issues", "issues", on_delete: :cascade add_foreign_key "merge_requests_closing_issues", "merge_requests", on_delete: :cascade add_foreign_key "personal_access_tokens", "users" + add_foreign_key "project_authorizations", "projects", on_delete: :cascade + add_foreign_key "project_authorizations", "users", on_delete: :cascade add_foreign_key "protected_branch_merge_access_levels", "protected_branches" add_foreign_key "protected_branch_push_access_levels", "protected_branches" add_foreign_key "trending_projects", "projects", on_delete: :cascade -- cgit v1.2.1 From b52dd6849d9408f58250e63282ff2d0d7a0c1f78 Mon Sep 17 00:00:00 2001 From: Kamil Trzcinski Date: Sat, 19 Nov 2016 19:41:15 +0100 Subject: Remove duplicate sidekiq throttling parameters --- db/schema.rb | 3 --- 1 file changed, 3 deletions(-) (limited to 'db/schema.rb') diff --git a/db/schema.rb b/db/schema.rb index d5fc514f26a..db2ce689afc 100644 --- a/db/schema.rb +++ b/db/schema.rb @@ -106,9 +106,6 @@ ActiveRecord::Schema.define(version: 20161117114805) do t.integer "housekeeping_incremental_repack_period", default: 10, null: false t.integer "housekeeping_full_repack_period", default: 50, null: false t.integer "housekeeping_gc_period", default: 200, null: false - t.boolean "sidekiq_throttling_enabled", default: false - t.string "sidekiq_throttling_queues" - t.decimal "sidekiq_throttling_factor" end create_table "audit_events", force: :cascade do |t| -- cgit v1.2.1 From 3789cfe056c1d8a5fb91267cc2b1dd0f9f5902a9 Mon Sep 17 00:00:00 2001 From: Valery Sizov Date: Tue, 15 Nov 2016 19:48:30 +0200 Subject: Add a starting date to milestones --- db/schema.rb | 1 + 1 file changed, 1 insertion(+) (limited to 'db/schema.rb') diff --git a/db/schema.rb b/db/schema.rb index 6b28e80f01d..b3c49b52597 100644 --- a/db/schema.rb +++ b/db/schema.rb @@ -720,6 +720,7 @@ ActiveRecord::Schema.define(version: 20161118183841) do t.integer "iid" t.text "title_html" t.text "description_html" + t.date "start_date" end add_index "milestones", ["description"], name: "index_milestones_on_description_trigram", using: :gin, opclasses: {"description"=>"gin_trgm_ops"} -- cgit v1.2.1 From b62e2bedbfa49aacfc4847049aa589f045af15ce Mon Sep 17 00:00:00 2001 From: Ruben Davila Date: Mon, 28 Nov 2016 17:00:03 -0500 Subject: Add new configuration setting to enable/disable HTML emails. This new global setting will allow admins to specify if HTML emails should be sent or not, this is basically useful when system administrators want to save some disk space by avoiding emails in HTML format and using only the Plain Text version. --- db/schema.rb | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) (limited to 'db/schema.rb') diff --git a/db/schema.rb b/db/schema.rb index b3c49b52597..3d630a148f0 100644 --- a/db/schema.rb +++ b/db/schema.rb @@ -11,7 +11,7 @@ # # It's strongly recommended that you check this file into your version control system. -ActiveRecord::Schema.define(version: 20161118183841) do +ActiveRecord::Schema.define(version: 20161128161412) do # These are extensions that must be enabled in order to support this database enable_extension "plpgsql" @@ -106,6 +106,7 @@ ActiveRecord::Schema.define(version: 20161118183841) do t.integer "housekeeping_incremental_repack_period", default: 10, null: false t.integer "housekeeping_full_repack_period", default: 50, null: false t.integer "housekeeping_gc_period", default: 200, null: false + t.boolean "html_emails_enabled", default: true end create_table "audit_events", force: :cascade do |t| -- cgit v1.2.1 From a48ef15620bd479bcbe1c47e60eaa4c84dbd0f8f Mon Sep 17 00:00:00 2001 From: Valery Sizov Date: Mon, 28 Nov 2016 16:44:24 +0200 Subject: Remove unnecessary database indexes --- db/schema.rb | 9 --------- 1 file changed, 9 deletions(-) (limited to 'db/schema.rb') diff --git a/db/schema.rb b/db/schema.rb index 3d630a148f0..0d510c8a269 100644 --- a/db/schema.rb +++ b/db/schema.rb @@ -132,7 +132,6 @@ ActiveRecord::Schema.define(version: 20161128161412) do add_index "award_emoji", ["awardable_type", "awardable_id"], name: "index_award_emoji_on_awardable_type_and_awardable_id", using: :btree add_index "award_emoji", ["user_id", "name"], name: "index_award_emoji_on_user_id_and_name", using: :btree - add_index "award_emoji", ["user_id"], name: "index_award_emoji_on_user_id", using: :btree create_table "boards", force: :cascade do |t| t.integer "project_id", null: false @@ -220,7 +219,6 @@ ActiveRecord::Schema.define(version: 20161128161412) do add_index "ci_builds", ["commit_id", "status", "type"], name: "index_ci_builds_on_commit_id_and_status_and_type", using: :btree add_index "ci_builds", ["commit_id", "type", "name", "ref"], name: "index_ci_builds_on_commit_id_and_type_and_name_and_ref", using: :btree add_index "ci_builds", ["commit_id", "type", "ref"], name: "index_ci_builds_on_commit_id_and_type_and_ref", using: :btree - add_index "ci_builds", ["commit_id"], name: "index_ci_builds_on_commit_id", using: :btree add_index "ci_builds", ["gl_project_id"], name: "index_ci_builds_on_gl_project_id", using: :btree add_index "ci_builds", ["project_id"], name: "index_ci_builds_on_project_id", using: :btree add_index "ci_builds", ["runner_id"], name: "index_ci_builds_on_runner_id", using: :btree @@ -410,9 +408,7 @@ ActiveRecord::Schema.define(version: 20161128161412) do end add_index "deployments", ["project_id", "environment_id", "iid"], name: "index_deployments_on_project_id_and_environment_id_and_iid", using: :btree - add_index "deployments", ["project_id", "environment_id"], name: "index_deployments_on_project_id_and_environment_id", using: :btree add_index "deployments", ["project_id", "iid"], name: "index_deployments_on_project_id_and_iid", unique: true, using: :btree - add_index "deployments", ["project_id"], name: "index_deployments_on_project_id", using: :btree create_table "emails", force: :cascade do |t| t.integer "user_id", null: false @@ -570,7 +566,6 @@ ActiveRecord::Schema.define(version: 20161128161412) do end add_index "labels", ["group_id", "project_id", "title"], name: "index_labels_on_group_id_and_project_id_and_title", unique: true, using: :btree - add_index "labels", ["group_id"], name: "index_labels_on_group_id", using: :btree create_table "lfs_objects", force: :cascade do |t| t.string "oid", null: false @@ -601,7 +596,6 @@ ActiveRecord::Schema.define(version: 20161128161412) do end add_index "lists", ["board_id", "label_id"], name: "index_lists_on_board_id_and_label_id", unique: true, using: :btree - add_index "lists", ["board_id"], name: "index_lists_on_board_id", using: :btree add_index "lists", ["label_id"], name: "index_lists_on_label_id", using: :btree create_table "members", force: :cascade do |t| @@ -727,7 +721,6 @@ ActiveRecord::Schema.define(version: 20161128161412) do add_index "milestones", ["description"], name: "index_milestones_on_description_trigram", using: :gin, opclasses: {"description"=>"gin_trgm_ops"} add_index "milestones", ["due_date"], name: "index_milestones_on_due_date", using: :btree add_index "milestones", ["project_id", "iid"], name: "index_milestones_on_project_id_and_iid", unique: true, using: :btree - add_index "milestones", ["project_id"], name: "index_milestones_on_project_id", using: :btree add_index "milestones", ["title"], name: "index_milestones_on_title", using: :btree add_index "milestones", ["title"], name: "index_milestones_on_title_trigram", using: :gin, opclasses: {"title"=>"gin_trgm_ops"} @@ -790,7 +783,6 @@ ActiveRecord::Schema.define(version: 20161128161412) do add_index "notes", ["noteable_id", "noteable_type"], name: "index_notes_on_noteable_id_and_noteable_type", using: :btree add_index "notes", ["noteable_type"], name: "index_notes_on_noteable_type", using: :btree add_index "notes", ["project_id", "noteable_type"], name: "index_notes_on_project_id_and_noteable_type", using: :btree - add_index "notes", ["project_id"], name: "index_notes_on_project_id", using: :btree add_index "notes", ["updated_at"], name: "index_notes_on_updated_at", using: :btree create_table "notification_settings", force: :cascade do |t| @@ -1243,7 +1235,6 @@ ActiveRecord::Schema.define(version: 20161128161412) do add_index "users_star_projects", ["project_id"], name: "index_users_star_projects_on_project_id", using: :btree add_index "users_star_projects", ["user_id", "project_id"], name: "index_users_star_projects_on_user_id_and_project_id", unique: true, using: :btree - add_index "users_star_projects", ["user_id"], name: "index_users_star_projects_on_user_id", using: :btree create_table "web_hooks", force: :cascade do |t| t.string "url", limit: 2000 -- cgit v1.2.1 From 83232be0e14cc8b35bf74532203a6e4371c15e70 Mon Sep 17 00:00:00 2001 From: Dmitriy Zaporozhets Date: Mon, 31 Oct 2016 13:00:53 +0200 Subject: Add nested groups support on data level * add parent_id field to namespaces table to store relation with nested groups * create routes table to keep information about full path of every group and project * project/group lookup by full path from routes table Signed-off-by: Dmitriy Zaporozhets --- db/schema.rb | 25 +++++++++++++++++++------ 1 file changed, 19 insertions(+), 6 deletions(-) (limited to 'db/schema.rb') diff --git a/db/schema.rb b/db/schema.rb index 0d510c8a269..9c46f573719 100644 --- a/db/schema.rb +++ b/db/schema.rb @@ -11,7 +11,7 @@ # # It's strongly recommended that you check this file into your version control system. -ActiveRecord::Schema.define(version: 20161128161412) do +ActiveRecord::Schema.define(version: 20161202152035) do # These are extensions that must be enabled in order to support this database enable_extension "plpgsql" @@ -98,14 +98,14 @@ ActiveRecord::Schema.define(version: 20161128161412) do t.text "help_page_text_html" t.text "shared_runners_text_html" t.text "after_sign_up_text_html" - t.boolean "sidekiq_throttling_enabled", default: false - t.string "sidekiq_throttling_queues" - t.decimal "sidekiq_throttling_factor" t.boolean "housekeeping_enabled", default: true, null: false t.boolean "housekeeping_bitmaps_enabled", default: true, null: false t.integer "housekeeping_incremental_repack_period", default: 10, null: false t.integer "housekeeping_full_repack_period", default: 50, null: false t.integer "housekeeping_gc_period", default: 200, null: false + t.boolean "sidekiq_throttling_enabled", default: false + t.string "sidekiq_throttling_queues" + t.decimal "sidekiq_throttling_factor" t.boolean "html_emails_enabled", default: true end @@ -737,8 +737,9 @@ ActiveRecord::Schema.define(version: 20161128161412) do t.integer "visibility_level", default: 20, null: false t.boolean "request_access_enabled", default: false, null: false t.datetime "deleted_at" - t.boolean "lfs_enabled" t.text "description_html" + t.boolean "lfs_enabled" + t.integer "parent_id" end add_index "namespaces", ["created_at"], name: "index_namespaces_on_created_at", using: :btree @@ -746,6 +747,7 @@ ActiveRecord::Schema.define(version: 20161128161412) do add_index "namespaces", ["name"], name: "index_namespaces_on_name", unique: true, using: :btree add_index "namespaces", ["name"], name: "index_namespaces_on_name_trigram", using: :gin, opclasses: {"name"=>"gin_trgm_ops"} add_index "namespaces", ["owner_id"], name: "index_namespaces_on_owner_id", using: :btree + add_index "namespaces", ["parent_id", "id"], name: "index_namespaces_on_parent_id_and_id", unique: true, using: :btree add_index "namespaces", ["path"], name: "index_namespaces_on_path", unique: true, using: :btree add_index "namespaces", ["path"], name: "index_namespaces_on_path_trigram", using: :gin, opclasses: {"path"=>"gin_trgm_ops"} add_index "namespaces", ["type"], name: "index_namespaces_on_type", using: :btree @@ -991,6 +993,17 @@ ActiveRecord::Schema.define(version: 20161128161412) do add_index "releases", ["project_id", "tag"], name: "index_releases_on_project_id_and_tag", using: :btree add_index "releases", ["project_id"], name: "index_releases_on_project_id", using: :btree + create_table "routes", force: :cascade do |t| + t.integer "source_id", null: false + t.string "source_type", null: false + t.string "path", null: false + t.datetime "created_at" + t.datetime "updated_at" + end + + add_index "routes", ["path"], name: "index_routes_on_path", unique: true, using: :btree + add_index "routes", ["source_type", "source_id"], name: "index_routes_on_source_type_and_source_id", unique: true, using: :btree + create_table "sent_notifications", force: :cascade do |t| t.integer "project_id" t.integer "noteable_id" @@ -1206,8 +1219,8 @@ ActiveRecord::Schema.define(version: 20161128161412) do t.datetime "otp_grace_period_started_at" t.boolean "ldap_email", default: false, null: false t.boolean "external", default: false - t.string "organization" t.string "incoming_email_token" + t.string "organization" t.boolean "authorized_projects_populated" end -- cgit v1.2.1 From 161d7c02d4ff49d6d91b982faee61b5de00d2631 Mon Sep 17 00:00:00 2001 From: Dmitriy Zaporozhets Date: Wed, 7 Dec 2016 19:15:26 +0200 Subject: Modify namespace name and path validation Currently namespace name and path have uniq validaiton which does not allow us to use same group name/path inside different groups. This commit changes validation in next way: * Allow same namespace name with different parent_id * Allow same namespace path. Uniq validation should be handled by routes table Signed-off-by: Dmitriy Zaporozhets --- db/schema.rb | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) (limited to 'db/schema.rb') diff --git a/db/schema.rb b/db/schema.rb index 9c46f573719..08b1590e484 100644 --- a/db/schema.rb +++ b/db/schema.rb @@ -11,7 +11,7 @@ # # It's strongly recommended that you check this file into your version control system. -ActiveRecord::Schema.define(version: 20161202152035) do +ActiveRecord::Schema.define(version: 20161206153754) do # These are extensions that must be enabled in order to support this database enable_extension "plpgsql" @@ -744,11 +744,11 @@ ActiveRecord::Schema.define(version: 20161202152035) do add_index "namespaces", ["created_at"], name: "index_namespaces_on_created_at", using: :btree add_index "namespaces", ["deleted_at"], name: "index_namespaces_on_deleted_at", using: :btree - add_index "namespaces", ["name"], name: "index_namespaces_on_name", unique: true, using: :btree + add_index "namespaces", ["name", "parent_id"], name: "index_namespaces_on_name_and_parent_id", unique: true, using: :btree add_index "namespaces", ["name"], name: "index_namespaces_on_name_trigram", using: :gin, opclasses: {"name"=>"gin_trgm_ops"} add_index "namespaces", ["owner_id"], name: "index_namespaces_on_owner_id", using: :btree add_index "namespaces", ["parent_id", "id"], name: "index_namespaces_on_parent_id_and_id", unique: true, using: :btree - add_index "namespaces", ["path"], name: "index_namespaces_on_path", unique: true, using: :btree + add_index "namespaces", ["path"], name: "index_namespaces_on_path", using: :btree add_index "namespaces", ["path"], name: "index_namespaces_on_path_trigram", using: :gin, opclasses: {"path"=>"gin_trgm_ops"} add_index "namespaces", ["type"], name: "index_namespaces_on_type", using: :btree -- cgit v1.2.1 From 211f019382c5e3fcf4812199aaf09b850eab09dd Mon Sep 17 00:00:00 2001 From: Dmitriy Zaporozhets Date: Mon, 12 Dec 2016 16:30:24 +0200 Subject: Add index to routes table on lower path for postgresql Signed-off-by: Dmitriy Zaporozhets --- db/schema.rb | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'db/schema.rb') diff --git a/db/schema.rb b/db/schema.rb index 9c46f573719..ae47456084f 100644 --- a/db/schema.rb +++ b/db/schema.rb @@ -11,7 +11,7 @@ # # It's strongly recommended that you check this file into your version control system. -ActiveRecord::Schema.define(version: 20161202152035) do +ActiveRecord::Schema.define(version: 20161212142807) do # These are extensions that must be enabled in order to support this database enable_extension "plpgsql" -- cgit v1.2.1 From 35a3e9183052bab847c30203f27fea9cf77901a4 Mon Sep 17 00:00:00 2001 From: Nick Thomas Date: Wed, 14 Dec 2016 22:58:44 +0000 Subject: Make the index on environment name and project id unique, fixing up any duplicates --- db/schema.rb | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) (limited to 'db/schema.rb') diff --git a/db/schema.rb b/db/schema.rb index 4711b7873af..83c8ad48537 100644 --- a/db/schema.rb +++ b/db/schema.rb @@ -11,7 +11,7 @@ # # It's strongly recommended that you check this file into your version control system. -ActiveRecord::Schema.define(version: 20161212142807) do +ActiveRecord::Schema.define(version: 20161207231621) do # These are extensions that must be enabled in order to support this database enable_extension "plpgsql" @@ -430,7 +430,7 @@ ActiveRecord::Schema.define(version: 20161212142807) do t.string "state", default: "available", null: false end - add_index "environments", ["project_id", "name"], name: "index_environments_on_project_id_and_name", using: :btree + add_index "environments", ["project_id", "name"], name: "index_environments_on_project_id_and_name", unique: true, using: :btree create_table "events", force: :cascade do |t| t.string "target_type" @@ -1290,4 +1290,4 @@ ActiveRecord::Schema.define(version: 20161212142807) do add_foreign_key "subscriptions", "projects", on_delete: :cascade add_foreign_key "trending_projects", "projects", on_delete: :cascade add_foreign_key "u2f_registrations", "users" -end \ No newline at end of file +end -- cgit v1.2.1 From 93a03cd92f6418fbeaf126c30c161ab40d377e94 Mon Sep 17 00:00:00 2001 From: Nick Thomas Date: Thu, 8 Dec 2016 01:09:18 +0000 Subject: Add an environment slug --- db/schema.rb | 14 ++++++++------ 1 file changed, 8 insertions(+), 6 deletions(-) (limited to 'db/schema.rb') diff --git a/db/schema.rb b/db/schema.rb index 83c8ad48537..67ff83d96d9 100644 --- a/db/schema.rb +++ b/db/schema.rb @@ -11,7 +11,7 @@ # # It's strongly recommended that you check this file into your version control system. -ActiveRecord::Schema.define(version: 20161207231621) do +ActiveRecord::Schema.define(version: 20161212142807) do # These are extensions that must be enabled in order to support this database enable_extension "plpgsql" @@ -98,14 +98,14 @@ ActiveRecord::Schema.define(version: 20161207231621) do t.text "help_page_text_html" t.text "shared_runners_text_html" t.text "after_sign_up_text_html" + t.boolean "sidekiq_throttling_enabled", default: false + t.string "sidekiq_throttling_queues" + t.decimal "sidekiq_throttling_factor" t.boolean "housekeeping_enabled", default: true, null: false t.boolean "housekeeping_bitmaps_enabled", default: true, null: false t.integer "housekeeping_incremental_repack_period", default: 10, null: false t.integer "housekeeping_full_repack_period", default: 50, null: false t.integer "housekeeping_gc_period", default: 200, null: false - t.boolean "sidekiq_throttling_enabled", default: false - t.string "sidekiq_throttling_queues" - t.decimal "sidekiq_throttling_factor" t.boolean "html_emails_enabled", default: true end @@ -428,9 +428,11 @@ ActiveRecord::Schema.define(version: 20161207231621) do t.string "external_url" t.string "environment_type" t.string "state", default: "available", null: false + t.string "slug", null: false end add_index "environments", ["project_id", "name"], name: "index_environments_on_project_id_and_name", unique: true, using: :btree + add_index "environments", ["project_id", "slug"], name: "index_environments_on_project_id_and_slug", unique: true, using: :btree create_table "events", force: :cascade do |t| t.string "target_type" @@ -737,8 +739,8 @@ ActiveRecord::Schema.define(version: 20161207231621) do t.integer "visibility_level", default: 20, null: false t.boolean "request_access_enabled", default: false, null: false t.datetime "deleted_at" - t.text "description_html" t.boolean "lfs_enabled" + t.text "description_html" t.integer "parent_id" end @@ -1219,8 +1221,8 @@ ActiveRecord::Schema.define(version: 20161207231621) do t.datetime "otp_grace_period_started_at" t.boolean "ldap_email", default: false, null: false t.boolean "external", default: false - t.string "incoming_email_token" t.string "organization" + t.string "incoming_email_token" t.boolean "authorized_projects_populated" end -- cgit v1.2.1 From a5ccaded656fb215f1f8d503b88c8f28bf90ce68 Mon Sep 17 00:00:00 2001 From: Felipe Artur Date: Tue, 6 Dec 2016 15:59:03 -0200 Subject: Change SlackService to SlackNotificationsService --- db/schema.rb | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'db/schema.rb') diff --git a/db/schema.rb b/db/schema.rb index 4711b7873af..5bd4ef1f21b 100644 --- a/db/schema.rb +++ b/db/schema.rb @@ -11,7 +11,7 @@ # # It's strongly recommended that you check this file into your version control system. -ActiveRecord::Schema.define(version: 20161212142807) do +ActiveRecord::Schema.define(version: 20161213172958) do # These are extensions that must be enabled in order to support this database enable_extension "plpgsql" -- cgit v1.2.1 From 1d0ccec6dd8375b751846f69bb170ebd11e9a391 Mon Sep 17 00:00:00 2001 From: Timothy Andrew Date: Tue, 22 Nov 2016 14:23:53 +0530 Subject: Add a `scopes` column to the `personal_access_tokens` table --- db/schema.rb | 1 + 1 file changed, 1 insertion(+) (limited to 'db/schema.rb') diff --git a/db/schema.rb b/db/schema.rb index 67ff83d96d9..a1a22df0d53 100644 --- a/db/schema.rb +++ b/db/schema.rb @@ -854,6 +854,7 @@ ActiveRecord::Schema.define(version: 20161212142807) do t.datetime "expires_at" t.datetime "created_at", null: false t.datetime "updated_at", null: false + t.string "scopes", default: "--- []\n", null: false end add_index "personal_access_tokens", ["token"], name: "index_personal_access_tokens_on_token", unique: true, using: :btree -- cgit v1.2.1