From 6b2b3d7f49db024678775da3a3685bbdd9bbee65 Mon Sep 17 00:00:00 2001 From: Jan Provaznik Date: Wed, 1 Aug 2018 08:58:49 +0000 Subject: Resource event model --- .../20180726172057_create_resource_label_events.rb | 18 ++++++++++++++++++ db/schema.rb | 20 +++++++++++++++++++- 2 files changed, 37 insertions(+), 1 deletion(-) create mode 100644 db/migrate/20180726172057_create_resource_label_events.rb (limited to 'db') diff --git a/db/migrate/20180726172057_create_resource_label_events.rb b/db/migrate/20180726172057_create_resource_label_events.rb new file mode 100644 index 00000000000..2ef7078d898 --- /dev/null +++ b/db/migrate/20180726172057_create_resource_label_events.rb @@ -0,0 +1,18 @@ +# frozen_string_literal: true + +class CreateResourceLabelEvents < ActiveRecord::Migration + include Gitlab::Database::MigrationHelpers + + DOWNTIME = false + + def change + create_table :resource_label_events, id: :bigserial do |t| + t.integer :action, null: false + t.references :issue, null: true, index: true, foreign_key: { on_delete: :cascade } + t.references :merge_request, null: true, index: true, foreign_key: { on_delete: :cascade } + t.references :label, index: true, foreign_key: { on_delete: :nullify } + t.references :user, index: true, foreign_key: { on_delete: :nullify } + t.datetime_with_timezone :created_at, null: false + end + end +end diff --git a/db/schema.rb b/db/schema.rb index a5f7b8149c6..97e7e28df09 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: 20180722103201) do +ActiveRecord::Schema.define(version: 20180726172057) do # These are extensions that must be enabled in order to support this database enable_extension "plpgsql" @@ -1787,6 +1787,20 @@ ActiveRecord::Schema.define(version: 20180722103201) do add_index "remote_mirrors", ["last_successful_update_at"], name: "index_remote_mirrors_on_last_successful_update_at", using: :btree add_index "remote_mirrors", ["project_id"], name: "index_remote_mirrors_on_project_id", using: :btree + create_table "resource_label_events", id: :bigserial, force: :cascade do |t| + t.integer "action", null: false + t.integer "issue_id" + t.integer "merge_request_id" + t.integer "label_id" + t.integer "user_id" + t.datetime_with_timezone "created_at", null: false + end + + add_index "resource_label_events", ["issue_id"], name: "index_resource_label_events_on_issue_id", using: :btree + add_index "resource_label_events", ["label_id"], name: "index_resource_label_events_on_label_id", using: :btree + add_index "resource_label_events", ["merge_request_id"], name: "index_resource_label_events_on_merge_request_id", using: :btree + add_index "resource_label_events", ["user_id"], name: "index_resource_label_events_on_user_id", using: :btree + create_table "routes", force: :cascade do |t| t.integer "source_id", null: false t.string "source_type", null: false @@ -2337,6 +2351,10 @@ ActiveRecord::Schema.define(version: 20180722103201) do add_foreign_key "push_event_payloads", "events", name: "fk_36c74129da", on_delete: :cascade add_foreign_key "releases", "projects", name: "fk_47fe2a0596", on_delete: :cascade add_foreign_key "remote_mirrors", "projects", on_delete: :cascade + add_foreign_key "resource_label_events", "issues", on_delete: :cascade + add_foreign_key "resource_label_events", "labels", on_delete: :nullify + add_foreign_key "resource_label_events", "merge_requests", on_delete: :cascade + add_foreign_key "resource_label_events", "users", on_delete: :nullify add_foreign_key "services", "projects", name: "fk_71cce407f9", on_delete: :cascade add_foreign_key "snippets", "projects", name: "fk_be41fd4bb7", on_delete: :cascade add_foreign_key "subscriptions", "projects", on_delete: :cascade -- cgit v1.2.1