Author |
Message
|
markneil |
Posted: Wed Mar 15, 2006 4:11 am Post subject: WMB V6 flow version in bar file |
|
|
Apprentice
Joined: 09 Sep 2003 Posts: 26
|
Hi,
in V6, if i tag a message flow project as a (CVS) version, and then add it to the bar file, that version number should be displayed against the cmf in the bar file, but it isn't getting picked up. the version column is blank.
is there a bug or am i missing something?
thanks
mark |
|
Back to top |
|
 |
wschutz |
Posted: Wed Mar 15, 2006 6:42 am Post subject: |
|
|
 Jedi Knight
Joined: 02 Jun 2005 Posts: 3316 Location: IBM (retired)
|
exactly what are you coding in your esql? This works for me:
-- $MQSI_VERSION = 1.9 MQSI$
btw..these also work:
-- $MQSI_Version = 1.9 MQSI$
-- $MQSI version = 1.9 MQSI$
In all cases, I see the version # in the bar file editor....
However, there is a problem when you deploy this to a broker. The properties pane of the msg flow doesn't update the keywords until you disconnect and reconnec the configmgr. _________________ -wayne |
|
Back to top |
|
 |
markneil |
Posted: Wed Mar 15, 2006 6:49 am Post subject: |
|
|
Apprentice
Joined: 09 Sep 2003 Posts: 26
|
Ah...I wasn't coding anything in the ESQL. I was expecting it to pick up the version information from the CVS version tag (Team/Tag as version...)
I thought that was the obviuos way for it to work....but apparently not?! |
|
Back to top |
|
 |
wschutz |
Posted: Wed Mar 15, 2006 6:54 am Post subject: |
|
|
 Jedi Knight
Joined: 02 Jun 2005 Posts: 3316 Location: IBM (retired)
|
Quote: |
variable string
Include the keyword value as a variable string in the ESQL file:
$MQSI_VERSION=$id$MQSI$
For this example, when the message flow source is extracted from the file repository, the repository’s plug-in has been configured to substitute the identifier $id$ with the actual version number. The identifier value that is required depends on the capability and configuration of the repository, and is not part of WebSphere Message Brokers
|
search the infocenter for "keywords" for other ways to specify version.....but, afaik, it doesn't happend automatically as you had hoped....
btw...let us know what you wind up doing, thanks  _________________ -wayne |
|
Back to top |
|
 |
markneil |
Posted: Wed Mar 15, 2006 6:58 am Post subject: |
|
|
Apprentice
Joined: 09 Sep 2003 Posts: 26
|
ok, i'll have a play. thanks for the steer. |
|
Back to top |
|
 |
mqmatt |
Posted: Wed Mar 15, 2006 9:28 am Post subject: |
|
|
 Grand Master
Joined: 04 Aug 2004 Posts: 1213 Location: Hursley, UK
|
Yes, that's right; this doesn't happen automatically.
The reason for this is that the Message Broker is not hooked directly into CVS - or any versioning system come to that. It relies on the versioning system being able to embed keywords inside extracted source - in this case, the $id$ tag.
The tag that the Message Broker is searching for at deployment time is just the $MQSI..MQSI$. ...or if you speak regexp: \$MQSI[\s_]?[\s]*([^=]+?)[\s]*=[\s]*(.*?)[\s]*MQSI\$
( )
-Matt |
|
Back to top |
|
 |
markneil |
Posted: Wed Mar 15, 2006 9:34 am Post subject: |
|
|
Apprentice
Joined: 09 Sep 2003 Posts: 26
|
Anyone know how I can get CVS to automatically insert this tag? |
|
Back to top |
|
 |
mqmatt |
Posted: Wed Mar 15, 2006 9:44 am Post subject: |
|
|
 Grand Master
Joined: 04 Aug 2004 Posts: 1213 Location: Hursley, UK
|
Just put $MQSI_CVSFileVersion=$id$MQSI$ (for example) somewhere in the resource that you wish to version. Or for a message flow, you could just right click inside the flow editor, select properties and add $id$ to the "Version" property.
When you next check out the file from CVS, $id$ will get expanded to contain the version information. Then when you deploy the message flow, the keyword 'CVSFileVersion' (or 'Version', or whatever) will get expanded to the expanded $id$ tag.
HTH
-Matt |
|
Back to top |
|
 |
markneil |
Posted: Wed Mar 15, 2006 9:51 am Post subject: |
|
|
Apprentice
Joined: 09 Sep 2003 Posts: 26
|
|
Back to top |
|
 |
wschutz |
Posted: Wed Mar 15, 2006 10:02 am Post subject: |
|
|
 Jedi Knight
Joined: 02 Jun 2005 Posts: 3316 Location: IBM (retired)
|
Matt, he wants to see it displayed in the bar file editor, so methinks it needs to be "$MQSI_Version" or "$MQSI Version", no? $MQSI_CVSFileVersion doesn't showup in the bar file editor "Content" panel. _________________ -wayne |
|
Back to top |
|
 |
mqmatt |
Posted: Wed Mar 15, 2006 10:16 am Post subject: |
|
|
 Grand Master
Joined: 04 Aug 2004 Posts: 1213 Location: Hursley, UK
|
Yes, you're right. Using a keyword other than VERSION means that the version won't be displayed in the BAR file editor, only in the deployed objects properties in the Admin perspective.
However, I wouldn't recommend using the 'VERSION' keyword for message flows at all, because when you right click in the message flow editor and select 'Properties', setting the 'Version' property there actually results in "$MQSI_VERSION=..." being added to the cmf file. So if you happen to add that same keyword elsewhere in the file, you'll have two (potentially different) keywords with the same 'key', and only one will shown to you for that message flow.
Regards
-Matt |
|
Back to top |
|
 |
markneil |
Posted: Wed Mar 15, 2006 12:30 pm Post subject: |
|
|
Apprentice
Joined: 09 Sep 2003 Posts: 26
|
ok, i get how it works now!
so is it ok to set all the mqsi file types (.msgflow etc) as ASCII instead of binary? This won't screw anything up?
cheers
mark |
|
Back to top |
|
 |
mqmatt |
Posted: Fri Mar 17, 2006 2:56 am Post subject: |
|
|
 Grand Master
Joined: 04 Aug 2004 Posts: 1213 Location: Hursley, UK
|
Glad it's working now.
markneil wrote: |
so is it ok to set all the mqsi file types (.msgflow etc) as ASCII instead of binary? This won't screw anything up? |
The answer is *probably*, because all the file types are XML based; but why would you want to do this?
-Matt |
|
Back to top |
|
 |
markneil |
Posted: Fri Mar 17, 2006 4:24 am Post subject: |
|
|
Apprentice
Joined: 09 Sep 2003 Posts: 26
|
So that the CVS ASCII keyword expansion works, to give me the version info. It doesn't work if the files are binary, right?
Actually since then i found some instructions in the help system to add the WMB file types as ASCII, so guess it's ok.
cheers
mark |
|
Back to top |
|
 |
markneil |
Posted: Fri Mar 17, 2006 5:18 am Post subject: |
|
|
Apprentice
Joined: 09 Sep 2003 Posts: 26
|
Quick update:
I followed the suggestion to put $Id$ in the flow 'version' (right-click on flow background, properties) and the message set version (properties, documentation on the message set) and all works perfectly. The version appears in the BAR and the exec group.
One slight funny:
I deployed an initial version of a flow, and then deployed a new version of it by re-adding it to the same BAR file (WITHOUT deleting the flow from the BAR first) and deploying. Although the version number in the exec group was updated to the new flow's version it was actually still running the OLD version of the flow! I had to delete the flow from the BAR, then re-add it and deploy it to get it to deploy the new version. A bit bizarre.
Never mind, I'm happy now  |
|
Back to top |
|
 |
|