View a markdown version of this page

HealthOmics exigences de définition du flux de travail - AWS HealthOmics

Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.

HealthOmics exigences de définition du flux de travail

Les fichiers HealthOmics de définition de flux de travail doivent répondre aux exigences suivantes :

  • Les tâches doivent définir des input/output paramètres, des référentiels de conteneurs Amazon ECR et des spécifications d'exécution telles que l'allocation de mémoire ou de CPU.

  • Vérifiez que vos rôles IAM disposent des autorisations requises.

    • Votre flux de travail a accès aux données d'entrée provenant de AWS ressources, telles qu'Amazon S3.

    • Votre flux de travail a accès à des services de référentiel externes en cas de besoin.

  • Déclarez les fichiers de sortie dans la définition du flux de travail. Pour copier les fichiers d'exécution intermédiaires vers l'emplacement de sortie, déclarez-les en tant que sorties de flux de travail.

  • Les emplacements d'entrée et de sortie doivent se trouver dans la même région que le flux de travail.

  • HealthOmics les entrées du flux de travail de stockage doivent être en ACTIVE état. HealthOmics n'importera pas les entrées avec un ARCHIVED statut, ce qui entraînera l'échec du flux de travail. Pour plus d'informations sur les entrées d'objets Amazon S3, consultezHealthOmics exécuter les entrées.

  • L'mainemplacement du flux de travail est facultatif si votre archive ZIP contient une définition de flux de travail unique ou un fichier nommé « principal ».

    • Exemple de chemin : workflow-definition/main-file.wdl

  • Avant de créer un flux de travail à partir d'Amazon S3 ou de votre disque local, créez une archive zip des fichiers de définition du flux de travail et de toutes les dépendances, telles que les sous-flux de travail.

  • Nous vous recommandons de déclarer les conteneurs Amazon ECR dans le flux de travail en tant que paramètres d'entrée pour la validation des autorisations Amazon ECR.

Autres considérations relatives à Nextflow :

  • /bin

    Les définitions de flux de travail Nextflow peuvent inclure un dossier /bin contenant des scripts exécutables. Ce chemin permet d'accéder aux tâches en lecture seule et en mode exécutable. Les tâches qui s'appuient sur ces scripts doivent utiliser un conteneur créé avec les interpréteurs de script appropriés. La meilleure pratique consiste à appeler directement l'interprète. Par exemple :

    process my_bin_task { ... script: """ python3 my_python_script.py """ }
  • includeConfig

    Nextflow-based les définitions de flux de travail peuvent inclure des fichiers nextflow.config qui permettent d'abstraire les définitions de paramètres ou les profils de ressources de processus. Pour prendre en charge le développement et l'exécution de pipelines Nextflow sur plusieurs environnements, utilisez une HealthOmics-specific configuration que vous ajoutez à la configuration globale à l'aide de la directive IncludeConfig. Pour préserver la portabilité, configurez le flux de travail pour inclure le fichier uniquement lors de son exécution HealthOmics à l'aide du code suivant :

    // at the end of the nextflow.config file if ("$AWS_WORKFLOW_RUN") { includeConfig 'conf/omics.config' }
  • Reports

    HealthOmics prend en charge le rapport d'exécution, la chronologie, le suivi et les rapports DAG de Nextflow. Configurez chaque rapport pour écrire sa sortie /mnt/workflow/output/ afin de l' HealthOmics exporter vers l'emplacement de sortie Amazon S3 de votre exécution. Pour de plus amples informations, veuillez consulter Générez des rapports d'exécution de Nextflow.

  • Validation automatique de la syntaxe  : pour WDL et Nextflow, HealthOmics exécute des linters intégrés lors de la création du flux de travail. Pour de plus amples informations, veuillez consulter Le flux de travail s'affiche HealthOmics.

Considérations supplémentaires relatives à la CWL :

  • Container image uri interpolation

    HealthOmics permet à la propriété DockerPull de DockerRequirement devenir une expression javascript en ligne. Par exemple :

    requirements: DockerRequirement: dockerPull: "$(inputs.container_image)"

    Cela vous permet de spécifier les URI des images de conteneur en tant que paramètres d'entrée du flux de travail.

  • Javascript expressions

    Les expressions Javascript doivent être strict mode conformes.

  • Operation process

    HealthOmics ne prend pas en charge les processus de fonctionnement CWL.