Você pode usar os fluxos de trabalho Iniciar fluxos de trabalho em uma série e Iniciar fluxos de trabalho em paralelo para executar um fluxo de trabalho em uma seleção de objetos.

Não é possível executar os fluxos de trabalho Iniciar fluxos de trabalho em uma série e Iniciar fluxos de trabalho em paralelo diretamente. Você deve incluí-los em outro fluxo de trabalho que criar. Para usar os fluxos de trabalho Iniciar fluxos de trabalho em uma série e Iniciar fluxos de trabalho em paralelo para executar um fluxo de trabalho em uma seleção de objetos, você deve obter os objetos nos quais executar o fluxo de trabalho. Você passa esses objetos e qualquer outro parâmetro de entrada que o fluxo de trabalho exige para o fluxo de trabalho como uma matriz de propriedades. Os fluxos de trabalho Iniciar fluxos de trabalho em uma série e Iniciar fluxos de trabalho em paralelo emitem os resultados da execução do fluxo de trabalho na seleção de objetos como uma matriz de objetos WorkflowToken.

Você implementa os fluxos de trabalho Iniciar fluxos de trabalho em uma série e Iniciar fluxos de trabalho em paralelo da mesma forma. O fluxo de trabalho Iniciar fluxos de trabalho em uma série executa o fluxo de trabalho em cada objeto sequencialmente. O fluxo de trabalho Iniciar fluxos de trabalho em paralelo executa o fluxo de trabalho em todos os objetos simultaneamente.

Pré-requisitos

Abra um fluxo de trabalho para edição no editor de fluxo de trabalho.

Procedimento

  1. No esquema de fluxo de trabalho, adicione uma Tarefa programável por script ou um Elemento de ação para obter uma lista de objetos nos quais o fluxo de trabalho será executado.
    Por exemplo, para executar um fluxo de trabalho em todas as máquinas virtuais em uma pasta de máquina virtual, você pode adicionar a ação getAllVirtualMachinesByFolder ao fluxo de trabalho.
  2. Vincule a ação ou o elemento com script e associe a entrada e a saída da ação ou elemento com script a variáveis ou entradas de fluxo de trabalho.
    Por exemplo, você pode associar a entrada vmFolder da ação getAllVirtualMachinesByFolder a um parâmetro de entrada de fluxo de trabalho e à saída actionResult para uma variável de fluxo de trabalho de chamada.
  3. Adicione um elemento Tarefa programável por script para converter a lista de objetos em uma matriz de propriedades.
    Por exemplo, se os objetos nos quais executar o fluxo de trabalho forem uma matriz de máquinas virtuais, allVMs, retornados pela saída actionResult da ação getAllVirtualMachinesByFolder, você poderá escrever o seguinte script para converter os objetos em uma matriz de propriedades.
    propsArray = new Array();
    
    for each (var vm in allVMs) {
     var prop = new Properties();
     prop.put("vm", vm);
     propsArray.push(prop);
    }
  4. Associe as entradas e saídas da tarefa programável por script a variáveis de fluxo de trabalho.
    No exemplo de elemento de tarefa programável por script na etapa 3, você associa a entrada à matriz allVMs de máquinas virtuais e cria a variável de saída propsArray como uma matriz de objetos Properties.
  5. Adicione um elemento de Fluxo de trabalho ao esquema de fluxo de trabalho.
  6. Selecione os fluxos de trabalho Iniciar fluxos de trabalho em uma série ou Iniciar fluxos de trabalho em paralelo e associe o elemento de fluxo de trabalho aos outros elementos.
  7. Para executar os objetos, associe a entrada wf do fluxo de trabalho Iniciar fluxos de trabalho em uma série ou Iniciar fluxos de trabalho em paralelo ao fluxo de trabalho.
    Por exemplo, para remover qualquer snapshot de todas as máquinas virtuais retornadas pela ação getAllVirtualMachinesByFolder, selecione o fluxo de trabalho Remover todos os snapshots.
  8. Associe a entrada parameters do fluxo de trabalho Iniciar fluxos de trabalho em uma série ou Iniciar fluxos de trabalho em paralelo à matriz de objetos Properties que contenha os objetos nos quais o fluxo de trabalho será executado.
    Por exemplo, associe a entrada parameters à variável propsArray definida na etapa 4.
  9. (Opcional) Associe a saída workflowTokens do fluxo de trabalho Iniciar fluxos de trabalho em uma série ou Iniciar fluxos de trabalho em paralelo a uma variável no fluxo de trabalho.
  10. (Opcional) Continue adicionando mais elementos que usam os resultados do fluxo de trabalho Iniciar fluxos de trabalho em uma série ou Iniciar fluxos de trabalho em paralelo.

Resultados

Você criou um fluxo de trabalho que usa um dos fluxos de trabalho Iniciar fluxos de trabalho em uma série ou Iniciar fluxos de trabalho em paralelo para executar um fluxo de trabalho em uma seleção de objetos.