Vai al contenuto

Sviluppo di Plugin

Traduzione assistita da IA - scopri di più e suggerisci miglioramenti

Il sistema di plugin di Nextflow consente di estendere il linguaggio con funzioni personalizzate, hook di monitoraggio, backend di esecuzione e molto altro. I plugin permettono alla community di aggiungere funzionalità a Nextflow senza modificarne il nucleo, rendendoli ideali per condividere funzionalità riutilizzabili tra pipeline.

Durante questa formazione, imparerete come utilizzare plugin esistenti e, facoltativamente, come crearne di propri.

Pubblico e prerequisiti

La Parte 1 riguarda l'utilizzo di plugin esistenti ed è rilevante per tutti gli utenti di Nextflow. Le Parti 2-6 riguardano la creazione di plugin personalizzati e coinvolgono codice Groovy e strumenti di build. Non è richiesta alcuna esperienza precedente con Java o Groovy.

Prerequisiti

  • Un account GitHub OPPURE un'installazione locale come descritto qui.
  • Aver completato il corso Hello Nextflow o equivalente.
  • Java 21 o versione successiva (incluso nell'ambiente di formazione; necessario solo per le Parti 2-6).

Directory di lavoro: side-quests/plugin_development

Aprire il codespace di formazione

Se non lo avete ancora fatto, assicuratevi di aprire l'ambiente di formazione come descritto nella sezione Environment Setup.

Open in GitHub Codespaces

Obiettivi di apprendimento

Al termine di questa formazione, sarete in grado di:

Utilizzo dei plugin (Parte 1):

  • Installare e configurare plugin esistenti nei vostri flussi di lavoro
  • Importare e utilizzare le funzioni dei plugin

Sviluppo di plugin (Parti 2-6):

  • Creare un nuovo progetto plugin utilizzando il generatore di progetti integrato di Nextflow
  • Implementare funzioni personalizzate richiamabili dai flussi di lavoro
  • Compilare, testare e installare il plugin in locale
  • Monitorare gli eventi del flusso di lavoro (ad esempio, completamento di un'attività, avvio/fine della pipeline) per log personalizzati o notifiche
  • Aggiungere opzioni di configurazione per rendere i plugin personalizzabili
  • Distribuire il proprio plugin

Piano delle lezioni

Parte 1: Nozioni di base sui plugin

Utilizzare plugin esistenti in un flusso di lavoro Nextflow e configurarne il comportamento.

Parte 2: Creare un progetto plugin

Generare un nuovo progetto plugin ed esaminarne la struttura.

Parte 3: Funzioni personalizzate

Implementare funzioni personalizzate, compilare il plugin ed eseguirlo in un flusso di lavoro.

Parte 4: Testing

Scrivere ed eseguire unit test utilizzando il framework Spock.

Parte 5: Monitoraggio del flusso di lavoro

Rispondere a eventi come il completamento di un'attività per costruire un contatore di attività.

Parte 6: Configurazione e distribuzione

Leggere le impostazioni da nextflow.config per rendere il plugin personalizzabile, quindi imparare come condividerlo.

Pronti a iniziare il corso?

Inizia a imparare