执行从文件系统至存储库的批处理更新

您可以将资产创建至或将文件系统上存在的资产更新至 Rational® Asset Manager 存储库。可以将文件系统中的资产元数据(这些数据使用遵循了特定规则的文件和目录)定义为资产源。Rational Asset Manager Eclipse 客户机可根据资产源执行批处理资产导入或更新。

关于此任务

要将资产直接从文件系统上载至存储库,请执行以下操作:
  1. 在本地文件系统上找到要在其中创建资产的目录。
  2. 创建用于定义目录及其文件如何映射至资产的规则。例如,必须定义要将哪些文件作为工件以及要将哪个值指定为社区和资产版本。可通过两种方式定义这些规则:
    • 指定一系列规则
    • 创建包含定义的 manifest.rmd 文件。
      注: 如果创建 manifest.rmd 文件,那么必须将该文件放在资产或资产归档的根目录中,然后才能将该目录添加为资产源。
      文件目录结构。
  3. 更正新资产存在的所有问题,选择目标存储库,并将资产更新至该存储库。

过程

要从文件系统通过 Eclipse 客户机执行批处理更新:

  1. 展开“资产搜索”视图中的菜单,然后选择批处理更新
    “批处理更新”菜单
  2. 在“批处理编辑器”的“查找资产”部分中,从源存储库空间移除不需要的存储库。
    在“查找资产”部分中删除存储库
  3. 指定要将资产导入到的目标存储库,或创建存储库连接。
    选择用于以下更新的存储库连接
  4. 在源存储库空间内进行右键单击,然后单击添加资产源 > 文件系统
    添加资产源 > 文件系统
  5. 右键单击文件夹选取器中的资产源根文件夹,然后单击添加规则...
    注意: 您应将所有资产根文件夹都放置到根文件夹下。以下是示例:
    根文件夹下的四个资产根文件夹

    资产元数据(例如 Manifest.rmd)包含在其各自的资产根文件夹中。

  6. 选择资产来作为规则类型,然后单击下一步
  7. 选择使用所有归档和文件夹创建资产以访存根文件夹下的所有资产根文件夹,或选择使用与该过滤器匹配的归档和文件夹创建资产并指定过滤器来定制资产根文件夹。然后,单击完成
  8. 资产验证完成后,检查目标空间内的列表并解决资产的验证问题。
  9. 单击更新所有资产以完成批处理更新。

示例

本示例描述了如何执行批处理更新。在本示例中,有四个资产根文件夹可供您导入四个资产。这些文件夹如下所示:

四个文件夹:bin asset、doc asset、source code asset 和 source code2 asset 位于 Asset
源文件夹下
Source code assetsource code2 asset 用于包含了源代码来作为工件的资产。Bin asset 包含二进制 JAR 文件。文档存储在 doc asset 中。

目标是将这些资产元数据从文件系统导入到存储库 Rational Asset Manager 并根据工件使用情况设置社区和资产类型。

配置这四个资产的清单和工件

在本示例中,您要将 bin asset 的社区设置为 DevOps Community,并将 doc asset 的社区设置为 Documentation。开始批处理更新之前,应如下所示配置这四个资产的清单和工件:
  • bin asset 的文件夹结构和清单:
    Directory of C:\Asset source\bin asset
    
    09/29/2014  01:24 PM    <DIR>          .
    09/29/2014  01:24 PM    <DIR>          ..
    03/20/2012  11:54 AM           350,627 log4j-1.2.11.jar
    09/29/2014  01:30 PM               475 manifest.rmd

    清单文件(将上载 .jar 文件来作为工件):

    <?xml version="1.0" encoding="UTF-8"?>
    <defaultprofile:Asset xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:defaultprofile="http:///defaultprofile.ecore" 
       name="log4j bin" version="1.2.11" shortDescription="log4j jar file">
     <classification>
      <descriptorGroup name="AssetType">
       <nodeDescriptor href="executable jar" />
      </descriptorGroup>
     </classification>
    <solution>
      <artifact name="log4j-1.2.11.jar">
       <reference><value>log4j-1.2.11.jar</value></reference>
      </artifact>
     </solution>
     </description><value>Longer description</value></description>
    </defaultprofile:Asset>
  • doc asset 的文件夹结构和清单:
    Directory of C:\Asset source\doc asset
    09/29/2014  01:24 PM    <DIR>          .
    09/29/2014  01:24 PM    <DIR>          ..
    09/29/2014  01:30 PM               560 manifest.rmd

    包含了联机文档的 URL 工件的清单文件:

    <?xml version="1.0" encoding="UTF-8"?>
    <defaultprofile:Asset xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:defaultprofile="http:///defaultprofile.ecore" 
       name="doc asset" version="1.0" shortDescription="short description">  
      <classification>
       <descriptorGroup name="AssetType">
        <nodeDescriptor href="documentation"/>
      </descriptorGroup>
     </classification>
    <solution>
     <artifact name="API reference" type="url">
         <reference value="http://logging.apache.org/log4j/1.2/apidocs/index.html">
            <referenceKind name="url"/>
         </reference>
       </artifact>
     </solution>
     <description><value>Longer description</value></description>
    </defaultprofile:Asset>
  • source code asset 的文件夹结构和清单:
    Directory of C:\Asset source\source code asset
    
    09/29/2014  01:30 PM    <DIR>          .
    09/29/2014  01:30 PM    <DIR>          ..
    09/29/2014  11:17 AM    <DIR>          folder
    09/29/2014  01:38 PM               536 manifest.rmd
    
    Directory of C:\Asset source\source code asset\folder
    
    09/29/2014  11:17 AM    <DIR>          .
    09/29/2014  11:17 AM    <DIR>          ..
    09/29/2014  11:16 AM            27,008 log4j-1.2.11.zip

    包含了在 .zip 文件中压缩的源代码的清单文件(源代码放置于文件夹中):

    <?xml version="1.0" encoding="UTF-8"?>
    <defaultprofile:Asset xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:defaultprofile="http:///defaultprofile.ecore" 
        name="log4j-src" version="1.2.11" shortDescription="short description">
       <classification>
        <descriptorGroup name="AssetType">
          <nodeDescriptor href="source code" />
        </descriptorGroup>
       </classification>
       <solution>
         <artifact name="folder" type="folder">
          <artifact name="log4j-1.2.11.zip" type="application/zip"/>
        <reference value="log4j-1.2.11.zip"/>
       </artifact>
      </artifact>
     </solution>
     <description><value>Longer description</value></description>
    </defaultprofile:Asset>
  • source code2 asset 的文件夹结构和清单:
    Directory of C:\Asset source\source code2 asset
    
    09/29/2014  01:32 PM    <DIR>          .
    09/29/2014  01:32 PM    <DIR>          ..
    09/29/2014  11:16 AM            27,008 log4j-1.2.11.zip
    09/29/2014  11:17 AM               911 manifest.rmd

    包含了在 .zip 文件中压缩的源代码的清单文件:

    <?xml version="1.0" encoding="UTF-8"?>
    <defaultprofile:Asset xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:defaultprofile="http:///defaultprofile.ecore" 
         name="log4j-src" version="1.2.11" shortDescription="short description">
      <classification>
        <descriptorGroup name="AssetType">
          <nodeDescriptor href="source code" />
        </descriptorGroup>
      </classification>
      <solution>
        <artifact name="log4j-12.11.zip" type="text/plain">
          <reference><value>log4j-12.11.zip</value></reference>
        </artifact>
      </solution>
    </defaultprofile:Asset>
您必须为每个资产的工件均指定元数据,并将这些工件与 manifest.rmd 文件放置在同一个目录中。请注意,在清单文件中,资产类型的元数据必须存在。 以下是示例:
<classification>
  <descriptorGroup name="AssetType">
   <!-- 指定资产类型 URL,或者在此处设置一个值并稍后在批处理更新中将该值映射到现有资产类型 URL -->
    <nodeDescriptor href="source code" />
    </descriptorGroup>
  </classification>

在“批处理”编辑器中设置资产社区

因为您尚未设置所有资产的社区,所以可在“批处理”编辑器中使用资产规则来根据资产名称帮助设置资产社区。请执行以下步骤:
  1. 在“批处理”编辑器中,导入包含了所有四个资产根文件夹的根文件夹,并指定目标存储库。
  2. 要添加源代码资产的资产规则,请选择使用与该过滤器匹配的归档和文件夹创建资产,并在过滤器字段中输入 source code*。 然后,单击完成。现在创建了两个源代码资产的资产规则,并且 Eclipse 客户机将在根资产源文件夹下选取名称与 source code* 匹配的两个文件夹。
  3. 要创建源资产的社区规则,请右键单击资产规则,然后单击添加规则...。在弹出窗口中,单击社区 > 下一步
  4. 指定目标存储库中的现有社区并单击完成
    在“社区”字段中输入 Sample Open Source

    新的社区规则将添加到源资产的 Asset 规则下,源资产的社区将设置为 Sample Open Source

    Community 位于 Asset 下,而 Sample Open Source 位于 Communities(1) 下
  5. 将显示验证警告消息,因为不存在名为 source code 的资产类型。
    Asset Types 下的警告:file:/C:/Asset%20source/source%20code%20asset/source
code 以及 Assets (2) 下的警告:An asset type is required
    您可采用两种方法来解决该问题:
    • 创建与社区规则类似的资产类型规则。指定现有资产类型来覆盖这两个源资产的资产类型。
    • 将每个资产的缺失资产类型均映射到存储库中的现有类型,或者在存储库中创建资产类型。
      • 要映射资产类型:
        1. 右键单击目标存储库空间内的资产类型,然后单击映射资产类型...
          映射资产类型
        2. 在弹出窗口中指定资产类型,然后单击确定
      • 要创建资产类型,请右键单击目标存储库空间内的资产类型,然后单击创建资产类型
  6. 要继续添加其他两个源资产的资产规则,请使用社区规则来将它们添加到不同社区。解决它们的验证警告,并确保资产没有任何验证警告消息。
    解决验证警告
  7. 单击更新所有资产按钮,然后批处理更新将完成。
    批处理更新完成,并且显示四个资产
要了解有关执行从文件系统至存储库的批处理更新的更多信息,请参阅以下主题:

反馈