Orchestrator

Configure a Workflow

O conteúdo de toda a Central de Ajuda é traduzido automaticamente de inglês pelo Phrase Language AI.

Para continuar com o fluxo de trabalho de amostra, ele precisará ser configurado.

A configuração de blocos pode ser acessada clicando em Edicionar parâmetros na aba Configurar ou clicando com o clique direito no bloco e selecionando Edicionar parâmetros para abrir a janela Edicionar parâmetros. Assim que um bloco tiver parâmetros, o botão adicionar parâmetros será alterado para editar parâmetros.

Para configurar os blocos para o exemplo, siga estes passos:

  1. Abra a janela Edicionar parâmetros para a ação language-blue.svgListas locais.

  2. Os campos token de acesso e projeto precisarão de valores dinâmicos que sejam resolvidos no momento de execução.

    1. Clique no Orc_link.jpg do ícone de link para o campo token de acesso e selecione a ação circle-blue.svgTokens de acesso do Fetch.

      O link se torna verde e o campo pode ser editado.

    2. A sintaxe para acessar as propriedades de um acionamento ou ação referido é:

      {{$.path.to.value}}

      Com a saída para os tokens de acesso do circle-blue.svgFetch sendo:

      { "tokens": {"strings_token": "STRINGS_TOKEN", "tms_token": "TMS_TOKEN"} }

      fazendo a expressão necessária para o {{$.tokens.strings_token}} de campo token de acesso.

    3. Clique no ícone de link Orc_link.jpg para o campo projeto e selecione o acionamento history-orange.svguploads:crear.

      O link se torna verde e o campo pode ser editado.

    4. A saída do acionamento history-orange.svguploads:create é semelhante:

      {
        "branch": {
          "name": "my_branch"
        },
        "event": "uploads:criar",
        "message": "usuário-1 arquivo inicializado upload file.yml no projeto nome_1672734591_11 no ramo my_ramo\n",
        "project": {
          "created_at": "2023-01-03 08:29:51 UTC",
          "id": "abcdabcdabcdabcd-11",
          "main_format": "yml",
          "name": "name_1672734591_10",
          "point_of_contact": null,
          "project_image_url": null,
          "slug": "name_1672734591_10",
          "updated_at": "2023-01-03 08:29:51 UTC"
        },
        "upload": {
          "created_at": "2023-01-03 08:29:48 UTC",
          "filename": "file.yml",
          "format": "yml",
          "id": "upload-1",
          "state": "initialized",
          "summary": {},
          "tag": null,
          "updated_at": "2023-01-03 08:29:48 UTC"
        },
        "user": {
          "gravatar_uid": "29a2d1baa67d4ea524cf0f247f7bbb94",
          "id": "9c365b9a6f77c247c3de959f6152b231",
          "name": "Joe Sixpack",
          "username": "user-1"
        }
      }
      

      fazendo a expressão necessária para o {{$.project.id}} de campo do projeto.

    5. Clique em Gravar.

      As janelas Edicionar parâmetros são fechadas e os parâmetros da ação são salvos

  3. O local padrão do projeto é necessário criar um trabalho transferindo o ID para a ação work-blue.svgCriar trabalho. A ação circle-blue.svgTransform JSON with jq leva uma entrada JSON, aplica o filtro especificado e então retorna ao JSON

    1. Na aba acções na janela blocos de fluxo de trabalho, procure Phrase-jq.

      Arraste e solte o bloco de ação circle-blue.svgTransformar JSON com jq abaixo da ação de language-blue.svglista locais para conectá-los.

    2. Abra a janela Edicionar parâmetros para a ação Transformar JSON com jq.

    3. Selecione JSON no campo suspenso Tipo de entrada.

    4. Clique no Orc_link.jpg do ícone de link para o campo Input e selecione a ação language-blue.svglista locais.

      O link se torna verde e o campo pode ser editado.

    5. O campo Input leva a entrada JSON. Uma expressão fixa especial (@ em vez de $) garante que toda a saída da ação referida seja passada ao campo.

      Insira a expressão {{@.outputs.result}} no campo Input.

    6. Clique no Orc_link.jpg do ícone de link para o campo Jq e selecione a ação language-blue.svglista locais.

      O link se torna verde e o campo pode ser editado.

    7. É necessário filtrar a lista de locais para retornar uma nova lista contendo todos os elementos em que a propriedade padrão é verdadeira.

      Apenas pode haver um local padrão por projeto e a lista tem um elemento identificável e obrigatório. Esse elemento é acessado diretamente com a sintaxe de .[0] matriz.

      Insira a expressão map(select(.default)) |.[0] no campo Jq.

    8. Clique em Gravar.

      As janelas Edicionar parâmetros são fechadas e os parâmetros da ação são salvos

  4. A ação work-blue.svgCriar trabalho já pode ser configurada e usará padrões de blocos anteriores.

    1. Clique no Orc_link.jpg do ícone de link para o campo token de acesso e selecione a ação circle-blue.svgTokens de acesso do Fetch.

      O link se torna verde e o campo pode ser editado.

      Digite a expressão {{$.tokens.strings_token}}.

    2. Clique no ícone de link Orc_link.jpg para o campo projeto e selecione o acionamento language-orange.svguploads:crear.

      O link se torna verde e o campo pode ser editado.

      Digite a expressão {{$.project.id}}.

    3. Clique no Orc_link.jpg do ícone de link para o campo local do texto original e selecione a ação Transformar JSON com jq.

      O link se torna verde e o campo pode ser editado.

      Digite a expressão {{@.outputs.result}}.

    4. A data de entrega pode ser calculada com funções sprig ou Expr, mas para fins deste exemplo será usada uma data codificada hardcoded entendida pela API.

      No campo Data de entrega, digite 2023-12-31T12:00:00Z.

    5. Clique em Gravar.

      A configuração é gravada e os detalhes podem ser visualizados na aba configuração.

  5. Cada ação pode ter uma ou mais condições combinadas com lógico E e OU. Essas condições são avaliadas em tempo de execução, e a ação e seus subtipos só serão executados se a condição for avaliada como verdadeira.

    Para refletir isso no exemplo, ao ter a ação work-blue.svgCriar um trabalho selecionada, clique em Edicionar condições na aba Condições ou clique com clique direito no bloco e selecione Edicionar condições.

    A janela Edicionar condicionais é aberta.

    1. Seguindo os padrões de blocos anteriores, vincule o campo variável aos language-orange.svguploads:create acionamento e insira a expressão {{$.upload.tag}}.

    2. Selecione NÃO na primeira lista suspensa para inverter a declaração.

    3. Selecione IsNull na lista suspensa de comparar.

    4. Clique em Gravar.

      A condição é apresentada na aba condições.

    O fluxo de trabalho será interrompido neste ponto se o upload não contiver um código (pelo que não houve chaves novas/atualizadas/traduções).

  6. Os locais de tradução agora são necessários para o trabalho. Para os efeitos do exemplo, serão criados dois locais; um para o espanhol (es-ES) e um para o alemão (de-DE). Os locais serão adicionados aos dois circle-blue.svgJSON Transform com ações jq na janela Edicionar parâmetros como na etapa 3.

    1. No campo Input de ambas ações insira a expressão {{@.outputs.result}}, vincule-se à ação language-blue.svglista locais e grave o parâmetro.

    2. No campo Jg de uma ação, insira a ação expressão map(select(.name == "es-ES") |.[0] e vincule-se à ação language-blue.svglista locais.

      Gravar o parâmetro.

    3. Na segunda ação, insira a expressão map(select(.name == "de-DE") |.[0] e vincule-se à ação language-blue.svglista locais.

      Gravar o parâmetro.

  7. Os locais agora serão aplicados à criação de trabalhos.

    Configurar os dois work-blue.svgAdicionar um local de tradução a uma ação de trabalho com os mesmos padrões definidos anteriormente.

  8. O trabalho já pode ser iniciado.

    Configure a ação work-blue.svgIniciar trabalho com os mesmos padrões definidos anteriormente.

Esse artigo foi útil?

Sorry about that! In what way was it not helpful?

The article didn’t address my problem.
I couldn’t understand the article.
The feature doesn’t do what I need.
Other reason.

Note that feedback is provided anonymously so we aren't able to reply to questions.
If you'd like to ask a question, submit a request to our Support team.
Thank you for your feedback.