Git & WebMethods Designer

Hi all,

i need some informations about the possibility to use Git and Webmethods Designer.
In particular, is there the possibility to develop in a remote IS and commit/push/fetch the code to a Git private server?

Are there any concurrency problems or limitation if resources are accessed by multiple developers?

Thank you

Hi Francesco,

depended on your wM Version committing to Git from Designer is possible when using Local Service Development.
This means each developer has its own local IS.

Committing from remote IS is not supported OOTB.

You will have to do so manually.

Regards,
Holger

Hi Holger, thank you for reply.

My wM version is 9.5, of course my software architecture is not based on a Local Service Development.
Ignited by your words, im going to abandon the git-way.

If you can recommend a good solution for a versioning tool (Designer integrated) that is able to satisfy a concurrency approach on a remote server, it would be greatly appreciated .

Regards,
Francesco

Hi Francesco,

unfortunately I do not know such a tool.

There has been support for Subversion, ClearCase and SoureSafe via WmVCS feature on remote IS servers, but this didn´t fit our requirements (we are currently using Subversion).

Designer has only the possibility to control the objects in his local workspace. There plugins for Eclipse available for many source control systems, which can be applied to designer also.

Local Service Development will be the future starting with wM 9.12 released this autumn.
In this feature each package will become a project in the Designer workspace which can be put under version control.

Regards,
Holger

Hi,

There some third-party products offer those solutions (my company is a partner of them):

  • Ferrologic CI
  • CrossVista TEAM

If you have the time/resources available, you may develop your own service to check-in/out/commit your code to a remote repository, as the above solutions did.

It usually boils down to having a service which calls the necessary system scripts (or the services inside the libraries you imported).

Best Regards,

If you can’t (ot do not wish) use local development, you can simply copy the files from the server to your local designer workspace and commit them from there.

It’s not a viable route cos inftrastructure limitations.

I need to find another way for a remote versioning.

Hi Francesco,

in this case you might want to take a look at Jenkins Build Server (i.e. running on Tomcat).

By having the right plugins for this tool you can check in to Git from there.

Regards,
Holger

Instead, in case of adopting the Egit (git plugin embendded in Eclipse), witch is the right way to add a local is repository (IntegrationServer\packages) into a Git respository?

Thank you

Hi Francesco,

any Git-plugin for Eclipse shoudl work when you have local serviced developent involved.

As the VCS-Support in IS (i.e. for remote development is not supporting Git OOTB) I suggested to use the comibination tomcat/jenkins with approptiate plugins from the remote IS hosting system to your Git.

Otherwise you will have to copy the custom packages from your remote server to your local server and try to check them in from there with your local git client. Using Designer will only work if you place these in the workspace of this designer, but this might confuse the developers if these are local service development compatible or not.

Regards,
Holger

Hi Holger von Thomsen

finally it works using local serviced developent plugin for sag 9.12

Now it’s running locally on my pc using my localhost IS and pushing files on a public github branch.

You think there might be concurrency problems if i allow other developers to use the code? I’m not sure if the integration between SAG and Egit is mature enough…

Regards,
francesco

Hi Francesco,

as long as all developers are using the same Git Repository thru Desiner 9.12 with Local Service Development there should be no issues.

All participating should pull the code updates from the repository on a regular basis to keep their local copies up-to-date.

One approach might be to assign different parts of the development tasks to the different developers to avoid overlapping development on certain objects.

Conflicts in the repository should be handled be the egit plugin (with developer interaction if neccessary) or should not occur at all if the developer needs to l"ock" the service in the repository he wants to work on before starting his implementation.

Regards,
Holger

Hi all,

thank your for all replies until now. Your contribution is very appreciate. At the moment I’m able to work locally using Local Service Development and Egit in Eclipse.
Unfortunatly my future scenario is (of course) more complex because i need to manage several remote integration servers (client side) and several developers that have to work on them.

In your opinion is a feasible option to build up a remote git server running in the same server of the IS and allow developers to use Designer just to connect to IS, develop their code and use GIT to commit changes?

I hope i have been clear :smiley:

Thank you again,

fa

Hi Francesco,

do the remote IntegrationServers belong to the same environment (i.e. Dev, QA, Production) or do they form several environments.

The future scenario is to develop locally, check in the code for sharing it in the team, upload the developed code the central remote devlopment IS for testing.
From there the code should be moved to QA and Production using Deployer.
It is possible to instruct the Deployer to pull the code from GIT using Asset Build Environment.

Regards,
Holger

Hi Holger,

the environement is very heterogeneous. There is not a direct match among IS; especially between dev and test env.

For example i have 5 IS in dev (that i need to put under git versioning), 10 in Test and 10 in Prod so i can’t use a continuous integration solution as ABE.

Thank you
fa

Hi Franceco,

please provide more details about your landscape and how the 10 IS in test and production (identical layout assumed) are matching to the 5 IS in dev.

It is a bit confusing quite now.
Especially why ABE is not an option for you.

I think that it is just a question of packaging strategy.

Regards,
Holger

Hi Holger,

the basic structure is composed of 3 environments (dev-test-prod), unix based (of course).

Test and Prod has identically layout.

I’m not sure about ABE maybe because i don’t have enough knowledge about this product.

Actually my goal is to find a good versioning tool solution bearing in mind that right now developers just use Designer to connect to remote IS (there are no IS installed on their locale machine) and all changes are saved on remote servers.

Thank you,
fa

Hi guys,

any news? is there a way to set up a versioning tool embended in Eclipse without using a local IS?

Thank you