为了能够使用工作流执行任意类型的操作,您必须在 Orchestrator 清单中找到该工作流并检索其定义。定义列出了工作流输入和输出参数,并包含可用工作流运行的链接、工作流展示以及其他对象。

先决条件

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

过程

  1. 查找工作流的清单条目。
    • 如果您拥有工作流的全名或名称中的关键字,请应用筛选器以在工作流服务的 URL 发起 GET 请求:

      GET https://{orchestrator_host}:{port}/vco/api/workflows?conditions=name={workflowFullName}
      
      GET https://{orchestrator_host}:{port}/vco/api/workflows?conditions=name~{keyWord}
    • 在作为工作流清单条目入口点的 URL 发起 GET 请求,通过目录或清单服务搜索工作流:

      GET https://{orchestrator_host}:{port}/vco/api/catalog/System/Workflow/
      
      GET https://{orchestrator_host}:{port}/vco/api/inventory/System/Workflows/
  2. 在工作流清单条目的 URL 发起 GET 请求以检索工作流清单条目:
    GET https://{orchestrator_host}:{port}/vco/api/catalog/System/Workflow/{workflowID}/
  3. 在定义的 URL 发起 GET 请求以检索工作流定义:
    GET https://{orchestrator_host}:{port}/vco/api/workflows/{workflowID}/

搜索“发送问候”工作流

您可以查找“发送问候”工作流并检索其定义:

  1. 若要查找“发送问候”工作流,请应用筛选器以在工作流服务的 URL 发起 GET 请求:

    GET https://localhost:8281/vco/api/workflows?conditions=name~Hello

    您会收到一组工作流列表,工作流名称中会包含问候一词:

    <xml version="1.0" encoding="UTF-8" standalone="yes">
    <inventory-items xmlns="http://www.vmware.com/vco" total="2">
       <link rel="down"
          href="https://localhost:8281/vco/api/catalog/System/Workflow/CF808080808080808080808080808080E6808080013086668236014a0614d16e1/">
           <attributes>
              <attribute name="id" value="CF808080808080808080808080808080E6808080013086668236014a0614d16e1"/>
              <attribute name="canExecute" value="true" />
              <attribute name="description" value="" />
              <attribute name="name" value="Interactive Hello World" />
              <attribute name="type" value="Workflow"/>
              <attribute name="canEdit" value="true"/>
          </attributes>
        </link>
        <link rel="down"
          href="https://localhost:8281/vco/api/catalog/System/Workflow/CF808080808080808080808080808080DA808080013086668236014a0614d16e1/">
          <attributes>
              <attribute name="id" value="CF808080808080808080808080808080DA808080013086668236014a0614d16e1"/>
              <attribute name="canExecute" value="true" />
              <attribute name="description" value="" />
              <attribute name="name" value="Send Hello" />
              <attribute name="type" value="Workflow"/>
              <attribute name="canEdit" value="true"/>
          </attributes>
       </link>
    </inventory-items>
  2. 在“发送问候”工作流的清单条目的 URL 发起 GET 请求:

    GET https://localhost:8281/vco/api/catalog/System/Workflow/CF808080808080808080808080808080DA808080013086668236014a0614d16e1/

    您会在响应正文中收到“发送问候”工作流的清单条目:

    <xml version="1.0" encoding="UTF-8" standalone="yes">
    <inventory-item xmlns="http://www.vmware.com/vco"
       href="https://localhost:8281/vco/api/catalog/System/Workflow/CF808080808080808080808080808080DA808080013086668236014a0614d16e1/">
       <relations>
          <link rel="down"
           href="https://localhost:8281/vco/api/workflows/CF808080808080808080808080808080DA808080013086668236014a0614d16e1/" />
    	  </relations>
       <attributes>
          <attribute name="id" value="CF808080808080808080808080808080DA808080013086668236014a0614d16e1"/>
          <attribute name="canExecute" value="true" />
          <attribute name="description" value="" />
          <attribute name="name" value="Send Hello" />
          <attribute name="type" value="Workflow"/>
          <attribute name="canEdit" value="true"/>
       </attributes>
    </inventory-item>
  3. 若要检索工作流定义,请在其 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>