用于MKStask的Apache Ant“SI命令”

时间:2017-06-20 15:08:22

标签: apache ant command-line-interface mks mks-integrity

尝试将MKS任务用于apache ant时,我需要指定执行命令的应用程序。在我发现的文档中,它表示例如“si”或“im”。我有点困惑,因为在命令提示符下使用了这个被认为的ant,所以我不确定哪个应用程序会执行上述命令,也不知道应用程序“si”或“im”可能是什么。我正在使用此任务尝试向Integrity发送和接收构建信息(如果相关)。我能够找到这个Integrity的CLI参考指南(链接在底部),它只使用im作为前缀,所以我认为这是我想要使用的那个,但我很感激我的解释是什么应用程序指示(可能的Integrity -something)以及用“si”指定的内容。感谢

https://bugs.eclipse.org/bugs/attachment.cgi?id=52225

2 个答案:

答案 0 :(得分:0)

si 命令用于源完整性任务(SCCM方面),而 im 命令用于Integrity Manager命令(工作流和文档管理)事情的一面)。

Integrity客户端应该在所有平台上都有手册页支持,因此您应该能够运行 man im man si 来查看所有支持的命令的细分

此外,对于客户端的较新版本,按 F1 会为您提供帮助界面,其中包含有关CLI命令的文档。

您发布的链接指南是产品CLI参考的一个非常旧版本,仅适用于 im 命令。

由于您正在谈论使用Ant,我假设您正在尝试执行构建,这主要涉及 si 命令(创建沙箱,检查成员)等等。)。

答案 1 :(得分:0)

以下是在ant中使用si的几个例子:

<target name="check.mks.conn">

    <echo message="Checking if an MKS connection exists. If not, one will be created." />

    <exec executable="si" failonerror="true">
      <arg line="connect" />
      <arg line="--hostname=${mks.server}" />
      <arg line="--port=${mks.port}" />
      <arg line="--user=${mks.user}" />
      <arg line="--gui" />
    </exec>

</target>


<!-- =================================================================== -->
<!-- If the sandbox already exists, resync the files                     -->
<!-- Manually drop any empty folders as resync does not do this.         -->
<!-- =================================================================== -->

<target name="resync.sandbox" unless="clean.build">
    <exec executable="si" failonerror="true">
      <arg line="resync" />
      <arg line="--hostname=${mks.server}" />
      <arg line="--port=${mks.port}" />
      <arg line="-R" />
      <arg line="-f" />
      <arg line="-Y" />
      <arg line="-S ${basedir}\${prj.name}\project.pj" />
    </exec>
    <delete includeemptydirs="true">
        <fileset dir="${prj.name}" excludes="**\*.*" />
    </delete>
</target>


<!-- =================================================================== -->
<!-- Drop and recreate the sandbox.                                      -->
<!-- =================================================================== -->

<target name="create.sandbox" if="clean.build" >
    <exec executable="si">
      <arg line="dropsandbox" />
      <arg line="--hostname=${mks.server}" />
      <arg line="--port=${mks.port}" />
      <arg line="--noconfirm" />
      <arg line="--batch" />
      <arg line='--delete=none' />
      <arg line="-Y" />
      <arg line="${basedir}\${prj.name}\project.pj" />
    </exec>
    <delete dir="${prj.name}" />
    <exec executable="si" resultproperty="createSBResult">
      <arg line="createsandbox" />
      <arg line="--hostname=${mks.server}" />
      <arg line="--port=${mks.port}" />
      <arg line="--project=c:/Projects/StoreWeb2/${prj.name}/project.pj" />
      <arg line="--projectRevision=${checkpoint.version}" />
      <arg line="--populate" />
      <arg line="--recurse" />
      <arg line="-Y" />
      <arg line="${basedir}\${prj.name}" />
    </exec>
    <!-- Check if the project is empty but for the mks system file project.pj -->
    <pathconvert property="is.project.not.empty" setonempty="false">
        <fileset dir="${prj.name}">
            <exclude name="project.pj"/>
        </fileset>
    </pathconvert>
    <condition property="try.mainline.storeweb">
      <not>
        <and>
          <equals arg1="0" arg2="${createSBResult}"/>
          <isset property="is.project.not.empty" />
        </and>
      </not>
    </condition>
    <antcall target="create.sandbox.mainline">
        <param name="prj.name" value="${prj.name}"/>
    </antcall>

</target>