View a markdown version of this page

HealthOmics requisitos de definição de fluxo de trabalho - AWS HealthOmics

As traduções são geradas por tradução automática. Em caso de conflito entre o conteúdo da tradução e da versão original em inglês, a versão em inglês prevalecerá.

HealthOmics requisitos de definição de fluxo de trabalho

Os arquivos HealthOmics de definição do fluxo de trabalho devem atender aos seguintes requisitos:

  • As tarefas devem definir input/output parâmetros, repositórios de contêineres do Amazon ECR e especificações de tempo de execução, como alocação de memória ou CPU.

  • Verifique se suas funções do IAM têm as permissões necessárias.

    • Seu fluxo de trabalho tem acesso aos dados de entrada de AWS recursos, como o Amazon S3.

    • Seu fluxo de trabalho tem acesso a serviços de repositório externo quando necessário.

  • Declare os arquivos de saída na definição do fluxo de trabalho. Para copiar arquivos de execução intermediários para o local de saída, declare-os como saídas do fluxo de trabalho.

  • Os locais de entrada e saída devem estar na mesma região do fluxo de trabalho.

  • HealthOmics as entradas do fluxo de trabalho de armazenamento devem estar em ACTIVE status. HealthOmics não importará entradas com um ARCHIVED status, fazendo com que o fluxo de trabalho falhe. Para obter informações sobre entradas de objetos do Amazon S3, consulte. HealthOmics entradas de execução

  • Um main local do fluxo de trabalho é opcional se o arquivo ZIP contiver uma única definição de fluxo de trabalho ou um arquivo chamado “principal”.

    • Exemplo de caminho: workflow-definition/main-file.wdl

  • Antes de criar um fluxo de trabalho a partir do Amazon S3 ou de sua unidade local, crie um arquivo zip dos arquivos de definição do fluxo de trabalho e de quaisquer dependências, como subfluxos de trabalho.

  • Recomendamos que você declare os contêineres do Amazon ECR no fluxo de trabalho como parâmetros de entrada para validação das permissões do Amazon ECR.

Considerações adicionais sobre o Nextflow:

  • /bin

    As definições de fluxo de trabalho do Nextflow podem incluir uma pasta /bin com scripts executáveis. Esse caminho tem acesso somente para leitura e executável às tarefas. As tarefas que dependem desses scripts devem usar um contêiner criado com os intérpretes de script apropriados. A melhor prática é ligar diretamente para o intérprete. Por exemplo:

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

    Nextflow-based as definições de fluxo de trabalho podem incluir arquivos nextflow.config que ajudam a abstrair definições de parâmetros ou processar perfis de recursos. Para oferecer suporte ao desenvolvimento e à execução de pipelines Nextflow em vários ambientes, use uma HealthOmics-specific configuração que você adiciona à configuração global usando a diretiva includeConfig. Para manter a portabilidade, configure o fluxo de trabalho para incluir o arquivo somente quando executado HealthOmics usando o código a seguir:

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

    HealthOmics suporta o relatório de execução, cronograma, rastreamento e relatórios DAG do Nextflow. Configure cada relatório para escrever sua saída /mnt/workflow/output/ para HealthOmics exportá-lo para o local de saída do Amazon S3 da sua execução. Para obter mais informações, consulte Gere relatórios de execução do Nextflow.

  • Validação automática de sintaxe — Para WDL e Nextflow, HealthOmics executa linters integrados durante a criação do fluxo de trabalho. Para obter mais informações, consulte Fluxo de trabalho intermitente em HealthOmics.

Considerações adicionais sobre a CWL:

  • Container image uri interpolation

    HealthOmics permite que a propriedade dockerPull do DockerRequirement seja uma expressão javascript embutida. Por exemplo:

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

    Isso permite que você especifique URIs de imagens de contêiner como parâmetros de entrada para o fluxo de trabalho.

  • Javascript expressions

    As expressões Javascript devem ser strict mode compatíveis.

  • Operation process

    HealthOmics não suporta processos de operação CWL.