Jazz Forum Welcome to the Jazz Community Forum Connect and collaborate with IBM Engineering experts and users

RTC 3.0 and BF 7.1.2: BUILD phase error

I need help setting up an integration between Build Forge and RTC. I am running into an error: "Example build" does not include a configuration element for the BUILD phase. The Jazz build engine does not support a generic build definition with no builder." Below is how I can reproduce this error:

I have set up a basic "Example Project" project in Build Forge which I can confirm runs correctly. I created a user "build" in Build Forge and gave it full permissions and confirmed it could kick of the project.

I then created a user "build" in RTC and made sure it had a build system license and was a JazzUsers. I added the build user to the RTC project (scrum process) as a team member. I created a engine "BF" in RTC and entered in the "build" user information and confirmed it could successfully talk to Build Forge:

Testing, please wait...
Result: Success
Ping result: *******:3966
Login: build
User name: build


Next, I created an "Example Build" build definition using the Build Forge template. I set the supported build engine to "BF", selected my "Example Project", selected a workspace which was owned by user "build", and set the load directory to /RTC/ (linux).

I created a build engine script build.sh:

#!/bin/bash
cd /opt/IBM/TeamConcertBuild/buildsystem/buildengine/eclipse
./jbe -repository https://*********/jazz -engineId BF -userId build -pass build -sleeptime 1 &


The output of that script is:

2010-11-30 20:20:32 [Jazz build engine] Running build loop...
2010-11-30 20:20:32 [Jazz build engine] Waiting for request...
2010-11-30 20:21:06 [Jazz build engine] Found a user request for build definition "Example build".


This is the error I get in the build record log file after requesting a build:

com.ibm.team.build.common.TeamBuildException: Request for build "Example build" does not include a configuration element for the BUILD phase. The Jazz build engine does not support a generic build definition with no builder.
at com.ibm.team.build.internal.engine.BuildLoop.validateBuilder(BuildLoop.java:935)
at com.ibm.team.build.internal.engine.BuildLoop.runLoop(BuildLoop.java:327)
at com.ibm.team.build.internal.engine.BuildLoop$1.run(BuildLoop.java:207)
at java.lang.Thread.run(Thread.java:811)


Build Forge has no record of receiving the build request.

Build Forge: 7.1.2 on SLES 10.3 with DB2 9.5.3 x86
Team Concert Server: 3.0 on SLES 10.3 with DB2 9.5.3 x86
Team Concert Client: 3.0 on Ubuntu 10.04 x86

0 votes



4 answers

Permanent link
Fixed. The problem is you *should not* create a build engine script! The RTC Server automatically "kicks off" Build Forge engine requests.

Thanks goes to Peter Birk!

It would be nice if the build engine toolkit would validate whether we are requesting an valid build ID -- that is, any Build Forge engine ID should be considered invalid and at least throw a warning.

0 votes


Permanent link
That's correct, JBE should not be invoked on Build Forge or Build Agent engines.
The delegation to BF / BA is done as a periodic task on the server.

BF/BA may invoke JBE as a one-off as needed for the steps (e.g. to do the SCM accept/fetch), but the JBE does not need to be run as a daemon for these scenarios.

I've filed 141183: JBE should check engine type to avoid confusion when used on BF and BA engines.

0 votes


Permanent link
I am experiencing the same issue.How exactly did you resolve the problem? I'm using RTC 3.0 and BF 7.1.2 ifix01. I kicked off jbe manually before I requested the build from RTC Client.

Here is JBE output:


root@duke:/opt/install/ibm/rtcbuild/buildsystem/buildengine/eclipse# ./jbe -repository https://fia:9443/ccm -userId rtcadmin -pass rtcadmin -engineId buildengine
2011-01-13 12:08:26 [Jazz build engine] Running build loop...
2011-01-13 12:08:26 [Jazz build engine] Waiting for request...
2011-01-13 12:08:46 [Jazz build engine] Found a user request for build definition "AssetManager build".



Here is the build log


om.ibm.team.build.common.TeamBuildException: Request for build "AssetManager build" does not include a configuration element for the BUILD phase. The Jazz build engine does not support a generic build definition with no builder.
at com.ibm.team.build.internal.engine.BuildLoop.validateBuilder(BuildLoop.java:935)
at com.ibm.team.build.internal.engine.BuildLoop.runLoop(BuildLoop.java:327)
at com.ibm.team.build.internal.engine.BuildLoop$1.run(BuildLoop.java:207)
at java.lang.Thread.run(Thread.java:811)


BF does not contain any steps to kick off JBE. Could you let me know how you resolved the issue?

Thanks,
Sefa

0 votes


Permanent link
For a Build Forge build definition, you want to let Build Forge pick it up, not JBE.
So JBE should not be run manually for Build Forge build engines. Instead, the Build Forge project corresponding to the build definition may invoke JBE as a one-off, if needed, e.g. to do the Jazz SCM phase or even run the main steps of the build (useful when migrating a legacy JBE-based build to Build Forge).

The JazzJBE.xml adapter is included in Build Forge 7.1.2. For earlier versions, it can be found in the wiki pages covering the new BF integration support in 3.0 at
https://jazz.net/wiki/bin/view/Main/RationalBuildForge

For example, see "JazzJBE.xml Build Forge Adapter" at
https://jazz.net/wiki/bin/view/Main/RationalBuildForge/RTC3M6BFIntegrationEnhancements

"Configuring a Build Forge Build Engine and Definition" at
https://jazz.net/wiki/bin/view/Main/RationalBuildForge/RTC3M7BFIntegrationEnhancements

and "Ability to invoke legacy RTC build definition using Build Forge project and engine" at
https://jazz.net/wiki/bin/view/Main/RationalBuildForge/RTC3M8RC0RC1BFIntegrationEnhancements

I realize this information needs to be made more accessible. We're working on an article that gathers this all in one place. It is in review and will be published soon.

0 votes

Your answer

Register or log in to post your answer.

Dashboards and work items are no longer publicly available, so some links may be invalid. We now provide similar information through other means. Learn more here.

Search context
Follow this question

By Email: 

Once you sign in you will be able to subscribe for any updates here.

By RSS:

Answers
Answers and Comments
Question details

Question asked: Nov 30 '10, 9:47 p.m.

Question was seen: 7,984 times

Last updated: Nov 30 '10, 9:47 p.m.

Confirmation Cancel Confirm