为构建集成配置 Ant 构建脚本

您可以配置 IBM® Rational® Asset Manager 提供的 Ant 脚本以便与构建应用程序(如 IBM Rational Build Forge®)或其他构建实用程序集成。

开始之前

  • 您必须设置脚本中的属性以便引用 Rational Asset Manager 系统信息。
  • 如要运行 Publish 和 DownloadArtifactLinks 脚本,您必须在 lib 路径上安装 Ant-Contrib .jar 文件。您可以下载包含 .jar 文件的压缩文件,并遵循安装信息以获取详细信息。
注: 为构建集成而配置 Ant 构建脚本时,必须在构建机器上使用 Ant 1.7.0 或更高版本,以防止在运行脚本时发生类路径错误。将 JAVA_HOME 变量设置为 Java 文件夹,并将 ANT_HOME 变量设置为 Ant 安装目录(必须为 1.7.0 或更高版本)。不必设置 PATH 或 CLASSPATH。

过程

  1. 创建构建项目(如 Rational Build Forge 项目)。如果工具、库和从属组件都可用作 Rational Asset Manager 中的资产,那么可以基于这些资产使用所提供的 ANT 脚本来运行构建。您还可以将这些脚本用于其他构建实用程序和解决方案。
  2. 使用 Rational Asset Manager 中提供的 ANT 脚本,以便构建项目可以使用构建中的资产并将构建结果作为新资产进行发布。 每个脚本都使用 Rational Asset Manager ANT 任务。在执行 ANT 脚本的其中一个时,对于每个脚本,您都必须下载 ramclient.zip,将它解压缩到文件夹中,并将该文件夹包含在 ANT 库路径中。ramclient.zip 文件包含一组必需的 .jar 文件和 ANT 脚本,可以在任何已部署的 Rational Asset Manager 服务器实例的 扩展页面中使用。您也可以从以下位置直接对其进行访问:http://<hostname>:<port>/ram/ramclient.zip(如 http://<localhost>:<9080>/ram/ramclient.zip
  3. 要引用将在构建中使用的资产,请使用以下脚本:ramDownloadAsset.xml

    ramDownloadAsset.xml 文件是下载资产内容的样本 Ant 脚本(作为工件)。 此脚本可用于以下构建过程中:需要一组已核准的库或可执行文件以便执行构建(例如:专用编译器、公共组件或公共脚本)。

    在 DownloadAsset 脚本中,必须设置下列属性:
    • lib.dir = 将资产复制到的目录。
    • ram.url = Rational Asset Manager Web Service 应用程序的 URL(在 Rational Asset Manager Web 客户机中,单击帮助图标,单击扩展并向下滚动到 Web Service 部分,然后找到存储库位置字段)。
    • ram.user.uid = 使用 Rational Asset Manager 服务器时要使用的 uid。
    • ram.user.passwd = 使用 Rational Asset Manager 服务器时要使用的密码。
    • ram.asset.quid = 资产的唯一标识(即资产页面中的 Rational Asset Manager 唯一标识)。
    • ram.asset.version = 资产的版本(即资产页面中的 Rational Asset Manager 版本)。
    • build.id = 构建标识将由 Rational Asset Manager 使用以跟踪此下载用于的构建。
    例如,将下列值替换为您自己的要下载的资产:
    <property name="lib.dir" value="C:\libdir" />
    <property name="ram.url" value="http://machine127.ibmtst01.com:9080/ram.ws" />
    <property name="ram.asset.quid" value="{8141FA04-E837-FA50-7052-5269E7C6937C}" /> 
    <property name="ram.asset.version" value="1.0" />
    下列是将提交到 Rational Asset Manager 以描述下载用途的可选属性:
    • build.type = 构建的类型(例如,“RTC Daily Build”)。
    • build.team.area = 此构建用于的团队或项目(如 Rational Asset Manager 项目)。
    • build.team.server = 用于此项目或团队的变更或控制源的服务器。
  4. 要引用构建中所引用资产必需的相关工件,请使用以下脚本:ramDownloadArtifactLinks.xml

    ramDownloadArtifactLinks.xml 文件是样本 Ant 脚本,该脚本可通过下载链接指向的工件,解析 Eclipse 项目工件与 Rational Asset Manager 的链接。该脚本可用于构建流程,其中源代码是从 SCM 系统中抽取的,抽取的项目与 Rational Asset Manager 中的工件链接。在 Eclipse 中,Rational Asset Manager 的客户机插件将自动处理这些链接。

    此脚本使用 ANT-CONTRIB(http://ant-contrib.sourceforge.net/)任务实用程序。 请确保将 ant-contrib-XXX.jar 放置在库路径上。

    在 DownloadArtifactLinks 脚本中,必须设置下列属性:
    • build.dir = rambuildercontrol.xml 文件所在的 Eclipse 工作空间。已将所有 Eclipse 项目抽取到的目录路径(通常从 SCM 系统中)。
    • ram.url = Rational Asset Manager Web Service 应用程序的 URL(在 Rational Asset Manager Web 客户机中,单击帮助 > 扩展,并向下滚动到 Web Service 部分,查看存储库位置字段)。
    • ram.user.uid = 使用 Rational Asset Manager 服务器时要使用的 uid。
    • ram.user.passwd = 使用 Rational Asset Manager 服务器时要使用的密码。
    • ram.download.result.file = 可选文件路径。如果设置,那么还将会有“ram.downloadlist”属性,其中包含“;”分隔的已下载资产列表。(例如,GUID,version,artifact,artifact;GUID,version,artifact,artifact,artifact)。
    例如,将下列值替换为您自己的要下载的相关资产:
    <property name="ram.url" value="http://machine127.ibmtst01.com:9080/ram.ws" />
    <property name="build.dir" value="C:\Documents and Settings\Administrator\Desktop\RTC Workspace\" />
    <property name="ram.download.result.file" value="C:\BuildDir\publishresults" />
  5. 要将构建结果作为新的资产发布,请使用以下脚本:ramPublishAsset.xml

    ramPublishAsset.xml 文件是样本 Ant 脚本,该脚本可将资产的内容发布到 Rational Asset Manager。此脚本可用于以下构建过程中:需要将生成的一组工件发布到 Rational Asset Manager 中作为单个资产,从而反映对用于生成此资产的其他资产(例如,开放式源代码/公共组件、受支持平台和规范)的依赖关系,以及指向此构建和已发布资产的实施内容(如规范、发行版或设计)的链接。

    此脚本使用 ANT-CONTRIB(http://ant-contrib.sourceforge.net/)任务实用程序。请确保将 ant-contrib-XXX.jar 放置在库路径上。

    在 PublishAsset 脚本中,必须设置下列属性:
    • ram.url = Rational Asset Manager Web Service 应用程序的 URL(请参阅“存储库”位置的“Rational Asset Manager 帮助/扩展”页面)。
    • ram.user.uid = 使用 Rational Asset Manager 服务器时要使用的 uid。
    • ram.user.passwd = 使用 Rational Asset Manager 服务器时要使用的密码。
    • ram.asset.version = 资产的版本(即资产页面中的 Rational Asset Manager 版本)。
    • ram.asset.name = 资产的唯一名称。
    • ram.asset.community = 将资产上载到的社区。
    • ram.asset.type = 要用于此资产的类型。
    • ram.asset.shortDescription = 简短描述。
    • ram.asset.description = 关于此资产的描述。
    • ram.asset.artifacts = 包含要发布的所有工件的目录结构的归档文件。
    • ram.release.guid = 作为发行版的一部分与此资产相关的唯一标识。要通过“实现对象”关系与之相关的资产(例如,在发布资产时,可以将资产与规范和发布需求等相关联)。
    • ram.release.version = “实现对象”资产的版本。
    • build.id = 构建标识将由 Rational Asset Manager 使用以跟踪此下载用于的构建;它可以是任何字符串。
    例如,替换下列值以发布资产:
    <property name="ram.url" value="http://machine127.ibmtst01.com:9080/ram.ws" />
    <property name="ram.asset.version" value="1.0" />
    <property name="ram.asset.name" value="Publish Script test" />
    <property name="ram.release.guid" value="{7198899C-3E2A-A3CE-2E76-68BC2A637AD2}" />
    <property name="ram.release.version" value="7.2" />
    <property name="build.id" value="1234" />
    下列是将提交到 Rational Asset Manager 以描述下载用途的可选属性。
    • ram.download.result.file = ramDownloadArtifactLinks.xml 脚本所创建文件的可选文件路径。如果设置,脚本将对此文件中所列的所有资产建立依赖关系。
    • verify.state.name = 如果指定,脚本将验证 ram.download.result.file 中所列的所有文件是否都处于此状态(如“已核准”)。
    以下内容将作为已上载工件的相关信息:
    • build.type = 构建的类型(如“RTC Daily Build”)。
    • build.team.area = 此构建用于的团队或项目(如 Rational Asset Manager 项目)。
    • build.team.server = 用于此项目或团队的变更或控制源的服务器。
    • src.repository = 开发此资产所通过的源/来源的存储库。
    • build.id = 已生成此资产的构建标识。
    • build.def.id = 用于创建此资产的构建类型。
    • build.label = 构建描述。
    • build.url = 用于链接到生成此资产所通过的构建的 URL
    • src.repository = 用于开发此资产的存储库 URL。

示例

以下是运行下载脚本的示例:
ant -v -lib <ramclient jars path> 
-file ramDownloadAsset.xml 
-Dlib.dir=<下载工件所在的位置>
-Dram.url=<“扩展”页面中指向存储库位置的 URL>
-Dram.user.id=<ram uid> 
-Dram.user.passwd=<ram 密码>
-Dram.asset.quid=<guid> 
-Dram.asset.version=<版本>
-Dbuild.id=<表示此下载用途的标识>
要获取如何能够使用这些脚本的示例,请参阅 http://www.ibm.com/support/docview.wss?uid=swg27016509http://www.ibm.com/developerworks/offers/lp/demos/summary/r-assetmanagerrbf.html