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à.
Il flusso di lavoro si interrompe HealthOmics
HealthOmics linca automaticamente i flussi di lavoro WDL e Nextflow DSL2 durante la creazione. I linter integrati rilevano gli errori nei file di definizione del flusso di lavoro che possono causare il fallimento delle esecuzioni. I risultati di Lint vengono visualizzati nel statusMessage campo della GetWorkflow risposta.
Per i flussi di lavoro WDL, i risultati dei lint sono bloccanti: il flusso di lavoro non passa ad ACTIVE se vengono rilevati errori. Per i flussi di lavoro Nextflow DSL2, i risultati dei lint non sono bloccanti: il flusso di lavoro passa ad ACTIVE indipendentemente dai risultati.
HealthOmics fornisce anche linter esterni che è possibile eseguire localmente prima di creare un flusso di lavoro. Questi linter possono includere regole aggiuntive HealthOmics-specific .
Built-in linters
HealthOmics esegue linter integrati sul lato server quando si chiama o. CreateWorkflow CreateWorkflowVersion
Lintaggio integrato WDL
Per WDL, esegue HealthOmics automaticamente un linter quando si crea il flusso di lavoro. Il linting WDL è un blocco: se il linter rileva errori, il flusso di lavoro non passa ad ACTIVE. L'output del linter si trova nel campo della statusMessage risposta. GetWorkflow Utilizzate il seguente comando CLI per recuperare l'output di stato (utilizzate l'ID del workflow WDL che avete creato):
aws omics get-workflow —id123456—query 'statusMessage'
Linting integrato in Nextflow
HealthOmics esegue automaticamente il linter DSL2 rigoroso integrato in Nextflow (nf-lang/v2) durante e per tutte le versioni Nextflow DSL2 supportate: CreateWorkflow CreateWorkflowVersion
Nextflow v22.04 (solo DSL2)
Nextflow v23.10
Nextflow v24.10
Nextflow v25.10
Nextflow v26.04
Nota
Il linter integrato si applica solo ai flussi di lavoro DSL2. I flussi di lavoro DSL1 non sono collegati.
Il linter Nextflow funziona in modalità non bloccante. I risultati non impediscono al flusso di lavoro di diventare ATTIVO. Puoi esaminare i risultati in qualsiasi momento senza interrompere il processo di creazione del flusso di lavoro.
Nota
Il linter Nextflow integrato convalida la sintassi di definizione del flusso di lavoro al momento della creazione. È diverso dal rigoroso parser di sintassi disponibile per Nextflow v26.04, che è controllato e influisce sul comportamento di runtime. engineSettings.syntaxVersion Il linter viene eseguito al momento della creazione in tutte le versioni DSL2, indipendentemente dal parser utilizzato dal flusso di lavoro in fase di esecuzione.
Per recuperare l'output di lint di Nextflow
I risultati di Lint vengono visualizzati come JSON strutturato nel campo della risposta. statusMessage GetWorkflow Usa il seguente comando CLI per recuperare l'output di lint:
aws omics get-workflow --id1234567--query 'statusMessage'
L'esempio seguente mostra l'output JSON del linter Nextflow:
{ "advisory": "Linting findings are from the strict Nextflow DSL2 (nf-lang/v2) linter and reflect the syntax that will be required in Nextflow 25/26 strict mode. On Nextflow 23/24 (legacy grammar) findings are advisory only.", "summary": { "errors": 2, "filesWithErrors": 1, "filesWithoutErrors": 0, "filesFormatted": 0, "warnings": 0, "filesWithWarnings": 0, "filesWithoutWarnings": 2 }, "errors": [ { "filename": "nextflow-lint-legacy.nf", "startLine": 24, "startColumn": 5, "message": "`for` loops are no longer supported" }, { "filename": "nextflow-lint-legacy.nf", "startLine": 24, "startColumn": 10, "message": "`i` is not defined" } ], "warnings": [] }
Campi di output Lint
L'output JSON contiene i seguenti campi:
-
advisory— Spiega l'applicabilità dei risultati in base alla versione. In Nextflow v22.04, v23.10 e v24.10 (grammatica precedente), i risultati sono solo indicativi. Su Nextflow v25.10 e v26.04, i risultati riflettono rigorosi requisiti di sintassi delle modalità. -
summary— Contiene un numero aggregato di errori e avvisi in tutti i file del flusso di lavoro. -
errors— Una serie di oggetti di errore. Ogni errore contienefilenamestartLine,startColumn, emessage. -
warnings— Una serie di oggetti di avviso. Ogni avviso contiene gli stessi campi degli oggetti di errore. -
truncated— Un flag condizionale che appare quando l'output di lint supera i limiti di dimensione del campo. Quando si verifica il troncamento, gli avvisi vengono eliminati per primi. Il flusso di lavoro rimane ATTIVO con un report tagliato valido.
Raccomandazioni
Consigliamo il seguente flusso di lavoro per risolvere i problemi riscontrati con la presenza di lanugine:
Esamina i risultati relativi alla presenza di lanugine sul
statusMessagecampo.Correggi gli errori nel file di definizione del flusso di lavoro.
Re-create il flusso di lavoro per generare un report pulito.
Linter esterni
Sono disponibili i seguenti linter esterni:
-
WDL— Un'immagine pubblica Amazon ECR per eseguire un linter WDL
su Amazon ECR Public Gallery. -
Nextflow— Un'immagine pubblica Amazon ECR per eseguire le regole Linter per
Nextflow su Amazon ECR Public Gallery. Puoi accedere al codice sorgente dal repository linter-rules-for-nextflow su. https://github.com/awslabs/linter-rules-for-nextflow GitHub -
CWL— Non disponibile.
L'elenco seguente descrive la distinzione tra linter integrati ed esterni:
-
Built-in linters: viene eseguito lato server durante e.
CreateWorkflowCreateWorkflowVersionPer WDL, i risultati sono bloccanti. Per Nextflow DSL2, i risultati non sono bloccanti. Si applicano solo ai flussi di lavoro WDL e Nextflow DSL2. -
Linter esterni: eseguiti localmente prima della creazione del flusso di lavoro. Può includere regole di HealthOmics-specific compatibilità aggiuntive. Disponibili come immagini pubbliche di Amazon ECR.