Orchestrator

Configura un flusso di lavoro

Contenuti tradotti automaticamente dall'inglese con Phrase Language AI.

Per continuare con il flusso di lavoro di esempio, sarà necessario configurarlo.

La configurazione del blocco può essere accessibile cliccando su Modifica parametri nella scheda Configura, oppure facendo clic destro sul blocco e selezionando Modifica parametri per aprire la finestra Modifica parametri. Una volta che un blocco ha parametri, il pulsante Aggiungi parametri cambia in Modifica parametri.

Per configurare i blocchi per l'esempio, segui questi passaggi:

  1. Apri la finestra Modifica parametri per l'azione language-blue.svgElenco località.

  2. I campi Token di accesso e Progetto richiederanno valori dinamici che vengono risolti durante l'esecuzione.

    1. Clicca sull'icona del link Linking Icon per il campo Token di accesso e seleziona l'azione circle-blue.svgRecupera token di accesso.

      Il link diventa verde e il campo può essere modificato.

    2. La sintassi per accedere alle proprietà di un trigger o azione referenziata è:

      {{$.path.to.value}}

      Con l'output per circle-blue.svgRecupera token di accesso che è:

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

      rendendo l'espressione necessaria per il campo Token di accesso {{$.tokens.strings_token}}.

    3. Clicca sull'icona del link Linking Icon per il campo Progetto e seleziona il trigger history-orange.svguploads:create.

      Il link diventa verde e il campo può essere modificato.

    4. L'output del trigger history-orange.svguploads:create assomiglia a:

      {
        "branch": {
          "name": "my_branch"
        },
        "evento": "uploads:create",
        "messaggio": "utente-1 ha inizializzato il caricamento del file file.yml nel progetto nome_1672734591_11 all'interno del branch 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"
        }
      }
      

      creando l'espressione richiesta per il campo Progetto {{$.project.id}}.

    5. Clicca su Salva.

      La finestra Modifica parametri si chiude e i parametri per l'azione vengono salvati

  3. Il locale predefinito del progetto è necessario per creare un lavoro passando l'ID all'azione work-blue.svgCrea Lavoro. L'azione circle-blue.svgTrasforma JSON con jq prende un input JSON, applica il filtro specificato e poi restituisce nuovamente JSON

    1. Dalla scheda Azioni nella finestra Blocchi di flusso di lavoro, cerca frase-jq.

      Trascina e rilascia il blocco dell'azione circle-blue.svgTrasforma JSON con jq sotto l'azione language-blue.svgelenco impostazioni locali per collegarli.

    2. Apri la finestra Modifica parametri per l'azione Trasforma JSON con jq.

    3. Seleziona JSON dal campo a discesa Tipo di input.

    4. Clicca sull'icona del link Linking Icon per il campo Input e seleziona l'azione language-blue.svgelenco impostazioni locali.

      Il link diventa verde e il campo può essere modificato.

    5. Il campo Input prende l'input JSON. Un'espressione fissa speciale (@ invece di $) garantisce che l'intero output dell'azione referenziata venga passato nel campo.

      Inserisci l'espressione {{@.outputs.result}} nel campo Input.

    6. Clicca sull'icona del link Linking Icon per il campo Jq e seleziona l'azione language-blue.svgelenco impostazioni locali.

      Il link diventa verde e il campo può essere modificato.

    7. È necessario un filtro dell'elenco delle impostazioni locali che restituisce un nuovo elenco contenente tutti gli elementi in cui la proprietà predefinito è true.

      Può esserci solo un locale predefinito per progetto e l'elenco ha un elemento identificabile e richiesto. Quell'elemento è accessibile direttamente con la sintassi dell'array .[0].

      Inserisci l'espressione map(select(.default))|.[0] nel campo Jq.

    8. Clicca su Salva.

      La finestra Modifica parametri si chiude e i parametri per l'azione vengono salvati

  4. L'azione work-blue.svgCrea un lavoro può ora essere configurata e utilizzerà modelli dai blocchi precedenti.

    1. Clicca sull'icona del link Linking Icon per il campo Token di accesso e seleziona l'azione circle-blue.svgRecupera token di accesso.

      Il link diventa verde e il campo può essere modificato.

      Inserisci l'espressione {{$.tokens.strings_token}}.

    2. Clicca sull'icona del link Linking Icon per il campo Progetto e seleziona il trigger language-orange.svguploads:create.

      Il link diventa verde e il campo può essere modificato.

      Inserisci l'espressione {{$.project.id}}.

    3. Fai clic sull'icona del link Linking Icon per il campo Origine locale e seleziona l'azione Trasforma JSON con jq.

      Il link diventa verde e il campo può essere modificato.

      Inserisci l'espressione {{@.outputs.result}}.

    4. La data di scadenza può essere calcolata con funzioni sprig o Expr, ma per scopi di questo esempio verrà utilizzata una data hardcoded compresa dall'API.

      Nel campo Data di scadenza, inserisci 2023-12-31T12:00:00Z.

    5. Clicca su Salva.

      La configurazione è salvata e i dettagli possono essere visualizzati nella scheda Configura.

  5. Ogni azione può avere una o più condizioni combinate con logico E e O. Queste condizioni vengono valutate in tempo reale e l'azione e i suoi figli verranno eseguiti solo se la condizione è vera.

    Per riflettere questo nell'esempio, mentre hai selezionato l'azione work-blue.svgCrea un lavoro, fai clic su Modifica condizioni dalla scheda Condizioni o fai clic con il tasto destro sul blocco e seleziona Modifica condizioni.

    Si apre la finestra Modifica condizionali.

    1. Seguendo i modelli dai blocchi precedenti, collega il campo variabile al trigger language-orange.svguploads:create e inserisci l'espressione {{$.upload.tag}}.

    2. Seleziona NON dal primo elenco a discesa per invertire l'affermazione.

    3. Seleziona IsNull dall'elenco a discesa confronta.

    4. Clicca su Salva.

      La condizione è presentata nella scheda Condizioni.

    Il flusso di lavoro si fermerà a questo punto se il caricamento non contiene un tag (significa che non ci sono nuove chiavi/traduzioni aggiornate).

  6. Le località target sono ora richieste per il lavoro. Per scopi dell'esempio, verranno create due località; una per lo spagnolo (es-ES) e una per il tedesco (de-DE). Le località verranno aggiunte alle due azioni circle-blue.svgTrasforma JSON con jq nella finestra Modifica parametri come nel passaggio 3.

    1. Nel campo Input di entrambe le azioni, inserisci l'espressione {{@.outputs.result}}, collega all'azione language-blue.svgElenco località e salva il parametro.

    2. Nel campo Jg di un'azione, inserisci l'espressione map(select(.name == "es-ES"))|.[0] e collega all'azione language-blue.svgElenco località.

      Salva il parametro.

    3. Nella seconda azione, inserisci l'espressione map(select(.name == "de-DE"))|.[0] e collega all'azione language-blue.svgElenco delle impostazioni locali.

      Salva il parametro.

  7. Le impostazioni locali saranno ora applicate alla creazione del lavoro.

    Configura le due azioni work-blue.svgAggiungi una destinazione locale a un lavoro con gli stessi schemi precedentemente definiti.

  8. Il lavoro può ora essere avviato.

    Configura l'azione work-blue.svgAvvia un lavoro con gli stessi schemi definiti in precedenza.

Questo articolo ti è stato utile?

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.