Make Pipeline Triggers to be user aware

- they can have owner,
- they can be edited,
- they have description,
- you can take ownership of them
This commit is contained in:
Kamil Trzcinski 2017-02-15 19:36:31 +01:00
parent c33f09d254
commit 0a75de2909
No known key found for this signature in database
GPG Key ID: 4505F5C7E12C6A5A
3 changed files with 28 additions and 3 deletions

View File

@ -5,10 +5,12 @@ module Ci
acts_as_paranoid
belongs_to :project, foreign_key: :gl_project_id
belongs_to :owner, class_name: "User"
has_many :trigger_requests, dependent: :destroy
validates :token, presence: true
validates :token, uniqueness: true
validates :token, presence: true, uniqueness: true
validates :owner, presence: true
before_validation :set_default_values
@ -25,7 +27,11 @@ module Ci
end
def short_token
token[0...10]
token[0...4]
end
def can_show_token?(user)
owner.blank? || owner == user
end
end
end

View File

@ -0,0 +1,10 @@
class AddOwnerIdToTriggers < ActiveRecord::Migration
include Gitlab::Database::MigrationHelpers
DOWNTIME = false
def change
add_column :ci_triggers, :owner_id, :integer
add_foreign_key :ci_triggers, :users, column: :owner_id, on_delete: :nullify
end
end

View File

@ -0,0 +1,9 @@
class AddDescriptionToTriggers < ActiveRecord::Migration
include Gitlab::Database::MigrationHelpers
DOWNTIME = false
def change
add_column :ci_triggers, :description, :string
end
end