O Code Stream pode se integrar ao vRealize Orchestrator (vRO) para estender seu recurso executando fluxos de trabalho do vRO. O vRealize Orchestrator inclui muitos fluxos de trabalho predefinidos que podem ser integrados a ferramentas de terceiros. Esses fluxos de trabalho ajudam a automatizar e gerenciar seus processos de DevOps, automatizar as operações em massa e muito mais.

Por exemplo, é possível usar um fluxo de trabalho em uma tarefa do vRO no pipeline para ativar um usuário, remover um usuário, mover VMs, integrar a estruturas de teste para testar o código enquanto o pipeline é executado, e muito mais. É possível procurar exemplos de código para os fluxos de trabalho do vRealize Orchestrator em code.vmware.com.

Com um fluxo de trabalho do vRealize Orchestrator, seu pipeline pode executar uma ação enquanto compila, testa e implanta o aplicativo. É possível incluir fluxos de trabalho predefinidos no pipeline ou criar e usar fluxos de trabalho personalizados. Cada fluxo de trabalho inclui entradas, tarefas e saídas.

Para executar um fluxo de trabalho do vRO no pipeline, o fluxo de trabalho deve aparecer na lista de fluxos de trabalho disponíveis na tarefa do vRO incluída no pipeline.

Antes que o fluxo de trabalho possa aparecer na tarefa do vRO no pipeline, um administrador deve realizar as seguintes etapas no vRealize Orchestrator:

  1. Aplique a tag CODESTREAM ao fluxo de trabalho do vRO.
  2. Marque o fluxo de trabalho do vRO como global.

Pré-requisitos

  • Verifique se, como administrador, você pode acessar uma instância local do vRealize Orchestrator. Para obter ajuda, consulte seu próprio administrador e a documentação do vRealize Orchestrator.
  • Verifique se você é membro de um projeto no Code Stream. Se não for, peça a um administrador do Code Stream para adicioná-lo como membro de um projeto. Consulte Como adicionar um projeto no Code Stream.
  • No Code Stream, crie um pipeline e adicione um estágio.

Procedimento

  1. Como administrador, prepare um fluxo de trabalho do vRealize Orchestrator para que seu pipeline seja executado.
    1. No vRealize Orchestrator, localize o fluxo de trabalho que você precisa usar no pipeline, como um fluxo de trabalho para habilitar um usuário.
      Se um fluxo de trabalho que não existe for necessário, é possível criá-lo.
    2. Na barra de pesquisa, insira Fluxo de trabalho de tag para encontrar o fluxo de trabalho denominado Fluxo de trabalho de tag.
    3. No cartão denominado Fluxo de trabalho de tag, clique em Executar, o que exibe a área de configuração.
    4. Na área de texto Fluxo de trabalho marcado, insira o nome do fluxo de trabalho a ser usado no pipeline do Code Stream e, em seguida, selecione-o na lista.
    5. Nas áreas de texto Tag e Valor áreas de texto, insira CODESTREAM em letras maiúsculas.
    6. Clique na caixa de seleção denominada Tag global.
    7. Clique em Executar, o que anexa a tag chamada CODESTREAM ao fluxo de trabalho que você precisa selecionar no pipeline do Code Stream.
    8. No painel de navegação, clique em Fluxos de trabalho e confirme se a tag chamada CODESTREAM aparece no cartão de fluxo de trabalho em que o pipeline será executado.
      Depois de fazer login no Code Stream e adicionar uma tarefa do vRO ao pipeline, o fluxo de trabalho marcado aparecerá na lista de fluxos de trabalho.
  2. No Code Stream, crie um endpoint para a instância do vRealize Orchestrator.
    1. Clique em Endpoints > Novo Endpoint.
    2. Selecione um projeto.
    3. Digite um nome relevante.
    4. Insira a URL do endpoint do vRealize Orchestrator.
      Use este formato: https://vro-appliance.yourdomain.local:8281
      Não use este formato: https://vro-appliance.yourdomain.local:8281/vco/api
      A URL para uma instância do vRealize Orchestrator que está integrada no dispositivo do vRealize Automation, é o FQDN do dispositivo sem uma porta. Por exemplo: https://vra-appliance.yourdomain.local/vco
      Para dispositivos do vRealize Orchestrator externos que começam com o vRealize Automation 8.x, o FQDN do dispositivo é https://vro-appliance.yourdomain.local
      Para dispositivos do vRealize Orchestrator externos incluídos com o vRealize Automation 7.x, o FQDN do dispositivo é https://vro-appliance.yourdomain.local:8281/vco
      Se ocorrer um problema ao adicionar o endpoint, talvez você precise importar uma configuração do YAML com uma impressão digital de certificado SHA-256 com os dois pontos removidos. Por exemplo, B0:01:A2:72... se torna B001A272.... O código YAML de amostra é semelhante a:
      ```
      ---
      project: Demo
      kind: ENDPOINT
      name: external-vro
      description: ''
      type: vro
      properties:
        url: https://yourVROhost.yourdomain.local
        username: yourusername
        password: yourpassword
        fingerprint: <your_fingerprint>
      ```
    5. Clique em Aceitar Certificado caso a URL inserida precise de um certificado.
    6. Se o endpoint do vRealize Orchestrator tiver a versão 8.0 a 8.7, você poderá selecionar Autenticação Básica ou Token para o tipo de Autenticação. Se o endpoint do vRealize Orchestrator tiver a versão 8.8 ou posterior, você deverá selecionar Token para o tipo de Autenticação.
      Observação: Se o endpoint do vRealize Orchestrator tiver a versão 8.8 ou posterior, não selecione Autenticação Básica. Não há suporte para Autenticação Básica e a criação do endpoint falhará.
      • Se você selecionar Autenticação Básica, digite o nome de usuário e a senha do servidor do vRealize Orchestrator.

        Se você estiver usando um usuário não local para autenticação, deverá omitir a parte do domínio do nome de usuário. Por exemplo, para se autenticar com [email protected], você deve svc_vro na área de texto Nome de usuário.

      • Se você selecionar Token para o tipo de autenticação, gere o Token Particular.
        O token de API do VMware Cloud Services autentica você para conexões de API externas com o Code Stream. Para obter o token de API:
        1. Clique em Gerar Token.
        2. Insira o endereço de e-mail associado ao seu nome de usuário e senha e clique em Gerar.
          O token gerado será válido por seis meses. Ele também é conhecido como token de atualização.
          • Para manter o token como uma variável para uso futuro, clique em Criar Variável, insira um nome para a variável e clique em Salvar.
          • Para manter o token como um valor de texto para uso futuro, clique em Copiar e cole o token em um arquivo de texto para salvar localmente.
          Você pode optar por criar uma variável e armazenar o token em um arquivo de texto para uso futuro.
        3. Clique em Fechar.
  3. Prepare seu pipeline para executar a tarefa do vRO.
    1. Adicione uma tarefa do vRO ao estágio do pipeline.
    2. Digite um nome relevante.
    3. Na área Propriedades do Fluxo de Trabalho, selecione o endpoint do vRealize Orchestrator.
    4. Selecione o fluxo de trabalho que você marcou como CODESTREAM no vRealize Orchestrator.
      Se selecionar um fluxo de trabalho personalizado seu, talvez seja necessário digitar os valores do parâmetro de entrada.
    5. Para Executar tarefa, clique em Na condição.
      Se você tiver que aplicar condições para a tarefa do vRealize Orchestrator, insira-as na área Condição.
    6. Insira as condições aplicáveis à execução do pipeline.
      Quando executar o pipeline... Selecionar condições...
      Na Condição

      Executa a tarefa de pipeline somente se a condição definida for avaliada como verdadeira. Se a condição for falsa, a tarefa será ignorada.

      A tarefa do vRO permite que você inclua uma expressão booleana que use os seguintes operandos e operadores.

      • Variáveis de pipeline, como ${pipeline.variableName}. Use chaves somente ao inserir variáveis.
      • Variáveis de saída da tarefa, como ${Stage1.task1.machines[0].value.hostIp[0]}.
      • Variáveis de associação de pipeline padrão, como ${releasePipelineName}.
      • Valores booleanos que não fazem distinção de maiúsculas e minúsculas, como true, false, 'true', 'false'.
      • Valores inteiros ou decimais sem aspas.
      • Valores de cadeia de caracteres usados com aspas simples ou duplas, como "test", 'test'.
      • Tipos numéricos e de cadeia de caracteres de valores, como == Equals e != Not Equals.
      • Operadores relacionais, como >, >=, < e <=.
      • Lógica booleana, como && e ||.
      • Operadores aritméticos, como +, -, * e /.
      • Expressões aninhadas usando parênteses.
      • As cadeias de caracteres que incluem o valor literal ABCD são avaliadas como falso e a tarefa é ignorada.
      • Não há suporte para operadores unários.

      Um exemplo de condição pode ser ${Stage1.task1.output} == “Passed” || ${pipeline.variableName} == 39

      Sempre Se você selecionar Sempre, o pipeline executará a tarefa sem condições.
    7. Digite uma mensagem de saudação.
    8. Clique em Validar Tarefa e corrija os erros que ocorrerem.
  4. Salve, ative e execute o pipeline.
  5. Após a execução do pipeline, examine os resultados.
    1. Clique em Execuções.
    2. Clique no pipeline.
    3. Clique na tarefa.
    4. Examine os resultados, o valor de entrada e as propriedades.
      É possível identificar o ID de execução do fluxo de trabalho, quem respondeu à tarefa e quando, bem como quaisquer comentários incluídos.

Resultados

Parabéns! Você marcou um fluxo de trabalho do vRealize Orchestrator para uso no Code Stream e adicionou uma tarefa do vRO no pipeline do Code Stream para que ele execute um fluxo de trabalho que automatiza uma ação no seu ambiente do DevOps.

Exemplo: Formato de saída da tarefa do vRO

O formato de saída para uma tarefa do vRO é semelhante a este exemplo.

[{
                "name": "result",
                "type": "STRING",
                "description": "Result of workflow run.",
                "value": ""
},
{
                "name": "message",
                "type": "STRING",
                "description": "Message",
                "value": ""
}]

O que Fazer Depois

Continue incluindo tarefas de fluxo de trabalho do vRO nos pipelines para poder automatizar tarefas em seus ambientes de desenvolvimento, teste e produção.