It's all about the answers!

Ask a question

RTC new changes could not be accepted/loaded to the sandbox when build with RTC integrated with Build Forge using JBE adapter


Don Yang (7.2k2194127) | asked May 04 '17, 9:37 p.m.
edited May 04 '17, 9:38 p.m.

In a RTC-Build Forge (using JBE adapter)integrated environment, when a build request completed successfully, occasionally the build was against old codes, JBE does not accept/load the new changesets.

The build forge log will show:

EXEC    A Java Runtime Environment (JRE) or Java Development Kit (JDK)
EXEC    must be available in order to run Jbe. No Java virtual machine
EXEC    was found after searching the following locations:
EXEC    C:\IBM-Tools\jdk6-ibm\jre\bin
EXEC    ENDBFBomPlaceholder47203300bomp2
RESULT    0

Because there is no JVM found, JBE will not accept/load any changesets into the sandbox. However,  Build Forge JBE adaptor is configured only to run if a return code 0 is generated, with the result 0 code returned, the build request will be placed to BF queue and get executed. This will actually build the old codes again and the result is not what we expect. In this case, we hope to see non-zero return code so that BF will not execute the build, is there any way to achieve that?

One answer



permanent link
Don Yang (7.2k2194127) | answered May 04 '17, 9:46 p.m.

There is a workaround to address this problem.

The JBEAdapter could be updated to capture the text response from the log to fail the step if needed.

ie:
        <match pattern="No Java virtual machine">
            <setenv name="Failure" value="TRUE" type="temp append\n" />
        </match>

With  above in the xml source for the Build Forge JBE adapter, it identifies the "No Java virtual machine" as error and stops the build which is what we want.

Your answer


Register or to post your answer.