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

Earn badges and make progress

You're on your way to the next level! Join the Kudos program to earn points and save your progress.

Deleted user Avatar
Deleted user

Level 1: Seed

25 / 150 points

Next: Root


1 badge earned


Participate in fun challenges

Challenges come and go, but your rewards stay with you. Do more to earn more!


Gift kudos to your peers

What goes around comes around! Share the love by gifting kudos to your peers.


Rise up in the ranks

Keep earning points to reach the top of the leaderboard. It resets every quarter so you always have a chance!


Come for the products,
stay for the community

The Atlassian Community can help you and your team get more value out of Atlassian products and practices.

Atlassian Community about banner
Community Members
Community Events
Community Groups

Empty variables



I'm trying to use variables in a pipeline but, even though they are defined and have a value defined, pipeline treats them as empty.

I'm using a mix of repository and deployment variables, of which here is the list:

Repository vars:

  • EMAIL_PASSWORD (secured var)

Deployment vars:


Deployment vars do not display, where repository vars do.

Also, I tried to use the secured var EMAIL_PASSWORD var in a atlassian/email-notify:0.4.4 pipe but I always get an error, so I assume they are not interpreted well either.

Here's part of my pipeline

- step:
name: Test
- echo $EMAIL_HOST # displays well
- echo $EMAIL_PASSWORD # displays well
- echo $EMAIL_PASSWORD_UNSECURE # can't be used in a pipe
- echo $EMAIL_SUBJECT # does not display
- echo $APP_URL # does not display


3 answers

1 accepted

0 votes
Answer accepted

Problem was solved with the update of the email-notify package to version 0.4.5

Hi @Theodora Boudale thanks for your answer.

My previous message only mentioned part of the pipeline, here is the full version, in which,  as you can see, I am using a deployment name. 

# This is a sample build configuration for JavaScript.
# Check our guides at for more examples.
# Only use spaces to indent your .yml configuration.
# -----
# You can specify a custom docker image from Docker Hub as your build environment.
image: node:latest

- step: &env
name: Env
- step: &build-test
name: Build
- node
[... build steps]
- artifact-client.tar.gz
- step: &deploy-test
name: Deploy
[... deploy steps]

- step:
<<: *env
- cat .env.test > .env
- echo $EMAIL_PORT
- echo $EMAIL_HOST
- echo "A new version of has been deployed on ${APP_URL}"
- pipe: atlassian/email-notify:0.4.4
TO: ''
BODY: 'A new version of has been deployed on ${APP_URL}'
- .env
- step:
- step:
<<: *deploy-test
deployment: test


Error output

Traceback (most recent call last):  File "/", line 181, in <module>    pipe = EmailNotify(pipe_metadata=metadata, schema=schema, check_for_newer_version=True)  File "/usr/local/lib/python3.7/site-packages/bitbucket_pipes_toolkit/", line 239, in __init__    self.variables = self.validate()  File "/usr/local/lib/python3.7/site-packages/bitbucket_pipes_toolkit/", line 296, in validate    env[key] = yaml.safe_load(value)  File "/usr/local/lib/python3.7/site-packages/yaml/", line 162, in safe_load    return load(stream, SafeLoader)  File "/usr/local/lib/python3.7/site-packages/yaml/", line 114, in load    return loader.get_single_data()  File "/usr/local/lib/python3.7/site-packages/yaml/", line 43, in get_single_data    return self.construct_document(node)  File "/usr/local/lib/python3.7/site-packages/yaml/", line 47, in construct_document    data = self.construct_object(node)  File "/usr/local/lib/python3.7/site-packages/yaml/", line 92, in construct_object    data = constructor(self, node)  File "/usr/local/lib/python3.7/site-packages/yaml/", line 420, in construct_undefined    node.start_mark)yaml.constructor.ConstructorError: could not determine a constructor for the tag '$EMAIL_PASSWORD'  in "<unicode string>", line 1, column 1:    $EMAIL_PASSWORD    ^  

Hi @Terence Pires,

Thank you for your reply.

I can see in the yaml file that you posted that the deployment keyword is used for the following step:

- step:
<<: *deploy-test
deployment: test

The step that echoes the variables is different than the above step and it does not have the deployment keyword. Any deployment variables you have defined in the 'test' environment will be available only in the script of the step with 'deployment: test'.

I will reach out to the development team regarding the error you are seeing with the pipe and I'll get back to you when I hear from them.

Kind regards,

@Terence Pires hello!

I am seeing that your EMAIL_PASSWORD var cannot be loaded as yaml.


What I can say to debug it more:

- please, use the latest email-notify version 0.4.5, we did some changes and we wonder if it fixes it or not

- try this typing:  PASSWORD: '${EMAIL_PASSWORD}'

- if still fails, locally try in Python console or in any python environment with YAML your password and see if yaml error will happen.


Regards, Galyna

Hello Galyna,

Yes, updating to 4.4.5 solved my problem. I can now send an email using both repository and deployment vars.

thanks for your help

Like Theodora Boudale likes this

@Terence Pires then I know what bug it was. Thank you for raising this!

Have a great day!

Like Theodora Boudale likes this
0 votes

Hi @Terence Pires and welcome to the community.

Deployment variables are available only for deployment steps for the environment they were defined for.

E.g. if you have defined the deployment variables for the environment named staging, they will be available in a step that includes the following in its definition:

deployment: staging

The step in the part of your yml is missing that, which is why the deployment variables are not available.

Regarding the issue with the variable EMAIL_PASSWORD in atlassian/email-notify:0.4.4 pipe, I assume that you used this as a value of the PASSWORD variable of the pipe? Could you please attach here the full output of the pipe when you use this variable (please make sure to mask private/sensitive data in the output, if any, prior to sharing) so we can better help you?

Kind regards,

Suggest an answer

Log in or Sign up to answer

Atlassian Community Events