직렬 워크플로의 시작 워크플로 및 병렬 워크플로의 시작 워크플로를 사용하여 선택한 개체에서 워크플로를 실행할 수 있습니다.

시작하기 전에

워크플로 편집기에서 편집하기 위해 워크플로를 엽니다.

이 태스크 정보

직렬 워크플로의 시작 워크플로 및 병렬 워크플로의 시작 워크플로는 직접 실행할 수 없습니다. 사용자가 만든 다른 워크플로에 포함해야 합니다. 직렬 워크플로의 시작 워크플로 및 병렬 워크플로의 시작 워크플로를 사용하여 선택한 개체에서 워크플로를 실행하려면 워크플로를 실행할 개체를 가져와야 합니다. 워크플로에 필요한 다른 모든 입력 매개 변수와 함께 이러한 개체를 워크플로에 속성 어레이로 전달합니다. 직렬 워크플로의 시작 워크플로 및 병렬 워크플로의 시작 워크플로는 선택한 개체에 대한 워크플로 실행 결과를 WorkflowToken 개체의 어레이로 내보냅니다.

직렬 워크플로의 시작 워크플로 및 병렬 워크플로의 시작 워크플로는 동일한 방식으로 구현됩니다. 직렬 워크플로의 시작 워크플로는 각 개체에서 워크플로를 순차적으로 실행합니다. 병렬 워크플로의 시작 워크플로는 모든 개체에서 워크플로를 동시에 실행합니다.

프로시저

  1. 워크플로 스키마에서 스크립팅 가능한 작업 요소 또는 작업을 추가하여 워크플로를 실행할 개체 목록을 가져옵니다.

    예를 들어 가상 시스템 폴더의 모든 가상 시스템에서 워크플로를 실행하려면 getAllVirtualMachinesByFolder 작업을 워크플로에 추가하면 됩니다.

  2. 스크립팅된 요소 또는 작업을 연결하고 스크립팅된 요소 또는 작업의 입력 및 출력을 워크플로 입력 또는 특성에 바인딩합니다.

    예를 들어 getAllVirtualMachinesByFolder 작업의 vmFolder 입력을 워크플로 입력 매개 변수에 바인딩하고 actionResult 출력을 호출하는 워크플로의 워크플로 특성에 바인딩할 수 있습니다.

  3. 스크립팅 가능한 작업 요소를 추가하여 개체 목록을 속성 어레이로 캐스트합니다.

    예를 들어 워크플로를 실행할 개체가 getAllVirtualMachinesByFolder 작업의 actionResult 출력에서 반환된 가상 시스템 어레이 allVMs인 경우 다음 스크립트를 작성하여 개체를 속성 어레이로 캐스트할 수 있습니다.

    propsArray = new Array();
    
    for each (var vm in allVMs) {
     var prop = new Properties();
     prop.put("vm", vm);
     propsArray.push(prop);
    }
  4. 스크립팅 가능한 작업 요소의 입력 및 출력을 워크플로 특성에 바인딩합니다.

    3의 스크립팅 가능한 작업 요소 예에서 입력을 allVMs 가상 시스템 어레이에 바인딩하고 propsArray 출력 특성을 Properties 개체의 어레이로 생성합니다.

  5. 워크플로 요소를 워크플로 스키마에 추가합니다.
  6. 직렬 워크플로의 시작 워크플로 또는 병렬 워크플로의 시작 워크플로를 선택하고 워크플로 요소를 나머지 요소에 연결합니다.
  7. 직렬 워크플로의 시작 워크플로 또는 병렬 워크플로의 시작 워크플로에 대한 wf 입력을 개체에서 실행할 워크플로에 바인딩합니다.

    예를 들어 getAllVirtualMachinesByFolder 작업에서 반환되는 모든 가상 시스템의 스냅샷을 제거하려면 모든 스냅샷 제거 워크플로를 선택합니다.

  8. 직렬 워크플로의 시작 워크플로 또는 병렬 워크플로의 시작 워크플로에 대한 parameters 입력을 워크플로를 실행할 개체가 포함된 Properties 개체 어레이에 바인딩합니다.

    예를 들어 parameters 입력을 4에 정의된 propsArray 특성에 바인딩합니다.

  9. (선택 사항) : 직렬 워크플로의 시작 워크플로 또는 병렬 워크플로의 시작 워크플로에 대한 workflowTokens 출력을 워크플로의 특성에 바인딩합니다.
  10. (선택 사항) : 직렬 워크플로의 시작 워크플로 또는 병렬 워크플로의 시작 워크플로 실행 결과를 사용하는 다른 요소를 계속 추가합니다.

결과

직렬 워크플로의 시작 워크플로 및 병렬 워크플로의 시작 워크플로를 사용하여 선택한 개체에서 워크플로를 실행하는 워크플로를 만들었습니다.