Oracle ADF continuous integration using Hudson and automated Weblogic deployment.

tl;dr

Use the following ant task definition for deploying to weblogic.

<target name="weblogic-undeploy">
    <java classname="weblogic.Deployer"
          args="-adminurl t3://WEBLOGICSERVERURL:7001 -user USERNAME -password PASSWORD -name APPLICATIONNAME -undeploy"
          classpath="${install.dir}/wlserver_10.3/server/lib/weblogic.jar">       
    </java>
  </target>
 
  <target name="weblogic-deploy" depends="weblogic-undeploy">
    <java classname="weblogic.Deployer"
          args="-adminurl t3:// WEBLOGICSERVERURL:7001 -user USERNAME -password PASSWORD  -deploy C:\PATHTOEARFILE\scotttiger.ear -name APPLICATIONNAME -upload"
          classpath="${install.dir}/wlserver_10.3/server/lib/weblogic.jar">       
    </java>
  </target>

It’s been hard to find time between our full throttle ADF 11g development and updating content on my blog but finally after getting back from OOW13 I was inspired to spend some more time on putting together this latest bit about automated weblogic deployment. After following a pair of great tutorials by John Stegeman and Chris Muir I was able to successfully setup our own Hudson build server. Please see the below links I used for reference:

http://www.oracle.com/technetwork/articles/adf/part7-085284.html
http://www.youtube.com/watch?v=IP-etlVfU0Y

The video tutorial series is broken up to four parts and it is intended to visually guide you from beginning to end procedures for setting up your own Hudson build server. Also it ties together the above two resources and includes a couple of unmentioned settings within the ant build script. The only components that are not discussed is setting up a SVN repository & standalone weblogic server instance.

Here is the basic topology & flow of our ADF CI setup:

almcrop

  1. Developer commits their code into svn server.
  2. Hudson server starts a job on a set time interval to poll svn for changes
  3. Upon picking up changes, a build is kicked followed by junit/selenium tests (I will try to put together a post on this in the future).
  4. A successful build will produce an ear file and finally it is uploaded to the standalone weblogic QA server.

Good podcast on what hudson can do for you (added 10/17/2013)

Components I am using
—  JDeveloper 11.1.2.4
—  Weblogic 10.3.5
—  JDK 6u24 (bundled with JDev)
—  Ant 1.7 (bundled with JDev)
—  SVN 1.7
—  Hudson 3.0
—  Glassfish 3.1

Below is a short 4 part video series I made showing the steps described above.

Part 1  Glassfish & Hudson install & configuration.
Part 2  Create and version a simple ADF application.
Part 3 Generate and modify ant build script to create ear file & undeploy/deploy tasks for weblogic.
Part 4 Define a Hudson job for automatic deployment.

I realized that dubbing voice over after the video was created is actually sort of pesky as I need to sync with the recorded actions so I decided to use boring captions but in the future I will include audio. Thanks for reading and feel free to post any questions or suggestions.

Advertisements

About wesfang

www.linkedin.com/in/wesfang/ https://twitter.com/wesleyfang
This entry was posted in Uncategorized. Bookmark the permalink.

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s