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

How to use Bamboo variables in an app's code

Samuel VanFossen May 11, 2021

In my app that's being built on Bamboo, I have the following code:

"build-aem": {
"builder": "@nrwl/workspace:run-commands",
"options": {
"commands": [
"command": "mvn --batch-mode release:update-versions -DdevelopmentVersion=${bamboo.buildNumber} -f ./apps/americas-aem/pom.xml"
"command": "mvn clean install -f ./apps/americas-aem/pom.xml"
"parallel": false

 What I'd like to happen is for the "${bamboo.buildNumber}" to be replaced with the actual Bamboo variable, as shown on this page:


Do you know of a way to make this happen?

1 answer

1 accepted

2 votes
Answer accepted
Eduardo Alvarenga
Atlassian Team
Atlassian Team members are employees working across the company in a wide variety of roles.
May 11, 2021

Hi @Samuel VanFossen , welcome to Atlassian Community!

All bamboo variables are accessible using ${bamboo.<variablename>} in configuration, or ${bamboo_<variablename>} in scripts.

tick In your specific case with NPM you should use system variables (scripts) instead, as Bamboo variables are not accessible within that node workspace.

As documented in System variables - Using variables in bash, you should:

Using variables in bash

Bamboo variables are exported as bash shell variables. All full stops (periods) are converted to underscores. For example, the variable is $bamboo_my_variable in bash. This is related to File Script tasks (not Inline Script tasks).

E.g. assuming you want to print Bamboo's bamboo.buildNumber with the following code:

"build-aem": {
  "executor": "@nrwl/workspace:run-commands",
  "options": {
    "command": "echo This is my Bamboo Build number: ${bamboo_buildNumber}"

and your bamboo.buildnumber = 123 -- it will produce the following output:

12-May-2021 12:26:20 
12-May-2021 12:26:20 > bamboo@0.0.0 nx /home/bamboo/bamboo-agent-home/xml-data/build-dir/MFP-MVFP-JSJ
12-May-2021 12:26:20 > nx "build-aem"
12-May-2021 12:26:20
12-May-2021 12:26:21
12-May-2021 12:26:21 > nx run bamboo:build-aem
12-May-2021 12:26:21 This is my Bamboo Build number: 123
12-May-2021 12:26:21
12-May-2021 12:26:21 ———————————————————————————————————————————————
12-May-2021 12:26:21
12-May-2021 12:26:21 > NX SUCCESS Running target "build-aem" succeeded

Additionally, if your code already contains specific variables that are meant to be portable and/or you cannot amend it with the the bamboo_ prefix, you can alternatively declare a value for those variables under Advanced Options -> Environment Values -- this time using bamboo variables, E.g.:

In Advanced Options -> Environment Values:


In code:

"build-aem": {
  "executor": "@nrwl/workspace:run-commands",
  "options": {
    "command": "echo This is my Bamboo Build number: ${BUILD_NUMBER}"
Samuel VanFossen May 12, 2021

Thanks! This worked for me.

Like Eduardo Alvarenga likes this

Suggest an answer

Log in or Sign up to answer
AUG Leaders

Atlassian Community Events