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

To use Bamboo Customized Plan variables in pom.xml

Vandana Arora
I'm New Here
I'm New Here
Those new to the Atlassian Community have posted less than three times. Give them a warm welcome!
September 26, 2018

I have 3 modules in my Project and 3 testng files for which different tests should invoke. I want to choose testng_ModuleName.xml as per Bamboo variable (bamboo.module=ModuleName) value while running the customized plan in Bamboo. In pom.xml , ${bambooModule}  is used as below:

<suiteXmlFiles>
<suiteXmlFile>${bambooModule}</suiteXmlFile>
</suiteXmlFiles>

  Maven goal in Bamboo job:

test -DbambooModule=testng_${bamboo.module}.xml

 

It gives below error:

\bamboo-home\xml-data\build-dir\JOB1\ProjectName\testng_${bamboo.module}.xml is not a valid file

 

Not sure where i'm wrong. Can anyone please help.

1 answer

1 accepted

2 votes
Answer accepted
rsperafico
Atlassian Team
Atlassian Team members are employees working across the company in a wide variety of roles.
September 26, 2018

Hi @Vandana Arora,

Thank you for your inquire.

Here is an example where artifactId is receiving a Bamboo Variable

<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
    <modelVersion>4.0.0</modelVersion>
    <groupId>my.package</groupId>
    <artifactId>sample-${bamboo_buildNumber}</artifactId>
    <packaging>jar</packaging>
    <name>Sample</name>
    <version>1.0.0</version>
    <dependencies>
        <dependency>
            <groupId>junit</groupId>
            <artifactId>junit</artifactId>
            <version>4.11</version>
        </dependency>
    </dependencies>
    <build>
     <sourceDirectory>src</sourceDirectory>
     <plugins>
         <plugin>
             <artifactId>maven-compiler-plugin</artifactId>
             <version>3.2.1</version>
             <configuration>
                 <source>1.8</source>
                 <target>1.8</target>
             </configuration>
         </plugin>
     </plugins>
   </build>
</project>

Whereas in the build log you would find:

...bamboo_planRepository_name=Maven 3.x\nbamboo_buildNumber=1...

Please, notice the _ (underscore) used instead of . (dot) when calling the variable.

Kind regards,

Rafael

Vandana Arora
I'm New Here
I'm New Here
Those new to the Atlassian Community have posted less than three times. Give them a warm welcome!
September 28, 2018

Thanks for your Reply @rsperafico.. it worked for me now.

I have updated pom.xml as:

<suiteXmlFiles>
<suiteXmlFile>testng${bamboo_module}.xml</suiteXmlFile>
</suiteXmlFiles>

and the maven goal as:

 -Dbamboo_module=${bamboo.module} test

and my Build variable is :

module= some value

Like Steffen Opel _Utoolity_ likes this

Suggest an answer

Log in or Sign up to answer
TAGS
AUG Leaders

Atlassian Community Events