summaryrefslogtreecommitdiff
path: root/app/models/concerns
diff options
context:
space:
mode:
authorRémy Coutable <remy@rymai.me>2017-09-15 19:08:27 +0200
committerRémy Coutable <remy@rymai.me>2017-10-09 15:07:10 +0200
commit67d5ca9f9220e5572f3fa6d0d8290cd7b802f02f (patch)
treed424fc71d20847c8a7c0314ff081f3d2ed9afbe4 /app/models/concerns
parentf277fa14094e5515e2317d2baa1fa0bfb95966da (diff)
downloadgitlab-ce-67d5ca9f9220e5572f3fa6d0d8290cd7b802f02f.tar.gz
Include the changes in issuable webhook payloads
Signed-off-by: Rémy Coutable <remy@rymai.me>
Diffstat (limited to 'app/models/concerns')
-rw-r--r--app/models/concerns/issuable.rb8
1 files changed, 7 insertions, 1 deletions
diff --git a/app/models/concerns/issuable.rb b/app/models/concerns/issuable.rb
index fc30d008dea..e8a6c37d0b9 100644
--- a/app/models/concerns/issuable.rb
+++ b/app/models/concerns/issuable.rb
@@ -256,13 +256,19 @@ module Issuable
participants(user).include?(user)
end
- def to_hook_data(user)
+ def to_hook_data(user, old_labels: [])
+ changes = previous_changes
+ if old_labels != labels
+ changes[:labels] = [old_labels.map(&:name), labels.map(&:name)]
+ end
+
hook_data = {
object_kind: self.class.name.underscore,
user: user.hook_attrs,
project: project.hook_attrs,
object_attributes: hook_attrs,
labels: labels.map(&:hook_attrs),
+ changes: changes,
# DEPRECATED
repository: project.hook_attrs.slice(:name, :url, :description, :homepage)
}