使用 WebSphere Commerce Build and Deployment Tool 部署增量代码包
WAS 的部署机制
通过 WCBD 来部署定制化的资源时,WCBD 将调用本地 WAS 接口,通过远程连接 协议与 Remote 端的 WAS 进行通信,并调用远程 WAS 的部署机制进行部署,因此了解 WAS 的部署机制将有 助于读者从本质上了解如何部署增量代码包。WAS 包含三种部署模式:单文件模式、多文件模式和模块文件模 式。针对不同的模式,使用不同的打包方式打包资源。在 WAS 的 Administrative Console 界面中可以找到 这三种部署模式的 GUI 界面。本文将指导读者通过配置 WCBD,以命令行的方式实现运行在 WAS 环境下的应 用的部署。下面就 WAS 所支持的三种部署模式进行简单介绍。
单文件模式 (single file)
该 模式适用于只是在应用中更新单个文件。单文件可以是 EAR 中的任何文件,也可以是包含了若干 Command, Data Bean 的 JAR 包,或者是更新的 JAVA 代码,只要这些文件在 EAR 中是以 JAR 包的形式存在,就可以 考虑使用单文件部署。需要注意的是,文件不能是应用模块文件类型,例如 EJB 模块或者 Web 模块。
多文件模式 (partial application)
该模式适用于在应用中更新或者删除多个单文件。这些文 件并不需要来自于同一个模块。通过多文件模式进行部署时,如果在 WAS 中不存在该文件,该文件将会被添 加。如果文件已经存在,该文件会被更新。在多文件部署模式中,所有的资源均会被集中起来并按照各自的目 录结构放置在一个压缩文件中。打包多个应用文件包括如下三个阶段:
创建一个目录用来包含所有需要部署的资源,该目录将代表 EAR 的根目录。
收集所有需要部署的资源,并将其放置在新创建的根目录下。资源在该目录下的目录结构必须与其在 JAVA EE 应用中的目录结构保持一致。
将所有的资源打包成一个单独的压缩文件 (.zip 格式 )
模块文件模式 (Module file)
该模式适用于在应用中增加,更新,或者删除一个模块。例如更新一 个实体的 EJB 模块或者更新 WAR 包。
WCBD 的部署脚本中采用了多文件模式和模块文件模式的部署方 式,需要使用者在启动部署前对 WCBD 进行相关的配置。本文将指导读者自定义 WCBD 脚本,将自动化构建模 块生成的二进制增量代码整合到 WCBD 的部署脚本中,实现自动化部署。接下来我们就如何配置 WCBD 以及如 何将 WCBD 整合到自动化框架中进行介绍。
整合自动化构建框架与 WCBD
自动化构建框架为 WCBD 创建了用于部署的资源,WCBD 将获取生成的资源包,并通过调用 WAS 的部署机 制实现资源的部署,其运行过程如图 1 所示。为了实现自动化构建框架与 WCBD 的整合,并实现增量代码的 自动化部署,需要实现如下步骤:
获取 WCBD 部署脚本。以该脚本为基础,修改成自动化框架的部署模块。
配置 WCBD 部署包。预先设置好部署的相关参数用于之后的代码部署。
修改 WCBD 部署脚本。将自动化构建框架生成的增量代码包整合到 WCBD 的部署脚本中,并让构建框架主 任务能够启动 WCBD 部署过程,实现自动化的代码部署。
图 1. 构建模块与部署模块运行框架图