Author |
Message
|
ronron1 |
Posted: Thu Aug 06, 2015 4:19 am Post subject: HowTo extract the mqsicreatebar command executed in Toolkit? |
|
|
Newbie
Joined: 06 Aug 2015 Posts: 2
|
We are considering options for managing bar files over source control, so each one of our developers will have the exact structure of bar files. The solution we found is to create a script that will read the list of resources that each bar should contain from a text file (which will be shared in source control). The script will generate the bar files accordingly via mqsicreatebar.
Unfortunately we are having trouble understanding the exact parameters that should be passed to mqsicreatebar command, due to complex dependecies between projects. Is there a way to extract the command being executed by the Broker Toolkit when clicking on "Build and Save Broker Archive"? We found a way to see the mqsipackagebar command, but it doesn't meet our requirements since it requires some flows to be converted to subflow and we do not want that.
Alternatively, if you see any better/simpler solution for sharing bars among developers, feel free to suggest. |
|
Back to top |
|
 |
Vitor |
Posted: Thu Aug 06, 2015 4:36 am Post subject: Re: HowTo extract the mqsicreatebar command executed in Tool |
|
|
 Grand High Poobah
Joined: 11 Nov 2005 Posts: 26093 Location: Texas, USA
|
ronron1 wrote: |
We are considering options for managing bar files over source control, so each one of our developers will have the exact structure of bar files. |
Why would a developer need the exact structure of the bar file? What value does that add? What use would a developer put it to?
ronron1 wrote: |
The solution we found is to create a script that will read the list of resources that each bar should contain from a text file (which will be shared in source control). The script will generate the bar files accordingly via mqsicreatebar. |
This is a lot different to "the structure of the bar file" - this is "the list of dependencies needed to compile a project". Again, if a developer is working on a flow, they should have the needed resources linked within the Toolkit or they're going to have missing references.
ronron1 wrote: |
Unfortunately we are having trouble understanding the exact parameters that should be passed to mqsicreatebar command, due to complex dependecies between projects. |
What "complex dependencies"? If you're having trouble working out the dependencies, does this not indicate that your structure needs rationalization? I like reusable code as much as the next man but you can take it too far?
ronron1 wrote: |
Is there a way to extract the command being executed by the Broker Toolkit when clicking on "Build and Save Broker Archive"? |
No, and the fact IBM didn't build it indicates how useful IBM thought it would be.
ronron1 wrote: |
Alternatively, if you see any better/simpler solution for sharing bars among developers, feel free to suggest. |
I still don't understand why you're sharing bar files among developers. If you have a source code repository (and you admit that you do) why are you not sharing the source, which is of more use? What are these developers doing with the bar files?  _________________ Honesty is the best policy.
Insanity is the best defence. |
|
Back to top |
|
 |
smdavies99 |
Posted: Thu Aug 06, 2015 5:42 am Post subject: Re: HowTo extract the mqsicreatebar command executed in Tool |
|
|
 Jedi Council
Joined: 10 Feb 2003 Posts: 6076 Location: Somewhere over the Rainbow this side of Never-never land.
|
Vitor wrote: |
I still don't understand why you're sharing bar files among developers. If you have a source code repository (and you admit that you do) why are you not sharing the source, which is of more use? What are these developers doing with the bar files?  |
Some good points but why don't you put the bar file into SVN/Git/whatever. That solves the sharing thing.
Sharing amongst devs might be needed (for example) if the output from Dev 1's flow is needed by the input to Dev 2's flow. _________________ WMQ User since 1999
MQSI/WBI/WMB/'Thingy' User since 2002
Linux user since 1995
Every time you reinvent the wheel the more square it gets (anon). If in doubt think and investigate before you ask silly questions. |
|
Back to top |
|
 |
mqjeff |
Posted: Thu Aug 06, 2015 5:45 am Post subject: Re: HowTo extract the mqsicreatebar command executed in Tool |
|
|
Grand Master
Joined: 25 Jun 2008 Posts: 17447
|
Vitor wrote: |
ronron1 wrote: |
Is there a way to extract the command being executed by the Broker Toolkit when clicking on "Build and Save Broker Archive"? |
No, and the fact IBM didn't build it indicates how useful IBM thought it would be. |
You mean, other than the text box at the bottom of the BAR File Editor? |
|
Back to top |
|
 |
Vitor |
Posted: Thu Aug 06, 2015 5:58 am Post subject: Re: HowTo extract the mqsicreatebar command executed in Tool |
|
|
 Grand High Poobah
Joined: 11 Nov 2005 Posts: 26093 Location: Texas, USA
|
mqjeff wrote: |
Vitor wrote: |
ronron1 wrote: |
Is there a way to extract the command being executed by the Broker Toolkit when clicking on "Build and Save Broker Archive"? |
No, and the fact IBM didn't build it indicates how useful IBM thought it would be. |
You mean, other than the text box at the bottom of the BAR File Editor? |
Which version of the Toolkit is that, and which option do you click to make it appear? _________________ Honesty is the best policy.
Insanity is the best defence. |
|
Back to top |
|
 |
Vitor |
Posted: Thu Aug 06, 2015 6:01 am Post subject: Re: HowTo extract the mqsicreatebar command executed in Tool |
|
|
 Grand High Poobah
Joined: 11 Nov 2005 Posts: 26093 Location: Texas, USA
|
smdavies99 wrote: |
Sharing amongst devs might be needed (for example) if the output from Dev 1's flow is needed by the input to Dev 2's flow. |
So much for unit testing. Also the OP describes the developers as:
ronron1 wrote: |
each one of our developers will have the exact structure of bar files |
i.e. they're not deploying them, they're examining them. _________________ Honesty is the best policy.
Insanity is the best defence.
Last edited by Vitor on Thu Aug 06, 2015 6:10 am; edited 1 time in total |
|
Back to top |
|
 |
mqjeff |
Posted: Thu Aug 06, 2015 6:01 am Post subject: Re: HowTo extract the mqsicreatebar command executed in Tool |
|
|
Grand Master
Joined: 25 Jun 2008 Posts: 17447
|
|
Back to top |
|
 |
Vitor |
Posted: Thu Aug 06, 2015 6:13 am Post subject: Re: HowTo extract the mqsicreatebar command executed in Tool |
|
|
 Grand High Poobah
Joined: 11 Nov 2005 Posts: 26093 Location: Texas, USA
|
Things you learn....
Shows how much time I spend manually editing bar files these days. _________________ Honesty is the best policy.
Insanity is the best defence. |
|
Back to top |
|
 |
Armageddon123 |
Posted: Thu Aug 06, 2015 6:43 am Post subject: |
|
|
Acolyte
Joined: 11 Feb 2014 Posts: 61
|
my 2 cents
I was doing same whole last week for several teams.
Steps i followed are
1. Open the .project of the main flow project. you will get the dependencies.
Put the msgflow projects and java projects from that list to the -p paramater of mqsicreatebar command.
put the LIBs from that list to the -l parameter. Put the main message flow names (you have to open the flow project in toolkit to get that.) under -o paramter. |
|
Back to top |
|
 |
ganesh |
Posted: Thu Aug 06, 2015 9:13 am Post subject: |
|
|
Master
Joined: 18 Jul 2010 Posts: 294
|
Armageddon123 wrote: |
my 2 cents
I was doing same whole last week for several teams.
Steps i followed are
1. Open the .project of the main flow project. you will get the dependencies.
Put the msgflow projects and java projects from that list to the -p paramater of mqsicreatebar command.
put the LIBs from that list to the -l parameter. Put the main message flow names (you have to open the flow project in toolkit to get that.) under -o paramter. |
Differentiating project types from the .project file(library vs application ) will only work if you are following a common naming naming standards. |
|
Back to top |
|
 |
ronron1 |
Posted: Sun Aug 09, 2015 11:30 pm Post subject: |
|
|
Newbie
Joined: 06 Aug 2015 Posts: 2
|
Thank you all for your helpful replies, let me explain my situation again:
The entire project consists of multiple execution groups, each containing several message flows.
Each developer uses his own broker, and therefore it's his responsibility to keep his broker updated with the latest versions of each message flow in each of the execution groups. Meaning, when some other developer finishes his flow, all other developers should accept his change set and manually deploy it to their brokers. We would like to automate this process.
The entire code (flows, esql, java...) is stored in version control, but not the bar files - we think that storing them in version control would be a bad idea: solving conflicts would be difficult (e.g. two developers add a new flow to the same bar file at the same time), and it is generally as storing another "copy" of the code.
To conclude, we need a good solution for sharing the bar files among our developers. What would you suggest? |
|
Back to top |
|
 |
Vitor |
Posted: Mon Aug 10, 2015 4:33 am Post subject: |
|
|
 Grand High Poobah
Joined: 11 Nov 2005 Posts: 26093 Location: Texas, USA
|
ronron1 wrote: |
To conclude, we need a good solution for sharing the bar files among our developers. What would you suggest? |
As I said up front, why are you sharing bar files? If the source code is in the repository (and you said it was) why not share that?
Here's a point:
ronron1 wrote: |
solving conflicts would be difficult (e.g. two developers add a new flow to the same bar file at the same time) |
Firstly, a bar file has not relationship with the code it contains. You can call it foo.bar for all the good it gets you. So if you're worried about conflicts, get the developers to user their user id as a bar file name.
Secondly, if you're building the bar files from the source code repository then the problem of conflicts goes away because the repository fixes them. You're exactly right when you say:
ronron1 wrote: |
all other developers should accept his change set and manually deploy it to their brokers. We would like to automate this process. |
So build a bar file (or files at your choice) directly from the source code repository using the tool of your choice, and deploy the bar files to the developer's brokers. Alternatively build them from the source and (as my associate suggested) store them in the repository if you're worried about overriding work in progress at the developer end. _________________ Honesty is the best policy.
Insanity is the best defence. |
|
Back to top |
|
 |
|