Create
cancel
Showing results for 
Search instead for 
Did you mean: 
Sign up Log in

How can I trigger email notification on Pipeline build failure using the Email Notify pipe?

Doug Harriman January 6, 2020

How do I add the logic to a pipe to check the build exit code and only send email upon failure?

4 answers

1 accepted

4 votes
Answer accepted
Alexander Zhukov
Atlassian Team
Atlassian Team members are employees working across the company in a wide variety of roles.
January 10, 2020

Hi @Doug Harriman , 

You should be able to check the exist code of the pipeline step in the after-script section of the step https://bitbucket.org/blog/after-scripts-now-available-for-bitbucket-pipelines

 

pipelines:
  default:
    - step:
        name: Build and test
        script:
          - npm install
          - npm test
        after-script:
          - if [[ BITBUCKET_EXIT_CODE -eq 0 ]]; then exit 0; else echo "Step failed"
- pipe: atlassian/email-notify:0.3.8
variables:
USERNAME: 'myemail@example.com'
PASSWORD: $PASSWORD
FROM: 'myemail@example.com'
TO: 'example@example.com'
HOST: 'smtp.gmail.com'
BODY_PLAIN: "Build failed!"
          

The BITBUCKET_EXIT_CODE variable is available in the after-script. The value will be 0 of the step is successful and 1 if the step has failed. 

Radoslav Dragijev March 27, 2020

Hi,

 

We tried to implement this suggestion, but get the following error : 

if [[ BITBUCKET_EXIT_CODE -eq 0 ]]; then exit 0; else echo "Step failed";bash: /opt/atlassian/pipelines/agent/tmp/bashScript1288869279188383501.sh: line 96: syntax error: unexpected end of file

 

Any input would be appreciated.

 

Thanks

Like Georgi Vladov likes this
Goinnn May 12, 2020

Me too:

 

Fixes adding "fi":

 

if [[ BITBUCKET_EXIT_CODE -eq 0 ]]; then exit 0else echo "Step failed" fi
Like Radoslav Dragijev likes this
Deepak Rathour May 19, 2020

Did not work for me. Any other approach?

3 votes
Deleted user July 19, 2022

If anyone is still struggling to get the above snippet to work.

 

You can turn on notifications from the repo itself in Bitbucket.

 

1. Go the repository you want to monitor

2. On the Source tab, click the ellipsis and select Manage Notifications

3. Click Watch this repository

 

Now when a pipeline fails you should get an email alert 

0 votes
a2l December 30, 2020

I thought I should be posting my question as a separate one so moving it to a separate thread here How to configure email notifications using Microso... (atlassian.com).

Thanks.

 

0 votes
Deepak Rathour May 19, 2020

Hi @Alexander Zhukov ,

I am also getting same error like...

if [[ BITBUCKET_EXIT_CODE -eq 0 ]]; then exit 0; else echo "Step failed"bash: /opt/atlassian/pipelines/agent/tmp/bashScript4568911739432207606.sh: line 94: syntax error: unexpected end of file

 

Also i have tried @Goinnn 's trick, but i didn't work for me. Please help me.

Thanks.

Gurjeet October 6, 2020

I'm a bit late but try this:

if [[ BITBUCKET_EXIT_CODE -eq 0 ]]; then exit 0else echo "Step failed"; fi;

Also, did you get this implemented?

In the logs it says "Sending email..." and then "✖ Failed to send email to <TO-email>. Check your configuration settings."

What needs to be filled in 'username' and 'from' fields?

abdul Munaim May 27, 2021

Dear did you able to fix this issue 
because I am getting the same error 
"failed to send email check your configuration setting "

Navneet Kumar Maurya May 4, 2022

In the logs it says "Sending email..." and then "✖ Failed to send email to <TO-email>. Check your configuration settings."

 

getting same can some help if its working for them.

Suggest an answer

Log in or Sign up to answer
TAGS
AUG Leaders

Atlassian Community Events