

Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.

# Convalida delle definizioni del flusso di lavoro a livello locale
<a name="workflows-validate-local"></a>

È possibile convalidare una definizione del flusso di lavoro con gli strumenti propri del linguaggio del flusso di lavoro prima di chiamare `CreateWorkflow` o `CreateWorkflowVersion`. Rileva problemi come errori di sintassi e riferimenti che non si risolvono.

La convalida locale verifica la definizione in base alla lingua del flusso di lavoro, non in base alla lingua del flusso di lavoro HealthOmics requisiti. Per i linter che HealthOmics viene eseguito durante la creazione del flusso di lavoro, vedere [Il flusso di lavoro si interrompe HealthOmics](workflows-linter.md).

## Installazione di un validatore
<a name="workflows-validate-local-install"></a>

I validatori sono software di terze parti che AWS non mantiene.
+ **WDL** — Installa [miniwdl](https://miniwdl.readthedocs.io/en/latest/getting_started.html), un toolkit locale per runner e sviluppatori per WDL.
+ **Nextflow** — Installare [Nextflow](https://docs.seqera.io/nextflow/install) v25.10 o successivo. Le versioni precedenti non hanno il `nextflow lint` comando o segnala nessun avviso.
+ **CWL** — Installa [cwltool](https://cwltool.readthedocs.io/en/latest/), l'implementazione di riferimento degli standard CWL.

**Nota**  
La tua corsa può utilizzare una versione di Nextflow precedente a quella con cui esegui il lint. La `nextflow lint` il comando viene analizzato con una sintassi rigorosa, che l'esecuzione potrebbe non utilizzare. Quindi, prima di riscrivere una definizione per soddisfare un risultato di sintassi, controlla quale versione di sintassi utilizza l'esecuzione, descritta in [Specifica la versione della sintassi Nextflow](workflow-definition-nextflow.md#nextflow-syntax-version). Per come HealthOmics seleziona la versione Nextflow per una corsa, vedi [Versioni Nextflow](workflows-lang-versions.md#workflows-versions-p2).

## Esecuzione del validatore
<a name="workflows-validate-local-run"></a>

Esegui il validatore sul file di definizione principale o, per Nextflow, sulla directory che lo contiene.

------
#### [ WDL ]

```
miniwdl check {{main-file}}
```

------
#### [ Nextflow ]

```
nextflow lint {{definition-directory}}
```

------
#### [ CWL ]

```
cwltool --validate {{main-file}}
```

------

Per un pacchetto composto da più file, disponi i file su disco con gli stessi percorsi relativi presenti nell'archivio ZIP in cui li carichi HealthOmics. I riferimenti si risolvono in relazione al file che li dichiara, non alla directory da cui viene eseguito il comando. Per i requisiti principali dei file, consultate [HealthOmics requisiti di definizione del flusso di lavoro](workflow-defn-requirements.md).

Passare `nextflow lint` la directory anziché il file principale, in modo che anche questa controlli `nextflow.config`, che non raggiunge dal file principale.

**Nota**  
Quando passi `-format`, `nextflow lint` riscrive i file di definizione privi di errori. La formattazione con la versione 25.10 o successiva può produrre una sintassi che le versioni precedenti di Nextflow rifiutano, quindi non formattare a meno che l'esecuzione non utilizzi la versione con cui si esegue la formattazione.

## Lettura dei risultati della convalida
<a name="workflows-validate-local-results"></a>

miniwdl e `nextflow lint` escono con uno stato diverso da zero quando segnalano un errore, ma con uno stato zero quando riportano solo avvisi, quindi leggete l'output anziché fare affidamento sullo stato di uscita.
+ **WDL** — miniwdl riporta il primo errore da cui non riesce a riprendersi o uno schema di ogni documento caricato con eventuali risultati in linea.
+ **Nextflow** — Nextflow riporta ogni errore e avviso con il relativo file, riga e colonna e cita la riga incriminata. Termina con un conteggio dei file con errori e un conteggio di quelli che non ne avevano, quindi un file con un avviso ma nessun errore viene conteggiato come privo di errori. Per modificare il formato del report, passa `-o`, ad esempio `-o json`.
+ **CWL** — cwltool segnala che il file è un CWL valido o un errore di convalida relativo al file, alla riga e alla colonna di ciascun problema.

**Nota**  
Le versioni di Nextflow differiscono nella quantità di segnalazioni. Nextflow v26.04 conta gli avvisi nel suo riepilogo e li include in `-o json` uscita. Nextflow v25.10 stampa gli avvisi solo nell'output predefinito e non ne riporta nessuno nel riepilogo o nel relativo `-o json` output.