Author |
Message
|
MatthewDCampbell |
Posted: Tue Sep 29, 2020 1:07 am Post subject: Integration Toolkit ignore source controll |
|
|
Novice
Joined: 29 Sep 2020 Posts: 21
|
Using 9.0.0.2 of Integration Toolkit...
Grand total of 2 days experience with the integration bus. One thing I would like to try to avoid is having unnecessary files part of the source control (e.g. git). Just opening the Toolkit the workspace both updates a series of .metadata plugins and creates several new files. Updates under:
.metadata/.plugins/com.ibm.etools.references/ (18 files)
.metadata/.plugins/org.eclipse.core.runtime/ (2)
.metadata/.plugins/com.ibm.etools.mft.builder.esqlobj/ (1)
and newly created solely on:
.metadata/.plugins/com.ibm.etools.mft.builder.esqlobj (13)
So 3 plugin maps where there is an unclear effect on the actual development code (i.e. flows, esql etc.). Any guidelines on how to source control bus code? Or just track everything? |
|
Back to top |
|
 |
abhi_thri |
Posted: Tue Sep 29, 2020 2:57 am Post subject: |
|
|
 Knight
Joined: 17 Jul 2017 Posts: 516 Location: UK
|
hi...why do you need to save the whole workspace to source control? usually the iib source code is saved at the project level which means apart from the flows/esql etc the only extra artefact is the .project file. |
|
Back to top |
|
 |
MatthewDCampbell |
Posted: Tue Sep 29, 2020 3:07 am Post subject: |
|
|
Novice
Joined: 29 Sep 2020 Posts: 21
|
@abhi_thri That is the question.
Already tried copying only the application + library folders which contain the .project file, esql, msgflow and bar files then moving these folders to a temporary directory that Integration Toolkit opens but the application + library are not automatically found. So there is something more that identifies "projects". Also it is unclear if there are other files necessary for Eclipse or Toolkit to work properly (i.e. fishing after guidelines or experience taking the minimal to a source control). |
|
Back to top |
|
 |
MatthewDCampbell |
Posted: Tue Sep 29, 2020 3:34 am Post subject: |
|
|
Novice
Joined: 29 Sep 2020 Posts: 21
|
From what I can tell if I keep the following .metadata/.plugins maps:
com.ibm.etools.mft.bar -- BAR definition
com.ibm.etools.mft.broker.runtime -- Integration nodes
org.eclipse.core.resources - Workspace links
org.eclipse.ui.workbench - *More workspace metadata but can be deleted without any apparent negative effect
And delete everything else the applications + libraries get loaded (despite the default splash page showing). However, this is trail and error instead of guidelines. |
|
Back to top |
|
 |
Vitor |
Posted: Tue Sep 29, 2020 4:14 am Post subject: |
|
|
 Grand High Poobah
Joined: 11 Nov 2005 Posts: 26093 Location: Texas, USA
|
The Integration Bus Toolkit is just an Eclipse plugin running inside a given, IBM supported, level of Eclipse. Any of the advice on using .gitignore files with Eclipse will be valid in your instance. _________________ Honesty is the best policy.
Insanity is the best defence. |
|
Back to top |
|
 |
MatthewDCampbell |
Posted: Tue Sep 29, 2020 4:49 am Post subject: |
|
|
Novice
Joined: 29 Sep 2020 Posts: 21
|
@Vitor Don't agree. Plugins are vender specific. Can't be too hard to circle which directives are necessary and what is not when using source control. Otherwise the guideline should be everything.
Can rephrase. Any "strategies" for source control in circulation? |
|
Back to top |
|
 |
Vitor |
Posted: Tue Sep 29, 2020 5:09 am Post subject: |
|
|
 Grand High Poobah
Joined: 11 Nov 2005 Posts: 26093 Location: Texas, USA
|
MatthewDCampbell wrote: |
Any "strategies" for source control in circulation? |
Well you don't agree with mine so I'm out.  _________________ Honesty is the best policy.
Insanity is the best defence. |
|
Back to top |
|
 |
abhi_thri |
Posted: Tue Sep 29, 2020 5:45 am Post subject: |
|
|
 Knight
Joined: 17 Jul 2017 Posts: 516 Location: UK
|
MatthewDCampbell wrote: |
@abhi_thri That is the question.
|
hi...ok, let me rephrase it, what are you trying to achieve by saving the whole workspace into the source control?
As I mentioned usually you need to save the artefacts at a project level only, the project dependencies are covered in the .project file and any custom project level settings, eg:- text encoding, will be saved to '.settings' folder within the project folder.
Once your projects are saved to the source control then you can issue 'mqsicreatebar/mqsipackagebar' via your CI/CD process to extract the projects from the source control, create bar/releases and deploy it. The mqsicreatebar command will create a workspace on the run using the params submitted to it. |
|
Back to top |
|
 |
timber |
Posted: Tue Sep 29, 2020 7:46 am Post subject: |
|
|
 Grand Master
Joined: 25 Aug 2015 Posts: 1292
|
You don't have to store the IIB project source files in the workspace folder. You can store them in a completely separate directory tree and import them from there.
Sometimes you will get a couple of spurious build errors when doing this, but only when using specific features (don't ask me for a list, I don't remember).
If you are forced to put the project source files into the workspace folder, then .gitignore is the correct approach (as Vitor correctly pointed out). I've done it, and it works.
Quote: |
Plugins are vender specific. |
Not sure what your point is. Are you saying that an Eclipse plugin can do things that make it impossible to use .gitignore in the usual way? If not, what exactly is your objection? |
|
Back to top |
|
 |
rekarm01 |
Posted: Tue Sep 29, 2020 1:15 pm Post subject: Re: Integration Toolkit ignore source controll |
|
|
Grand Master
Joined: 25 Jun 2008 Posts: 1415
|
MatthewDCampbell wrote: |
Any guidelines on how to source control bus code? |
Do not put .metadata under source control. This contains a lot of data unique to a specific user's toolkit at a specific point in time, such as workspace preferences, or transient information such as log files, project build states, or other project states (opened/closed/etc.). It can also create a mess if the user checking out the metadata has a different version of toolkit (or different set of plugins), then the user that checked in the metadata.
timber wrote: |
You can store them in a completely separate directory tree and import them from there. |
Keeping the project source separate from the toolkit workspace also allows for organizing source code and workspaces independently of each other. For example, a single workspace might contain shared resources (like reusable subflows) imported from one repository, along with business-specific resources (like message flows) imported from other repositories. |
|
Back to top |
|
 |
MatthewDCampbell |
Posted: Tue Sep 29, 2020 10:06 pm Post subject: |
|
|
Novice
Joined: 29 Sep 2020 Posts: 21
|
@abhi_thri Nice forward to the Toolkit commands (https://www.ibm.com/support/knowledgecenter/SSMKHH_10.0.0/com.ibm.etools.mft.doc/an19540_.html). Didn't know about these and that might be a viable option. But still would like the IDE to pick the applications + libraries + bar files automatically despite the obvious need for code separation from an IDE (i.e. nobody in house here is going to develop integration bus without the IDE).
These are the minimum directories and files so far:
com.ibm.etools.mtf.bar/.bar/dependecies.index
com.ibm.etools.mft.broker.runtime/*.broker
org.eclipse.core.resources/.projects/*
Note under org.eclipse.core.resources/.project are directories for applications and libraries. Everything else can be ignored (.gitignore).
Like where @abhi_thri is pointing. Rather than IDE specific files use commands to reset the workspace. That would be better having a bundle of commands (say bundled by powershell) checked in that can rig the IDE. |
|
Back to top |
|
 |
timber |
Posted: Wed Sep 30, 2020 6:27 am Post subject: |
|
|
 Grand Master
Joined: 25 Aug 2015 Posts: 1292
|
Quote: |
These are the minimum directories and files so far:
com.ibm.etools.mtf.bar/.bar/dependecies.index
com.ibm.etools.mft.broker.runtime/*.broker
org.eclipse.core.resources/.projects/* |
No, none of those need to be in source control. Nothing under .metadata should ever be checked into source control.
Most of the contributors on this forum have years of experience with the product, and have set up multiple development environments with the IIB toolkit. It's worth re-reading the advice given above. |
|
Back to top |
|
 |
|