Ir para o conteúdo

Desenvolvimento de Plugins

Tradução assistida por IA - saiba mais e sugira melhorias

O sistema de plugins do Nextflow permite que você estenda a linguagem com funções personalizadas, hooks de monitoramento, backends de execução e muito mais. Os plugins permitem que a comunidade adicione funcionalidades ao Nextflow sem modificar seu núcleo, tornando-os ideais para compartilhar funcionalidades reutilizáveis entre pipelines.

Durante este treinamento, você aprenderá como usar plugins existentes e, opcionalmente, criar os seus próprios.

Público & pré-requisitos

A Parte 1 aborda o uso de plugins existentes e é relevante para todos os usuários do Nextflow. As Partes 2-6 abordam a criação dos seus próprios plugins e envolvem código Groovy e ferramentas de build. Não é necessária experiência prévia com Java ou Groovy.

Pré-requisitos

  • Uma conta no GitHub OU uma instalação local conforme descrito aqui.
  • Ter concluído o curso Hello Nextflow ou equivalente.
  • Java 21 ou superior (incluído no ambiente de treinamento; necessário apenas para as Partes 2-6).

Diretório de trabalho: side-quests/plugin_development

Objetivos de aprendizado

Ao final deste treinamento, você será capaz de:

Usando plugins (Parte 1):

  • Instalar e configurar plugins existentes nos seus fluxos de trabalho
  • Importar e usar funções de plugins

Desenvolvendo plugins (Partes 2-6):

  • Criar um novo projeto de plugin usando o gerador de projetos integrado do Nextflow
  • Implementar funções personalizadas que podem ser chamadas a partir de fluxos de trabalho
  • Compilar, testar e instalar seu plugin localmente
  • Monitorar eventos do fluxo de trabalho (por exemplo, conclusão de tarefas, início/fim do pipeline) para logging personalizado ou notificações
  • Adicionar opções de configuração para tornar os plugins personalizáveis
  • Distribuir seu plugin

Plano de aulas

Parte 1: Conceitos básicos de plugins

Use plugins existentes em um fluxo de trabalho Nextflow e configure seu comportamento.

Parte 2: Criar um projeto de plugin

Gere um novo projeto de plugin e examine sua estrutura.

Parte 3: Funções personalizadas

Implemente funções personalizadas, compile seu plugin e execute-o em um fluxo de trabalho.

Parte 4: Testes

Escreva e execute testes unitários usando o framework Spock.

Parte 5: Monitoramento de fluxo de trabalho

Responda a eventos como a conclusão de tarefas para construir um contador de tarefas.

Parte 6: Configuração & Distribuição

Leia configurações do nextflow.config para tornar seu plugin personalizável e, em seguida, aprenda como compartilhá-lo.

Pronto para começar o curso?

Começar a aprender