diff --git a/db/schema.rb b/db/schema.rb index 92619982e2a13e94ade5ac537adf376dbe44e0ad..9c5499b3ef0342ec8d9f04ce046067b0d9770268 100644 --- a/db/schema.rb +++ b/db/schema.rb @@ -10,7 +10,7 @@ # # It's strongly recommended that you check this file into your version control system. -ActiveRecord::Schema.define(version: 20190515125613) do +ActiveRecord::Schema.define(version: 20190516202550) do # These are extensions that must be enabled in order to support this database enable_extension "plpgsql" @@ -242,6 +242,8 @@ t.integer "approvals_required", limit: 2, default: 0, null: false t.boolean "code_owner", default: false, null: false t.string "name", null: false + t.boolean "report_approver", default: false + t.integer "report_type", limit: 2 t.index ["merge_request_id", "code_owner", "name"], name: "approval_rule_name_index_for_code_owners", unique: true, where: "(code_owner = true)", using: :btree t.index ["merge_request_id", "code_owner"], name: "index_approval_merge_request_rules_1", using: :btree end diff --git a/ee/app/models/approval_merge_request_fallback.rb b/ee/app/models/approval_merge_request_fallback.rb index e88bfbf65d310429ad6fd5a9a8d947d2d85dc467..a5de6550046fedf8c04354c2094ee0437cb9b0d9 100644 --- a/ee/app/models/approval_merge_request_fallback.rb +++ b/ee/app/models/approval_merge_request_fallback.rb @@ -50,6 +50,10 @@ def code_owner false end + def report_approver + false + end + def source_rule nil end diff --git a/ee/app/models/approval_merge_request_rule.rb b/ee/app/models/approval_merge_request_rule.rb index 199a3da9ff5eb8a4fc8802702d8304f217d68fb5..ed45161f1960671f0c5e6aa0a5b50ad19b5d3f0f 100644 --- a/ee/app/models/approval_merge_request_rule.rb +++ b/ee/app/models/approval_merge_request_rule.rb @@ -21,6 +21,10 @@ class ApprovalMergeRequestRule < ApplicationRecord has_one :approval_project_rule, through: :approval_merge_request_rule_source alias_method :source_rule, :approval_project_rule + enum report_type: { + security: 1 + } + validate :validate_approvals_required def self.find_or_create_code_owner_rule(merge_request, pattern) diff --git a/ee/app/models/approval_project_rule.rb b/ee/app/models/approval_project_rule.rb index 140d8f312e249c9a41183e3c02911a33c593b2cc..095a3fcafd09567a9599b4d5ba05f8531fe34756 100644 --- a/ee/app/models/approval_project_rule.rb +++ b/ee/app/models/approval_project_rule.rb @@ -19,6 +19,11 @@ def code_owner end alias_method :code_owner?, :code_owner + def report_approver + false + end + alias_method :report_approver?, :report_approver + def source_rule nil end diff --git a/ee/changelogs/unreleased/9928-add-report-approver-to-approval-merge-request-rules.yml b/ee/changelogs/unreleased/9928-add-report-approver-to-approval-merge-request-rules.yml new file mode 100644 index 0000000000000000000000000000000000000000..772fe5ed0770cf32036ee48086ca8082fdb1b0bf --- /dev/null +++ b/ee/changelogs/unreleased/9928-add-report-approver-to-approval-merge-request-rules.yml @@ -0,0 +1,5 @@ +--- +title: Add report_approver to approval_merge_request_rules +merge_request: 12819 +author: +type: added diff --git a/ee/db/migrate/20190516202550_add_report_approver_to_approval_merge_request_rules.rb b/ee/db/migrate/20190516202550_add_report_approver_to_approval_merge_request_rules.rb new file mode 100644 index 0000000000000000000000000000000000000000..39e5585a56eb5f9ad52eb023f21f984c313c1753 --- /dev/null +++ b/ee/db/migrate/20190516202550_add_report_approver_to_approval_merge_request_rules.rb @@ -0,0 +1,18 @@ +# frozen_string_literal: true + +# See http://doc.gitlab.com/ce/development/migration_style_guide.html +# for more information on how to write migrations for GitLab. + +class AddReportApproverToApprovalMergeRequestRules < ActiveRecord::Migration[5.1] + include Gitlab::Database::MigrationHelpers + + # Set this constant to true if this migration requires downtime. + DOWNTIME = false + + def change + change_table :approval_merge_request_rules do |t| + t.boolean :report_approver, default: false + t.integer :report_type, limit: 1 + end + end +end