Skip to content
Snippets Groups Projects
Commit 7ef7135a authored by Kamil Trzcińśki's avatar Kamil Trzcińśki
Browse files

Merge branch 'fix-slack-pipeline-event' into 'master'

Fix pipeline author for Slack and use pipeline id for pipeline link

[Context](https://gitlab.slack.com/archives/runner-builds/p1479238493000018)

Pipeline Slack message:

>  gitlab-org/gitlab-ci-multi-runner: Pipeline 8bed2a3b of fix/handle-failed-state-while-patching-trace branch by  failed in 1389 seconds 

Quotes:

> @godfat Take a look at these notifications, they seems to be missing author and should probably use Pipeline ID instead of SHA

See merge request !7506
parents e4c86bc8 51db4530
No related branches found
No related tags found
No related merge requests found
class SlackService
class PipelineMessage < BaseMessage
attr_reader :sha, :ref_type, :ref, :status, :project_name, :project_url,
attr_reader :ref_type, :ref, :status, :project_name, :project_url,
:user_name, :duration, :pipeline_id
 
def initialize(data)
pipeline_attributes = data[:object_attributes]
@sha = pipeline_attributes[:sha]
@ref_type = pipeline_attributes[:tag] ? 'tag' : 'branch'
@ref = pipeline_attributes[:ref]
@status = pipeline_attributes[:status]
Loading
Loading
@@ -14,7 +13,7 @@ class SlackService
 
@project_name = data[:project][:path_with_namespace]
@project_url = data[:project][:web_url]
@user_name = data[:commit] && data[:commit][:author_name]
@user_name = data[:user] && data[:user][:name]
end
 
def pretext
Loading
Loading
@@ -73,7 +72,7 @@ class SlackService
end
 
def pipeline_link
"[#{Commit.truncate_sha(sha)}](#{pipeline_url})"
"[##{pipeline_id}](#{pipeline_url})"
end
end
end
---
title: Fix pipeline author for Slack and use pipeline id for pipeline link
merge_request: 7506
author:
Loading
Loading
@@ -15,7 +15,7 @@ describe SlackService::PipelineMessage do
},
project: { path_with_namespace: 'project_name',
web_url: 'example.gitlab.com' },
commit: { author_name: 'hacker' }
user: { name: 'hacker' }
}
end
 
Loading
Loading
@@ -48,7 +48,7 @@ describe SlackService::PipelineMessage do
 
def build_message(status_text = status)
"<example.gitlab.com|project_name>:" \
" Pipeline <example.gitlab.com/pipelines/123|97de212e>" \
" Pipeline <example.gitlab.com/pipelines/123|#123>" \
" of <example.gitlab.com/commits/develop|develop> branch" \
" by hacker #{status_text} in #{duration} #{'second'.pluralize(duration)}"
end
Loading
Loading
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment