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

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

开始之前

  • 您必须设置脚本中的属性以便引用 Rational Asset Manager 系统信息。
  • 如要运行 Publish 和 DownloadArtifactLinks 脚本,您必须在 lib 路径上安装 Ant-Contrib .jar 文件。您可以下载包含 .jar 文件的压缩文件,并遵循安装信息以获取详细信息。
注: 配置 Ant 构建脚本以用于构建集成时,将 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 任务。ramclient.zip 文件包含一组必需的 .jar 文件以及 Ant 任务和脚本,并且在任何已部署的 Rational Asset Manager 服务器实例的 扩展页面上可用。您也可以从以下位置直接对其进行访问:http://<hostname>:<port>/ram/ramclient.zip(如 http://<localhost>:<9080>/ram/ramclient.zip)。
  3. 要使用 ramclient.zip 文件,请将该文件解压缩至文件夹,然后设置 Ant 库参数以包含 Ant .jar 文件。 如果在使用 Ant 1.8,请将 Ant 库参数设置为该文件夹中的 ramclient-ant1.8.jar 文件。如果在使用 Ant 1.7,请将 Ant 库参数设置为该文件夹中的 ramclient-ant.jar 文件。请勿在解压缩 ramclient.zip 归档后移动任何已解压缩的文件。Ant 将根据需要自动查找 ramclient-ant1.8.jarramclient-ant.jar 需要的其他 .jar 文件。
  4. 要引用将在构建中使用的资产,请使用以下脚本: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.guid = 资产的唯一标识(即资产页面中的 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.guid" 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 = 用于此项目或团队的变更或控制源的服务器。
  5. 要引用构建中所引用资产必需的相关工件,请使用以下脚本:ramDownloadArtifactLinks.xml

    ramDownloadArtifactLinks.xml 文件是样本 Ant 脚本,用于解析 Rational Asset Manager 中的 Eclipse 项目工件链接,方法是下载链接指向的工件。该脚本可用于构建过程,其中源代码是从 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" />
  6. 要将构建结果作为新的资产发布,请使用以下脚本: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 1.8 时运行下载脚本的示例:
ant -v -lib <ramclient folder>/ramclient-ant1.8.jar 
-file ramDownloadAsset.xml 
-Dlib.dir=<下载工件所在的位置>
-Dram.url=<“扩展”页面中指向存储库位置的 URL>
-Dram.user.id=<ram uid> 
-Dram.user.passwd=<ram 密码>
-Dram.asset.guid=<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

反馈