Question

I am looking for a solution to automate EAR deployment for OracleAS and WebSphere application servers. Can you guys suggest some open source solution for this?

Thanks, Venkat

OTHER TIPS

You can script Websphere administrative tasks using JACL or Jython.

Here's some samples: http://www.ibm.com/developerworks/websphere/library/samples/SampleScripts.html

In WAS 8.5, I came across this Option Called,

"Monitored Directory Deployment". Below are the Steps

Use the Global deployment settings page of an administrative console to set monitored directory values.

1) Click Applications > Global deployment settings.

2) To enable monitored directory deployment, select Monitor directory to automatically deploy applications.

3) To disable monitored directory deployment, clear Monitor directory to automatically deploy applications.

4) To change the monitored directory path, specify a new value for Monitored directory. Ensure that the directory that you specified for Monitored directory exists. The product does not create the directory for you.

To change the polling interval, specify the number of seconds for Polling interval.

5) Click Apply.

I assume you are talking about programatically deploying your EARs to the AS, so that you can later automate the process.

For WebSphere: checkout the WebSphere Control Program

For Oracle: use OC4J which enables you to integrate with ant scripts

Well after trying to get Cargo working with the Maven plugin and WAS 8.5 container (http://cargo.codehaus.org/WebSphere+8.5.x), I finally gave up and figured I would just explore using the ant tasks from Maven.

Then I came across the "Monitor directory to automatically deploy applications" setting (http://pic.dhe.ibm.com/infocenter/wasinfo/v8r5/topic/com.ibm.websphere.nd.doc/ae/urun_app_global_deployment.html). Copy an EAR into the designated folder and WAS will deploy it.

The WebSphere server needed to be re-started, and its folder is set to ${USER_INSTALL_ROOT}/monitoredDeployableApps by default, but it will look in servers/server1 in that folder (for base servers; deployment managers are a different animal)

Then you just need something to do the copy. I added the ArtifactDeployer plugin to Jenkins, modified my job configuration to run the plugin post build, and set it to deploy all ears (*/.ear) to the monitored folder (C:\IBM\WebSphere\AppServer\profiles\AppSrv01\monitoredDeployableApps\servers\server1 in my case). Of course you can set it to just copy a specific ear.

For WebSphere Application Server(Both Standalone Installation and ND Topology) deployment you may check https://github.com/dvarounis/was-installer

What you mean by automate EAR deployment? Do you mean creating a EAR from the source code and deploying to the application server? If yes then you can use Ant to build the EAR and deploy to the application server. Maven is another option.

Licensed under: CC-BY-SA with attribution
Not affiliated with StackOverflow
scroll top