Orchestrator REST API를 사용하여 워크플로 실행의 대기 중인 사용자 상호 작용에 응답할 수 있습니다.

시작하기 전에

Orchestrator에서 샘플 워크플로 패키지를 가져왔는지 확인합니다. 이 패키지는 Orchestrator 설명서 페이지에서 다운로드할 수 있는 Orchestrator 샘플 애플리케이션 ZIP 파일에 포함되어 있습니다.

프로시저

  1. 사용 가능한 사용자 상호 작용 개체를 유지하는 URL에서 GET 요청을 만들거나 대기 중인 사용자 상호 작용만 필터링하여 모든 사용자 상호 작용 개체의 목록을 검색합니다.

    URL

    설명

    https://orchestrator_host:port/vco/api/catalog/System/UserInteraction

    Orchestrator에서 사용 가능한 사용자 상호 작용 개체를 유지합니다.

    https://orchestrator_host:port/vco/api/catalog/System/UserInteraction?status=0

    대기 중인 사용자 상호 작용 개체만 필터링합니다.

    사용 가능한 사용자 상호 작용 개체 목록이 수신됩니다. 대기 중인 사용자 상호 작용에는 이름이 state이고 값이 waiting인 특성이 있습니다.

  2. 응답할 대기 중인 사용자 상호 작용의 인벤토리 항목을 유지하는 URL에서 GET 요청을 만듭니다.
    GET https://{orchestrator_host}:{port}/vco/api/catalog/System/UserInteraction/{userInteractionID}/

    인벤토리 항목에 사용자 상호 작용 인스턴스에 대한 링크가 포함됩니다. 사용자 상호 작용 인스턴스는 특정 워크플로 실행과 연결됩니다.

  3. 특정 워크플로 실행에 대한 사용자 상호 작용 인스턴스의 URL에서 POST 요청을 만듭니다.
    POST https://{orchestrator_host}:{port}/vco/api/workflows/{workflowID}/executions/{executionID}/interaction/
  4. 요청 본문의 execution-context 요소에 사용자 상호 작용의 입력 매개 변수에 대한 값을 제공합니다.

결과

사용자 상호 작용에 성공적으로 응답한 경우 REST API에서 204 상태를 반환합니다.

대화형 Hello World 워크플로의 사용자 상호 작용에 응답

대화형 Hello World 샘플 워크플로를 실행하여 해당 사용자 상호 작용에 응답할 수 있습니다.

  1. Catalog Service의 사용자 상호 작용 개체에 대한 끝점에서 GET 요청을 만들어 워크플로의 대기 중인 사용자 상호 작용을 검색합니다.

    GET https://localhost:8281/vco/api/catalog/System/UserInteraction?status=0
  2. 대화형 Hello World 워크플로에 대한 사용자 상호 작용 인벤토리 개체를 찾아 해당 URL에서 GET 요청을 만듭니다.

    GET https://localhost:8281/vco/api/catalog/System/UserInteraction/888080808080808080808080808080805A8080800132145338690643f66a027ec/
  3. 현재 실행 중인 워크플로 실행에 대한 사용자 상호 작용 개체의 URL에서 POST 요청을 만듭니다.

    POST https://localhost:8281/vco/api/workflows/CF808080808080808080808080808080E6808080013086668236014a0614d16e1/executions/88808080808080808080808080808080578080800132145338690643f66a027ec/interaction/

    요청 본문에서 입력 매개 변수에 대한 값을 제공합니다.

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