Jython deployment framework

This documentation applies to WebSphere 6.0+ deployments.

This framework uses Jython via wsadmin on the target servers to create and update WebSphere configuration items such as DataSources, Clusters, Work Managers, SIB CoreGroups etc. You can use the framework to create/update an application on the target servers and all of its dependent configuration at any scope.

Alternatively you could use the framework to just update a set of, or single object, such as a set of data sources and their providers and keep this up-to-date.

Heterogeneous cell deployment

This framework allows you to deploy to heterogeneous WebSphere cells supporting multiple different applications, such that the deployment of one application and its configuration will not affect any other applications running in the cell.

Chaining tasks

Multiple jython deployment tasks may be chained together in an orchestration, or a single task can be used to create or update all of the required configuration.

War/Ear files can be deployed via this framework, and all of their deployment time mappings automatically configured War/ear file deployment can be via the same deployment project as configuration, or they can be segregated.

Usage

The simplest way to get started is to use a template to create the files required for deployment.

Experienced uses can manually tailor the jython configuration files themselves for maximum flexibility.

Prerequisites

Ensure that the IBM WebSphere Deployment Manager and Nodeagent instances have sufficient allocated memory to perform the deployments you need, and that the timeouts are set appropriately.

To avoid issues we recommend the folloowing settings

  1. Adjust the JVM Maximum Heap of the deployment manager. We recommend for large EAR file deployments this is updated to at least 768Mb
  2. To avoid deployment timeouts, in the $WAS_DM_HOME/properties/soap.client.props file, set the following value:
            com.ibm.SOAP.requestTimeout=180

    to:

            com.ibm.SOAP.requestTimeout=600
  3. If you don't want to pass the Administrative password to the Deployment Manager during the deployment, amend $WAS_DM_PROFILE_HOME/properties/soap.client.props file again. Set the following values:
            com.ibm.SOAP.securityEnabled=true

    Then set the username and password:

            com.ibm.SOAP.loginUserid=wasadmin
            com.ibm.SOAP.loginPassword={xor}KD4sPjsyNjE=

    In the above case the password is encrypted using the WebSphere encryption tool.

Resolving issues

Here you will find a list of common issues and their resolution.