您可以为特定工作流创建新执行对象以通过 Orchestrator REST API 运行工作流。

先决条件

确认您已导入 Orchestrator 中的示例工作流软件包。该软件包随 Orchestrator 示例应用程序 ZIP 文件附带提供。您可从 Orchestrator 文档页面中下载该文件。

过程

  1. 在定义的 URL 发起 GET 请求以检索要运行的工作流的定义:
    GET http://{orchestrator_host}:{port}/vco/api/workflows/{workflowID}/

    您会在请求的响应正文中收到工作流定义。在工作流定义中,您可以查看工作流的输入参数、工作流描述和其他信息。

  2. 在持有工作流执行对象的 URL 发起 POST 请求:
    POST https://{orchestrator_host}:{port}/vco/api/workflows/{workflowID}/executions/
  3. 在请求正文中,为 execution-context 元素中的工作流输入参数提供值。

    如果在请求正文中提供空的 execution-context,则工作流会使用其输入参数的默认值(如有)运行。

结果

如果 POST 请求成功,您会收到状态代码 202,并且响应正文为空,同时还会收到在 Location 标头中新创建执行对象的链接。

运行“发送问候”工作流

您可以检索“发送问候”工作流的定义并进行运行。

  1. 在持有“发送问候”工作流定义的 URL 发起 GET 请求:

    GET https://localhost:8281/vco/api/workflows/CF808080808080808080808080808080DA808080013086668236014a0614d16e1/

    您会在请求的响应正文中收到工作流定义:

    <xml version="1.0" encoding="UTF-8" standalone="yes">
    <workflow xmlns="http://www.vmware.com/vco" customized-icon="false"
       href="https://localhost:8281/vco/api/workflows/CF808080808080808080808080808080DA808080013086668236014a0614d16e1/">
       <relations>
          <link rel="up"
            href="https://localhost:8281/vco/api/inventory/System/Workflows/Samples/HelloWorld/" />
          <link rel="add"
            href="https://localhost:8281/vco/api/workflows/CF808080808080808080808080808080DA808080013086668236014a0614d16e1/executions/" />
          <link rel="down"
            href="https://localhost:8281/vco/api/workflows/CF808080808080808080808080808080DA808080013086668236014a0614d16e1/executions/" />
          <link rel="down"
            href="https://localhost:8281/vco/api/workflows/CF808080808080808080808080808080DA808080013086668236014a0614d16e1/presentation/" />
          <link rel="down"
          	 href="https://localhost:8281/vco/api/workflows/CF808080808080808080808080808080DA808080013086668236014a0614d16e1/tasks/" />
          <link rel="down"
            href="https://localhost:8281/vco/api/workflows/CF808080808080808080808080808080DA808080013086668236014a0614d16e1/icon/" />
       </relations>
       <input-parameters>
          <parameter name="name" type="string" />
       </input-parameters>
       <output-parameters>
          <parameter name="message" type="string" />
       </output-parameters>
       <name>Send Hello</name>
    	  <description></description>
    </workflow>
  2. 在持有工作流执行对象的 URL 发起 POST 请求:

    POST https://localhost:8281/vco/api/workflows/CF808080808080808080808080808080DA808080013086668236014a0614d16e1/executions/

    在请求正文中,为 execution-context 元素中的输入参数传递值:

    <execution-context  xmlns="http://www.vmware.com/vco">
       <parameters>
          <parameter name="name" type="string">
             <string>John Smith</string>
           </parameter>
        </parameters>
    </execution-context>