How do I add the logic to a pipe to check the build exit code and only send email upon failure?
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.
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
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
Me too:
Fixes adding "fi":
if [[ BITBUCKET_EXIT_CODE -eq 0 ]]; then exit 0; else echo "Step failed" fi
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
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
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
Thank you so much! That is such a weird place to put that setting, I never would have found it.
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
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.
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
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.
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
I'm a bit late but try this:
if [[ BITBUCKET_EXIT_CODE -eq 0 ]]; then exit 0; else 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?
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
Dear did you able to fix this issue
because I am getting the same error
"failed to send email check your configuration setting "
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
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.
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.