It's all about the answers!

Ask a question

Confused about SCM root folder creation in automated build


Bill Higgins (4562223) | asked Jun 04 '11, 9:47 a.m.
JAZZ DEVELOPER
Hi, I am running an automated build that fetches code from SCM and builds using a custom bash script. Basically I am confused why my SCM root folder is not getting created in the team.scm.fetchDestination. Let me explain my setup.

I have a stream called 'DevOps' with one component (also called 'DevOps'). It contains two Eclipse projects:

- com.ibm.devops.site
- com.ibm.tivoli.ops

I have a build definition that generates a web site from the contents of the first project (com.ibm.devops.site). It uses a custom repository workspace and a single load rule:

RootFolderName=/com.ibm.devops.site


The build definition's load directory is set to:

/home/jazz/jbe/working/devops.site


When I run the build, the load directory ends up with the contents of the com.ibm.devops.site project, but not the project folder itself. This is not causing any problems, but it will when I start to add additional folders.

Could you please explain what's happening here and if there's a way that the load directory will end up with the com.ibm.devops.site project folder rather than just its contents?

3 answers



permanent link
Brent Ulbricht (2.5k11) | answered Jun 06 '11, 10:18 a.m.
JAZZ DEVELOPER
Hi, I am running an automated build that fetches code from SCM and builds using a custom bash script. Basically I am confused why my SCM root folder is not getting created in the team.scm.fetchDestination. Let me explain my setup.

I have a stream called 'DevOps' with one component (also called 'DevOps'). It contains two Eclipse projects:

- com.ibm.devops.site
- com.ibm.tivoli.ops

I have a build definition that generates a web site from the contents of the first project (com.ibm.devops.site). It uses a custom repository workspace and a single load rule:

RootFolderName=/com.ibm.devops.site


The build definition's load directory is set to:

/home/jazz/jbe/working/devops.site


When I run the build, the load directory ends up with the contents of the com.ibm.devops.site project, but not the project folder itself. This is not causing any problems, but it will when I start to add additional folders.

Could you please explain what's happening here and if there's a way that the load directory will end up with the com.ibm.devops.site project folder rather than just its contents?


Hi,

The RootFolderName directive will cause the JBE to load the contents of the directory specified and any of it subfolders. In your case, it is loading the contents of com.ibm.devops.site and its subfolders. The only options I can think of to get a 'com.ibm.devops.site' directory would be to create another folder prior to 'com.ibm.devops.site' to signify the different code and change the RootFolderName or to create separate components and not use any load rules.

Brent Ulbricht
Developer/Lead - RTC Build

permanent link
Brent Ulbricht (2.5k11) | answered Jun 06 '11, 2:29 p.m.
JAZZ DEVELOPER
Hi, I am running an automated build that fetches code from SCM and builds using a custom bash script. Basically I am confused why my SCM root folder is not getting created in the team.scm.fetchDestination. Let me explain my setup.

I have a stream called 'DevOps' with one component (also called 'DevOps'). It contains two Eclipse projects:

- com.ibm.devops.site
- com.ibm.tivoli.ops

I have a build definition that generates a web site from the contents of the first project (com.ibm.devops.site). It uses a custom repository workspace and a single load rule:

RootFolderName=/com.ibm.devops.site


The build definition's load directory is set to:

/home/jazz/jbe/working/devops.site


When I run the build, the load directory ends up with the contents of the com.ibm.devops.site project, but not the project folder itself. This is not causing any problems, but it will when I start to add additional folders.

Could you please explain what's happening here and if there's a way that the load directory will end up with the com.ibm.devops.site project folder rather than just its contents?


Hi,

The RootFolderName directive will cause the JBE to load the contents of the directory specified and any of it subfolders. In your case, it is loading the contents of com.ibm.devops.site and its subfolders. The only options I can think of to get a 'com.ibm.devops.site' directory would be to create another folder prior to 'com.ibm.devops.site' to signify the different code and change the RootFolderName or to create separate components and not use any load rules.

Brent Ulbricht
Developer/Lead - RTC Build

I believe 85020: scm load should provide an option to load artifacts with full path information is an enhancement request along these lines.

Brent Ulbricht
Developer/Lead - RTC Build

permanent link
Bill Higgins (4562223) | answered Jun 06 '11, 2:37 p.m.
JAZZ DEVELOPER
Thanks very much for your answers Brent. I've subscribed to that work item.

Your answer


Register or to post your answer.