编辑 Runbook

 

发布时间: 2016年3月

适用对象:Windows Azure Pack for Windows Server

Service Management Automation 中的每个 runbook 都具有两个版本(草稿版本和已发布版本)。 可编辑工作流的草稿版本,然后发布它以便可以执行。 无法编辑已发布版本。

使用管理门户编辑 Runbook

管理门户包括一个编辑器,可以用于查看和编辑 runbook。 除了提供基本的文本编辑功能之外,该编辑器还提供针对全局资产、活动和 Runbook 自动插入代码的能力。

  1. 在管理门户中,选择“自动化”。

  2. 选择“Runbook”选项卡。

  3. 单击要编辑的 runbook 的名称。

  4. 选择“创作”选项卡。

  5. 单击屏幕顶部的“草稿”或屏幕底部的“编辑”按钮。

  6. 执行所需编辑。

  7. 编辑完成后单击“保存”。

  8. 如果要发布 runbook 的最新草稿版本,请单击“发布”。

将代码插入到 Runbook 中

自动化编辑器包含一个用于将活动、设置和 Runbook 的代码插入到 Runbook 中的功能。 可以从可用资产的列表中进行选择并将相应的代码插入到 runbook 中,而不是自己输入代码。

将 Runbook 的代码插入到 Runbook 中

  1. 在管理门户编辑器中打开 runbook。

  2. 在屏幕底部,单击“插入”,然后单击“Runbook”。

  3. 从中央列中选择要插入的 runbook,然后单击右箭头。

  4. 如果 runbook 具有参数,则会列出它们以供参考。

  5. 单击选中按钮。

  6. 用于运行所选 runbook 的代码会插入到当前 runbook 中。

  7. 如果 Runbook 需要参数,请提供适当的值以代替用括号 <> 括起的数据类型。

将全局资产插入到 Runbook 中

  1. 在管理门户编辑器中打开 runbook。

  2. 在屏幕底部,单击“插入”,然后单击“设置”。

  3. 在“设置操作”列中,选择所需代码的类型

  4. 从中央列中的可用资产中进行选择。

  5. 单击选中按钮。

将活动插入到 Runbook 中

  1. 在管理门户编辑器中打开 runbook。

  2. 在屏幕底部,单击“插入”,然后单击“活动”。

  3. 在“集成模块”列中,选择包含活动的模块。

  4. 在“活动”窗格中,选择活动。

  5. 在“说明”列中,记下活动的说明。 (可选)可以单击“查看详细帮助”以在浏览器中启动活动的帮助。

  6. 单击右箭头。

  7. 如果活动具有参数,则会列出它们以供参考。

  8. 单击选中按钮。

  9. 用于运行活动的代码会插入到 runbook 中。

  10. 如果活动需要参数,请提供适当的值以代替用括号 <> 括起的数据类型。

使用 Windows PowerShell 编辑自动化 Runbook

要使用 Windows PowerShell 编辑 runbook,请使用选择的编辑器来编辑工作流,然后将它保存为 .ps1 文件。 可以使用 Get-SMARunbookDefinition cmdlet 检索 runbook 的内容,然后使用 Edit-SMARunbook cmdlet 将现有草稿工作流替换为已修改的工作流。

要通过脚本文件的内容创建新 runbook,请参阅d14db796-a3e5-4b1d-a098-e734ceae2e0e#ImportRunbookScriptPS。

使用 Windows PowerShell 检索 Runbook 的内容

下面的示例命令演示如何检索 runbook 的脚本并将它保存到脚本文件。 在此示例中,检索草稿版本。 还可以检索 runbook 的已发布版本,不过无法更改此版本。

$webServer = 'https://MyServer'
$port = 9090
$runbookName = "Test-Runbook"
$scriptPath = "c:\runbooks\Test-Runbook.ps1"

$runbookDefinition = Get-SMARunbookDefinition –WebServiceEndpoint $webServer –Port $port -Name $runbookName -Type Draft
$runbookContent = $runbookDefinition.Content

Out-File -InputObject $runbookContent -FilePath $scriptPath

使用 Windows PowerShell 更改 Runbook 的内容

下面的示例命令演示如何将 runbook 的现有内容替换为包含工作流的脚本文件的内容。

$webServer = 'https://MyServer'
$port = 9090
$runbookName = "Test-Runbook"
$scriptPath = "c:\runbooks\Test-Runbook.ps1"

Edit-SmaRunbook –WebServiceEndpoint $webServer –Port $port -Name $runbookName -Path $scriptPath -Overwrite
Publish-SmaRunbook –WebServiceEndpoint $webServer –Port $port –Name $runbookName –Path $scriptPath