Orchestrator

Configurar um fluxo de trabalho

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 exemplo, ele precisará ser configurado.

A configuração do bloco pode ser acessada clicando em Editar parâmetros na aba Configurar, ou clicando com o botão direito no bloco e selecionando Editar parâmetros para abrir a janela Editar parâmetros. Assim que um bloco tiver parâmetros, o botão Adicionar parâmetros muda para Editar parâmetros.

Para configurar os blocos para o exemplo, siga estas etapas:

  1. Abra a janela Editar parâmetros para a ação language-blue.svgListar localidades.

  2. Os campos Token de acesso e Projeto exigirão valores dinâmicos que são resolvidos em tempo de execução.

    1. Clique no ícone de link Linking Icon para o campo Token de acesso e selecione a ação circle-blue.svgBuscar tokens de acesso.

      O link fica verde e o campo pode ser editado.

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

      {{$.path.to.value}}

      Com a saída para circle-blue.svgBuscar tokens de acesso sendo:

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

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

    3. Clique no ícone de link Linking Icon para o campo Projeto e selecione o gatilho history-orange.svguploads:criar.

      O link fica verde e o campo pode ser editado.

    4. A saída do gatilho history-orange.svguploads:criar se assemelha a:

      {
        "branch": {
          "name": "my_branch"
        },
        "event": "uploads:create",
        "message": "usuário-1 inicializou o upload do arquivo file.yml no projeto name_1672734591_11 dentro do ramo my_branch\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"
        }
      }
      

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

    5. Clique em Gravar.

      A janela editar parâmetros fecha e os parâmetros para a ação são salvos

  3. O local padrão do projeto é necessário para Criar um trabalho passando o ID para a ação work-blue.svgCriar trabalho. A ação circle-blue.svgTransform JSON with jq recebe uma saída JSON, aplica o filtrar especificado e então gera JSON novamente

    1. Na aba Actions na janela Workflow blocks, pesquise por Phrase-jq.

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

    2. Abra a janela editar parâmetros para a ação Transform JSON with jq.

    3. Selecionar JSON no campo suspenso Input Type.

    4. Clique no ícone de link Linking Icon para o campo Input e Selecionar a ação language-blue.svglista de locais.

      O link fica verde e o campo pode ser editado.

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

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

    6. Clique no ícone de link Linking Icon para o campo Jq e Selecionar a ação language-blue.svglista de locais.

      O link fica verde e o campo pode ser editado.

    7. É necessário filtrar a lista de locais que retorna uma nova lista contendo todos os elementos onde a propriedade default é true.

      Pode haver apenas 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 matriz .[0].

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

    8. Clique em Gravar.

      A janela editar parâmetros fecha e os parâmetros para a ação são salvos

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

    1. Clique no ícone de link Linking Icon para o campo Token de acesso e selecione a ação circle-blue.svgBuscar tokens de acesso.

      O link fica verde e o campo pode ser editado.

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

    2. Clique no ícone de link Linking Icon para o campo Projeto e selecione o gatilho language-orange.svguploads:criar.

      O link fica verde e o campo pode ser editado.

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

    3. Clique no ícone de link Linking Icon para o campo local de origem e selecione a ação Transformar JSON com jq.

      O link fica verde e o campo pode ser editado.

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

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

      No campo Data de vencimento, insira 2023-12-31T12:00:00Z.

    5. Clique em Gravar.

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

  5. Cada ação pode ter uma ou mais condições combinadas com AND e OR lógicos. Essas condições são avaliadas em tempo de execução e a ação e seus filhos só serão executados se a condição for avaliada como verdadeira.

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

    A janela Editar condicionais é aberta.

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

    2. Selecione NOT na primeira lista suspensa para inverter a declaração.

    3. Selecione IsNull na lista suspensa comparar.

    4. Clique em Gravar.

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

    O fluxo de trabalho parará neste ponto se o upload não contiver um código (o que significa que não houve novas chaves/traduções ou atualizações).

  6. Locais de tradução agora são obrigatórios para o trabalho. Para fins deste exemplo, dois locais serão criados; um para espanhol (es-ES) e um para alemão (de-DE). Locais serão adicionados às duas ações circle-blue.svgTransformar JSON com jq na janela Editar parâmetros como na etapa 3.

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

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

      Grave o parâmetro.

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

      Grave o parâmetro.

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

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

  8. O trabalho pode agora ser iniciado.

    Configure a ação work-blue.svgIniciar um 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.