To edit or add content to this Wiki, you can simply create a new account at http://wocommunity.org/account.

You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 5 Next »

Introduction

The previous tutorial articles provide details of customization of the default ant build script that is present in your WebObjects projects. This article provides a fully custom build script that you can just drop into your project and use it as an alternative to the default build.xml. This script is called the "split_embedded_build" script. Along with providing the script, this article explains in detail what deployment artifacts are produced by the build. Hopefully the functionality in this script will make their way into the standard script someday with configuration parameters settable in a simple way in the build.properties file.

Pre-requisites

This script only works with the modern WOLips project format and the WOnderApplication project template format (since the layout of regular. However the script is easily changed to accommodate the "old" standard format by changing the dir names in the script (for example "Sources" in the new project layout was "src" in the old layout)

Modern WebObjects Project Layout

This layout is the standard layout for all WebObjects projects created by WOLips (rev #4735 at least). The distinct folder names indicate if your project is in this modern format and if yours is the same, then this ant script should work.

Installation and Usage of the Script

Have no fear (wink) , you will not break anything by dropping this script as is into your project and trying it out. YOu can just use it as is without replacing your default build.xml

  • So, download the script and drag it to the root of your project.
  • Open the Ant run configuration for the script by right-clicking on the script and selecting the menu shown below.

    Using the Ant Script

  • Next select the "clean" and compileAndBuild" tasks. If necessary use the "Order..." button to ensure that "clean" comes before "compileAndBuild".

    Configure the Ant Tasks to be run

  • Click the Run button to run the ant script and your fully embedded split install deployment bundles will be created in the "dist" folder.

Customization

It is common to want to use custom bundle build names. There are a number of advantages to having a unique application name for each build:

  • For example, you might want to have a name that reflects the current revision so that a clean bundle is deployed without overwriting older version bundles on the servers.
  • If the current and new versions of the app are compatible with the current database schema, smooth zero-downtime "rolling upgrades" are possible by using this strategy... and the ability to switch back to the older version if an unexpected deployment problem occurs
  • Because we are using fully embedded split bundles, the unique deployment name will ensure that web server resources all get a new URL ensuring that older versions cached by browsers will not be used for new deployed version apps ... which can be important for javascript and image updates for example.
  • No labels