步骤属性指定了步骤运行方式、其输出的处理方式以及步骤完成时要执行的操作。步骤还可以运行其他项目或库。
要查看步骤属性,请选择项目内的一个步骤。缺省情况下会显示“详细信息”选项卡。它显示步骤属性。
如果未明确设置步骤属性,那么其值将从项目中继承。步骤的步骤属性集将覆盖继承的值。
步骤属性包括:
- 名称
- 步骤的名称。它在系统和日志中用作步骤的标签。
- 活动
- 指定是否运行步骤。缺省情况下启用步骤。
选择“禁用”可阻止步骤运行。禁用的步骤不可在作业中运行。
- 目录
- 设置用于运行步骤命令的位置。系统自动为每个作业创建一个唯一目录。目录字段提供了在作业运行期间在项目所构造的目录中运行命令的一种便捷方法。(Build Forge 不会构建在目录字段中提到的目录。)
- 路径
- 指定目录为绝对路径还是相对路径。
- 相对:步骤命令将在由服务器、项目、作业和步骤目录叠加在一起的路径下运行。
- 绝对:步骤命令将在由服务器和步骤目录叠加在一起的路径下运行。该选项允许您访问不在项目目录结构中的目录。示例:它可用于启动永久安装在服务器上的应用程序。
- 步骤类型
- 确定如何运行步骤。该属性会对“命令”的内容和“内联”中指定的项目(如果存在)产生影响。
- 内联
- 指定要利用当前项目运行内联的项目或库。使用当前项目的环境和大部分属性来运行项目或库的步骤。但是,系统使用内联项目的选择器作为内联步骤的缺省选择器。该行为就像是在当前步骤后复制指定项目中的步骤。
- 访问
- 选择一个访问组以定义允许哪些用户使用该步骤。可使用此属性限制对项目中特定步骤的访问。如果用户不是该步骤的访问组成员,那么当他启动包含此步骤的项目时,该步骤将跳过。
选择项目缺省值会使步骤继承项目的访问属性。
- 步骤提供程序
- 步骤命令执行实施。缺省步骤提供程序是 MJC 步骤提供程序。它提供预期的遗留行为,在端点代理程序机器上执行命令文本。
- 最大迭代数
- 仅当步骤类型为“While 循环”时才显示。指定在一个循环中可以运行步骤的最大迭代数。系统强加的缺省值为 100。该步骤在步骤日志中显示为成功完成(通过)。使用如果达到最大值步骤失败使步骤在达到最大迭代数时失败。
执行作业时,只读变量 BF_ITERATION 包含成功进入的迭代数。如果停止作业又重新启动,将在 BF_ITERATION 指示的迭代处重新启动。
- 如果达到最大值步骤失败
- 如果选择“是”,当达到最大迭代数时,“While 循环”步骤将失败。
如果选择“否”,步骤将通过。
- Else 内联
- 仅当步骤类型为“条件”时才显示。指定当所指定的条件为 false 时要运行内联的项目。缺省值为“否”。
- 命令
-
一条或多条命令。命令可以是操作系统命令、点命令或两者的组合。请参阅步骤如何运行。
- 条件
- 仅当您已选择步骤类型“条件”或“while 循环”时才显示。
- 条件:如果条件的求值结果为 true,将运行该命令。
- While 循环:可多次运行命令,只要条件的求值结果为 true。可以使用“最大迭代数”设置该限制。
条件可以是在选定服务器资源上运行的函数或命令。
- 如果使用函数,那么必须在“条件”字段的开头使用。它通过 Build Forge 引擎进行求值。
不会将它发送到服务器资源。要获取函数的列表以及有关如何使用这些函数的指示信息,请参阅条件函数。
- 命令在选定服务器上运行。此处使用的任何命令在代理程序的 shell 环境中都必须有效。执行的返回码决定条件通过还是失败。
项目的 Build Forge 变量可在条件表达式中使用。请参阅步骤中的变量解释,以获取有关如何表示变量以及如何对变量求值的更多信息。
- Else 命令
- 仅当您已选择步骤类型“条件”时才显示。指定当条件的求值结果为 false 时要运行的命令。
- 环境
-
指定要在执行命令前应用的环境。此环境中的值将覆盖从服务器环境、项目环境和步骤变量中继承的所有值。
- 选择器
- 指定要用于选择该步骤的服务器的选择器。
如果保留为缺省值,将在项目选择器确定的服务器上运行该步骤。
- 广播
- 如果选中此框,将在与当前选择器(若已指定,为步骤选择器;否则为项目选择器)匹配的所有服务器上运行步骤。在运行时,系统将广播步骤替换为一系列步骤,一个步骤对应一个服务器,然后根据广播步骤的线程属性来顺序或并行运行这些命令。
重新启动时的广播步骤行为:当重新启动广播步骤时,它不会广播。该设置仅适用于该步骤的新启动。重新启动时,引擎会为此步骤随机选择一个服务器。
- 超时(分钟)
- 指定系统等待当前命令产生输出的分钟数(缺省值为 5 分钟)。值 0 表示如果该步骤正确连接到代理程序,那么该步骤不超时。
如果达到了超时值,系统将使该步骤失败。项目也将失败,除非该步骤设置为“失败时继续”。
- 结果
- “结果”属性确定系统如何判断步骤是成功还是失败。使用退出码的缺省值可根据命令 shell 返回的退出码来决定是否成功。您也可以选择日志过滤器来检验命令输出。要选择日志过滤器,必须首先创建。
- 在失败时
- 指定在步骤失败时是停止还是继续作业。
缺省情况下,系统会停止作业。
- 线程
- 如果选择“是”,将与其他步骤并行运行此步骤。将此属性设置为“是”将允许线程化运行此步骤(此步骤与其他步骤并行运行)。将该属性设置为“否”以避免线程化。将该属性设置为“连接”会将线程化的步骤块分开。第一组步骤必须先完成,然后“连接”步骤后面的下一组线程化步骤才能启动。
- 通过通知
- 指定在步骤通过时要通知的访问组。
- 通过链
- 指定在当前步骤通过时要启动的项目。(具有“警告”状态的步骤被视为通过,并且将启动通过链)。
- 通过等待
- 如果选中此框,系统将暂挂当前项目直到通过链式项目完成。如果取消此步骤(或其项目),那么链式项目也将被取消。如果未选中,那么链式项目将异步启动,并且当前项目继续执行下一步。
- 通知失败
- 指定在步骤失败时要通知的访问组。
- 失败链
- 指定在当前步骤失败时要启动的项目。(设置为故障时继续的步骤被视为失败,并且将启动指定给此步骤的任何失败链。)
- 等待失败
- 如果选中此框,系统将暂挂当前项目直到失败链式项目完成。如果取消此步骤(或其项目),那么链式项目也将被取消。