DevTools 命令行 - IBConsole
“IBConsole.exe”,位于 Incredibuild 安装文件夹内,是一个控制台应用程序,能够根据不同的参数,以多种操作模式初始化 Incredibuild。本章中包含有关命令语法、可用命令参数的参考信息。
语法
通过 Automatic Interception Interface 运行作业的基本命令行语法如下:
IBConsole.exe /command="<TOOL COMMAND>" /profile="<PROFILE XML>" [Command Line Options]
注意:BConsole 前称为 xgConsole。相同语法仍支持该命令。
使用情况
以下语法用于操作 IBConsole.exe:
IBConsole.exe /COMMAND="<job command line>" [options]或
IBConsole.exe <Target> [Options]
其中:
-
/COMMAND 能够指定任意命令行,以便与 Submission Interface 或 Automatic Interception Interface 结合使用。
-
<Target> 能够指定以下其一:- 定义了分布式作业的 .xml/.xpx 文件路径(与 XML Interface 结合使用) - .bat 文件路径(与 Submission Interface 或 Automatic Interception Interface 结合使用)
使用 Dev tools,则需要用到 IBConsole,而同时使用 IBConsole 和 Dev tools,则需要用到 Incredibuild 所提供的三种接口之一,从而使您想要加速的软件/脚本与 Incredibuild 相连接。
备注:
-
如果在运行 IBConsole 时,您收到了以下错误消息:"'IBConsole' is not recognized as an internal or external command, operable program or batch file.",请选择执行以下一种操作:- 手动将 Incredibuild 安装文件夹添加至系统路径。- 选中“Add Incredibuild folder to the system path”选项,然后在您的机器中重新运行 Incredibuild 设置应用程序。
命令行选项
选项 | 功能 | 备注 |
---|---|---|
@ | 指定包含 IBConsole 命令行的响应文件。 | 当运行 IBMConsole 的命令行太长而无法在脚本中明确指定时,可使用此选项。 |
/Attach | 显示当前或最后一个构建的构建输出。 | 如果机器上当前正在运行一个构建,则显示到该点的构建输出,并继续显示进程输出,直到结束。如果未运行构建,则 IBConsole 显示从该机器启动的最后一个构建的整个构建输出。 |
/AvoidLocal=[On/Off] | 覆盖 Agent Settings 对话框中的 Avoid task execution on local machine when possible 选项。 | 必须设定一个值(ON 或 OFF)。 |
/Beep | 进程结束时播放声音。 | |
/Disable | 禁用 Incredibuild Agent 作为 Helper 参与。 | |
/Enable | 启用 Incredibuild Agent 作为 Helper 参与。 | |
/Help | 显示使用帮助和版本信息。 | |
/Log[=filename] | 将进程输出写入文件。 | 如果未指定文件名,则在当前目录创建一个名为 Ib_<target-name>.log 的文件。 |
/LogLevel="<Level>" | 覆盖该构建的日志记录级别。 | “<Level>”可以是以下选项之一:Minimal、Basic、Intermediate、Extended、Detailed。 |
/MaxCPUS=<n> | 在构建设置中覆盖全局最大 CPU/内核。 | |
/MaxWinVer="<Version>" | 指定分配到此构建的远端 Agent 所需的最新操作系统。 | 具有较新操作系统的 Agent 将不会被分配给此构建。可用值包括:XP、2003、VISTA、2008、7、8 以及 10。 |
/MinWinVer="<Version>" | 指定分配给此构建的远程 Agent 所需的最低操作系统。 | 具有较旧操作系统的 Agent 将不会被分配给此构建。可用值包括:XP、2003、VISTA、2008、7、8 以及 10。 |
/Mon[=filename] | 将构建进程(.ib_mon)文件的副本写入指定位置。 |
- 如果只给出文件夹名称,Incredibuild 会为文件名生成一个 GUID。 - 进程输出的末尾将添加一条含有已保存的 .ib_mon 文件位置的消息。 |
/NO_DOTNET_VIRT | 在 Helper 机器上禁用 .NET 环境虚拟化。 | 在命令行中指定此交换机时,该交换机将向 Incredibuild 发出指令,不允许将 Initiator 机器的 .NET 环境虚拟化为 Helper 机器。添加此交换机是为了解决混合 OS 环境中的 .NET 不兼容问题。 |
/NoLogo | 抑制构建输出中所含“Incredibuild”标头。 | |
/NoWait | 指定后,如果此 Agent 启动的另一个进程已在运行,IBConsole 将退出并显示“Another build already running”消息。 | |
/OpenMonitor | 打开显示执行进程的 Build Monitor 窗口。 | |
/out=filename | 将整个命令行输出重新定向到一个文件。 | |
/QueryLicense | 显示有关有效许可证、已分配程序包和维护到期日的信息。 | |
/QueryPackage="<Package>" | 检查是否已将特定 Incredibuild 扩展包分配给 Agent,并将退出代码设置为 0(已分配)或 1(未分配)。 | “<Package>”可以是以下项之一:VC、C#、BuildTools、DevToolAcc、XGE、Xbox One、PlayStation、Cafe、3DS、KlocWorkPro、或 Coverity。此外,还支持以下核心包:4个核心、8个核心、12个核心、16个核心、24个核心、32个核心、48个核心 以及 64个核心。 |
/Reset | 清除 Agent 的文件缓存内容。 | |
/SetEnv="<name>=<value>" | 设置或覆盖命令执行上下文的环境变量。 | 可多次使用 /SetEnv 来设置/覆盖多个变量。 |
/ShowAgent | 显示用于每个任务执行的 Agent。 | |
/ShowCmd | 显示每个执行的任务,Incredibuild 执行任务使用的命令行。 | 仅用于 XML Interface。 |
/ShowTime | 显示每个任务的开始和结束时间。 | |
/Silent | 不向标准输出写入任何内容。 | 默认行为是写入构建结果,如 Build Monitor's Output 显示器所示。 |
/Stop[=<build-id>] | 停止当前在本地机器上运行的构建。如果多于一个构建正在运行,请提供 <build-id>。 | 构建被停止时,IBConsole 将返回代码 3。如果使用了 /stop 且当前无构建运行,则返回代码 2。 |
/StopOnErrors | 进行指定后,只要发生错误就会停止执行。 | |
/StopAll |
停止所有当前正在运行的构建。 |
|
/Title=<build title> | 指定将显示在 Execution 输出文本开头的自定义标题行。该标题还将用于 Execution History 和 Execution Monitor 显示。 | 可用引号将值括入。 |
/UseIDEMonitor | 当使用此选项从 Visual Studio IDE 运行 IBConsole 时,集成的 IDE Execution Monitor 将显示执行进度。 | |
/Wait | 如果当前正在运行此 Agent 启动的另一个进程,请等待该进程完成,然后启动新进程。此亦为默认行为。 |
Return Codes
IBConsole 返回下列返回码:
0 - 未遇到错误。1 - 操作过程中遇到错误。2 - 遇到了致命的 Incredibuild 错误(无效参数、未找到输入文件等)。3 - 操作在完成之前已停止。
备注:
-
在给定时刻,一台机器上只能运行一次 IBConsole 执行。因此,在当前运行的构建完成和新构建开始运行之间会出现暂停。
接口特定用法和示例
要了解有关使用 IBConsole.exe 激活 IB Interface 的示例和具体信息,请参阅以下部分: