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

Automation of dependency build

Hi all,

I've been working on some automation scripts (ANT scripts with custom ant tasks) for and IBMi dependency build that will do the following:

1. Find incoming changes
2. Check the connected work items and their status.
3. Accept changes based on the wanted work item status.
4. set work items in "build in progress" status
5. execute the dependency build, package and deploy
6. set work items in "deployed to dev system" or "build failed"
7. deliver changes to target stream

I'm doing the build between two stream, so I have

"Source stream" ----> <build> ------> "target stream"

This could be

"Development stream" -----> <build> ------> "Development environment stream"

This ANT script will then "set up" the workspace for the dependency build to start. But I have some issues with this.

a. The dependency builds seems to have "accept incoming changes" as mandatory. I cannot disable it. This will ruin my work item filtering.

b. The dependency build will do "source code scanning" on the current flow target. Will it ruin the build, if I put the flow target to the "target stream"? I mean, will it then do scanning on the source code without my new changes? Why doesn't it do scanning on it's build workspace with the new changes?

I you have any comments please pitch in.

Thanks,
Morten.

0 votes

Comments

Anybody have any comments?

I'm thinking, the only way to do the above would be to have a "filtering mechanism" which would deliver work item changes to a temporary stream, that the build would use as flow target (fetch it's changes from).

Basically, it would solve my problems, if I could get rid of the "automatically accept incoming changes before build". I want to manually set the workspace up before the build... any ideas anyone?


Accepted answer

Permanent link
Hi Morten,

One way to control the scope of a dependency build is through the use of subsets.  Would this help?

Here is the subset information in the current product documentation:
https://jazz.net/help-dev/clm/topic/com.ibm.team.build.doc/topics/t_ee_buildsubset_overview.html

An API, added in 5.0, allows programmatic creation of a build subset:
https://jazz.net/jazz/web/projects/Rational%20Team%20Concert#action=com.ibm.team.workitem.viewWorkItem&id=258710
Morten Madsen selected this answer as the correct answer

0 votes


2 other answers

Permanent link
 Hi Morten,
Dependency Build needs to accept all changes from the stream to the build workspace to avoid gap/conflict and calculate files need to be rebuilt.

Perhaps what you want is to automatically create subset based on your work items and use that subset in the build so that your build only scopes to the files in the subset.

1 vote


Permanent link
Hi both, thanks for your answers. I'll look into the subsets and see how easy they are to use.

Temporarily I've decided to go for an intermediate stream, which will (at each new build) rolled back to last successful build snapshot (together with the build workspace). A filtering mechanism will then scan for new changes and for the associated work items and deliver these changes to the intermediate stream, before the dependency build is executed. It seems to work.... for now.

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
× 10,943
× 562
× 63
× 21

Question asked: May 28 '15, 5:38 a.m.

Question was seen: 4,733 times

Last updated: Jun 09 '15, 3:36 a.m.

Confirmation Cancel Confirm