diff --git a/docs/hello_nextflow/01_hello_world.pt.md b/docs/hello_nextflow/01_hello_world.pt.md index 8cadb9ebc..a63c7c948 100644 --- a/docs/hello_nextflow/01_hello_world.pt.md +++ b/docs/hello_nextflow/01_hello_world.pt.md @@ -103,7 +103,7 @@ Como você pode ver, um script Nextflow envolve dois tipos de componentes princi Cada **processo** descreve a(s) operação(ões) que a etapa correspondente no pipeline deve realizar, enquanto o **fluxo de trabalho** descreve a lógica do fluxo de dados que conecta as várias etapas. Vamos dar uma olhada mais de perto no bloco **process** primeiro e, depois, no bloco **workflow**. -#### 1.1.1 A definição `process` +#### 1.1.1. A definição `process` O primeiro bloco de código descreve um **processo**. A definição do processo começa com a palavra-chave `process`, seguida do nome do processo e, finalmente, do corpo do processo delimitado por chaves. O corpo do processo deve conter um bloco de script que especifica o comando a ser executado, que pode ser qualquer coisa que você executaria em um terminal de linha de comando. @@ -132,7 +132,7 @@ A definição de saída não _determina_ qual saída será criada. Ela simplesmente _declara_ qual é a saída esperada, de modo que o Nextflow possa procurá-la quando a execução estiver concluída. Isso é necessário para verificar se o comando foi executado com êxito e para passar a saída para processos posteriores, se necessário. -#### 1.1.2 A definição `workflow` +#### 1.1.2. A definição `workflow` O segundo bloco de código descreve o **fluxo de trabalho** em si. A definição do fluxo de trabalho começa com a palavra-chave `workflow`, seguida de um nome opcional e, em seguida, o corpo do fluxo de trabalho delimitado por chaves. @@ -240,13 +240,13 @@ Saiba como fazer com que o script produza um arquivo nomeado. --- -## 3. Enviando a saída para um arquivo +## 2. Enviando a saída para um arquivo Em vez de imprimir "Hello World!" na saída padrão, seria melhor salvar essa saída em um arquivo específico, exatamente como fizemos ao executar no terminal anteriormente. É assim que a maioria das ferramentas que você executará como parte dos pipelines do mundo real normalmente se comporta; veremos exemplos disso mais tarde. Para obter esse resultado, o script e os blocos de definição de saída precisam ser atualizados. -### 3.1. Alterando o comando `process` para gerar um arquivo nomeado +### 2.1. Alterando o comando `process` para gerar um arquivo nomeado Essa é a mesma alteração que fizemos quando executamos o comando diretamente no terminal anteriormente. @@ -266,7 +266,7 @@ echo 'Hello World!' > output.txt ''' ``` -### 3.2. Alterando a declaração de saída no processo `sayHello` +### 2.2. Alterando a declaração de saída no processo `sayHello` Precisamos informar ao Nextflow que agora ele deve procurar um arquivo específico a ser produzido pela execução do processo. @@ -298,7 +298,7 @@ As entradas e saídas nos blocos de processo normalmente exigem um qualificador No exemplo acima, `stdout` é uma exceção, pois não está associado a um nome. -### 3.3. Executando o fluxo de trabalho novamente +### 2.3. Executando o fluxo de trabalho novamente ```bash nextflow run hello-world.nf @@ -323,7 +323,7 @@ Este exemplo é frágil porque codificamos o nome do arquivo de saída em dois l Se alterarmos um, mas não o outro, o script será interrompido. Mais tarde, você aprenderá a usar variáveis para evitar esse problema. -### 3.4. Adicionando uma diretiva `publishDir` ao processo +### 2.4. Adicionando uma diretiva `publishDir` ao processo Você deve ter notado que a saída está enterrada em um diretório de trabalho com várias camadas de profundidade. O Nextflow está no controle desse diretório e não devemos interagir com ele. @@ -358,7 +358,7 @@ No entanto, o `publishDir` ainda é muito útil durante o desenvolvimento do pip Isso também garantirá que você possa ler e entender o grande número de pipelines que já foram escritos com o `publishDir`. Você aprenderá a usar a sintaxe de saídas em nível de fluxo de trabalho mais adiante nesta série de treinamento. -### 3.5. Executando o fluxo de trabalho novamente +### 2.5. Executando o fluxo de trabalho novamente ```bash nextflow run hello-world.nf @@ -390,7 +390,7 @@ Saiba como fazer com que o Nextflow retome a execução de um pipeline usando re --- -## 4. Usando o recurso `resume` do Nextflow +## 3. Usando o recurso `resume` do Nextflow O Nextflow tem uma opção chamada `resume`, que permite que você execute novamente um pipeline que já tenha sido iniciado anteriormente. Quando iniciado com `-resume`, qualquer processo que já tenha sido executado exatamente com o mesmo código, configurações e entradas será ignorado. @@ -402,7 +402,7 @@ Há duas vantagens principais em fazer isso: - Se estiver executando um pipeline em produção e algo der errado, em muitos casos, você poderá corrigir o problema e reiniciar o pipeline, e ele voltará a ser executado a partir do ponto de falha, o que pode economizar muito tempo e computação. -### 4.1. Executando o fluxo de trabalho novamente com `-resume` +### 3.1. Executando o fluxo de trabalho novamente com `-resume` ```bash nextflow run hello-world.nf -resume @@ -433,7 +433,7 @@ Saiba como adicionar entradas variáveis. --- -## 5. Adicionando entradas variáveis usando um canal +## 4. Adicionando entradas variáveis usando um canal Até agora, estamos emitindo uma saudação codificada no comando `process`. Agora, vamos adicionar alguma flexibilidade usando uma variável de entrada, para que possamos alterar facilmente a saudação. @@ -445,7 +445,7 @@ Para isso, precisamos fazer uma série de alterações inter-relacionadas: 3. Criar um **canal** para passar a entrada para o processo (falaremos mais sobre isso em um minuto) 4. Adicionar o canal como entrada à chamada do processo -### 5.1. Adicionando uma definição de `input` ao bloco do processo +### 4.1. Adicionando uma definição de `input` ao bloco do processo Primeiro, precisamos adaptar a definição do processo para aceitar uma entrada. @@ -474,7 +474,7 @@ process sayHello { path "output.txt" ``` -### 5.2. Editando o comando do processo para usar a variável de entrada +### 4.2. Editando o comando do processo para usar a variável de entrada Agora, trocamos o valor original codificado para a variável de entrada. @@ -494,7 +494,7 @@ echo '$greeting' > output.txt """ ``` -### 5.3. Criando um canal de entrada +### 4.3. Criando um canal de entrada Agora que o nosso processo espera uma entrada, precisamos configurar essa entrada no corpo do fluxo de trabalho. @@ -526,7 +526,7 @@ workflow { } ``` -### 5.4. Adicionando o canal como entrada à chamada de processo +### 4.4. Adicionando o canal como entrada à chamada de processo Agora precisamos realmente conectar nosso canal recém-criado à chamada de processo `sayHello()`. @@ -544,7 +544,7 @@ _Depois:_ sayHello(greeting_ch) ``` -### 5.5. Executando o comando do fluxo de trabalho novamente +### 4.5. Executando o comando do fluxo de trabalho novamente Vamos executá-lo! @@ -575,13 +575,13 @@ Saiba como passar entradas da linha de comando. --- -## 6. Usando parâmetros da CLI para entradas +## 5. Usando parâmetros da CLI para entradas Queremos poder especificar a entrada da linha de comando, pois essa é a parte que quase sempre será diferente nas execuções subsequentes do fluxo de trabalho. Boas notícias: O Nextflow tem um sistema de parâmetros de fluxo de trabalho integrado chamado `params`, que facilita a declaração e o uso de parâmetros da CLI. -### 6.1. Editando a declaração do canal de entrada para usar um parâmetro +### 5.1. Editando a declaração do canal de entrada para usar um parâmetro Aqui, trocamos a string codificada por `params.greeting` na linha de criação do canal. @@ -601,7 +601,7 @@ greeting_ch = Channel.of(params.greeting) Isso cria automaticamente um parâmetro chamado `greeting` que você pode usar para fornecer um valor na linha de comando. -### 6.2. Executar o fluxo de trabalho novamente com o parâmetro `--greeting` +### 5.2. Executar o fluxo de trabalho novamente com o parâmetro `--greeting` Para fornecer um valor para esse parâmetro, basta adicionar `--greeting ` à sua linha de comando. @@ -626,7 +626,7 @@ Não se esqueça de abrir o arquivo de saída para verificar se agora você tem É útil distinguir os parâmetros em nível de Nextflow dos parâmetros em nível de pipeline. Para parâmetros que se aplicam a um pipeline, usamos um hífen duplo (`--`), enquanto usamos um único hífen (`-`) para parâmetros que modificam uma configuração específica do Nextflow, por exemplo, o recurso `-resume` que usamos anteriormente. -### 6.3. Definindo um valor padrão para um parâmetro de linha de comando +### 5.3. Definindo um valor padrão para um parâmetro de linha de comando Em muitos casos, faz sentido fornecer um valor padrão para um determinado parâmetro para que você não precise especificá-lo em cada execução. Vamos inicializar o parâmetro `greeting` com um valor padrão, adicionando a declaração do parâmetro na parte superior do script (com um bloco de comentários como bônus gratuito). @@ -638,7 +638,7 @@ Vamos inicializar o parâmetro `greeting` com um valor padrão, adicionando a de params.greeting = "Olá mundo!" ``` -### 6.4. Executando o fluxo de trabalho novamente sem especificar o parâmetro +### 5.4. Executando o fluxo de trabalho novamente sem especificar o parâmetro Agora que você tem um valor padrão definido, pode executar o fluxo de trabalho novamente sem precisar especificar um valor na linha de comando. @@ -659,7 +659,7 @@ executor > local (1) Verifique a saída no diretório de resultados e... Tcharam! Funciona! O Nextflow usou o valor padrão para nomear a saída. Mas espere aí, o que acontece agora se fornecermos o parâmetro na linha de comando? -### 6.5. Executando o fluxo de trabalho novamente com o parâmetro `--greeting` na linha de comando usando uma saudação diferente +### 5.5. Executando o fluxo de trabalho novamente com o parâmetro `--greeting` na linha de comando usando uma saudação diferente ```bash nextflow run hello-world.nf --greeting 'Hola Mundo!' @@ -692,7 +692,7 @@ Saiba como adicionar um segundo processo e encadeá-los. --- -## 7. Adicionando uma segunda etapa ao fluxo de trabalho +## 6. Adicionando uma segunda etapa ao fluxo de trabalho A maioria dos fluxos de trabalho do mundo real envolve mais de uma etapa. Aqui apresentamos um segundo processo que converte o texto em maiúsculas (all-caps), usando o clássico UNIX one-liner: @@ -702,7 +702,7 @@ tr '[a-z]' '[A-Z]' Primeiro, vamos executar o comando sozinho no terminal para verificar se ele funciona conforme o esperado, sem que nenhum código de fluxo de trabalho atrapalhe a clareza, assim como fizemos no início com `echo 'Hello World'`. Em seguida, escreveremos um processo que faz a mesma coisa e, finalmente, conectaremos os dois processos para que a saída do primeiro sirva de entrada para o segundo. -### 7.1. Executando o comando no terminal por si só +### 6.1. Executando o comando no terminal por si só ```bash echo 'Hello World' | tr '[a-z]' '[A-Z]' @@ -717,7 +717,7 @@ HELLO WORLD !!! nota Esse é um one-liner de substituição de texto muito ingênuo que não leva em conta as letras acentuadas, portanto, por exemplo, 'olá' se tornará 'OLà'. Isso é esperado. -### 7.2. Fazendo com que o comando receba um arquivo como entrada e grave a saída em um arquivo +### 6.2. Fazendo com que o comando receba um arquivo como entrada e grave a saída em um arquivo Como anteriormente, queremos enviar os resultados para um arquivo dedicado, que nomeamos prefixando o nome do arquivo original com `UPPER-`. @@ -727,7 +727,7 @@ cat output.txt | tr '[a-z]' '[A-Z]' > UPPER-output.txt Agora, a saída do `HELLO WORLD` está no novo arquivo de saída, `UPPER-output.txt`. -### 7.3. Envolvendo o comando em uma nova definição de processo do Nextflow +### 6.3. Envolvendo o comando em uma nova definição de processo do Nextflow Podemos modelar nosso novo processo com base no primeiro, já que queremos usar todos os mesmos componentes. @@ -757,7 +757,7 @@ Como um pequeno bônus, aqui compomos o segundo nome de arquivo de saída com ba !!! dica É muito importante lembrar: é necessário usar aspas duplas ao redor da expressão do nome do arquivo de saída (NÃO aspas simples) ou haverá falha. -### 7.4. Adicionando uma chamada ao novo processo no corpo do fluxo de trabalho +### 6.4. Adicionando uma chamada ao novo processo no corpo do fluxo de trabalho Não se esqueça de que precisamos dizer ao Nextflow para realmente chamar o processo que acabamos de criar! Para fazer isso, nós o adicionamos ao corpo do fluxo de trabalho. @@ -774,7 +774,7 @@ workflow { Parece bom! Mas ainda precisamos conectar a chamada do processo `convertToUpper` para ser executada na saída do `sayHello`. -### 7.5. Passando a saída do primeiro processo para o segundo processo +### 6.5. Passando a saída do primeiro processo para o segundo processo A saída do processo `sayHello` é automaticamente empacotada como um canal chamado `sayHello.out`, portanto, tudo o que precisamos fazer é passá-la como entrada para o processo `convertToUpper`. @@ -785,7 +785,7 @@ convertToUpper(sayHello.out) Para um caso simples como esse, isso é tudo o que precisamos fazer para conectar dois processos! -### 7.6. Executar o mesmo comando de fluxo de trabalho anterior +### 6.6. Executar o mesmo comando de fluxo de trabalho anterior Vamos nos certificar de que isso funcione: @@ -827,13 +827,13 @@ Saiba como fazer com que o fluxo de trabalho seja executado em um lote de valore --- -## 8. Modificando o fluxo de trabalho para ser executado em um lote de valores de entrada +## 7. Modificando o fluxo de trabalho para ser executado em um lote de valores de entrada Os fluxos de trabalho normalmente são executados em lotes de entradas que devem ser processados em massa, portanto, queremos atualizar o fluxo de trabalho para aceitar vários valores de entrada. Convenientemente, a fábrica `Channel.of()` que estamos usando aceita de bom grado mais de um valor, portanto, não precisamos modificá-la; basta carregar mais valores no canal. -### 8.1. Carregando várias saudações no canal de entrada +### 7.1. Carregando várias saudações no canal de entrada Para manter as coisas simples, voltamos a codificar as saudações na fábrica do canal em vez de usar um parâmetro para a entrada, mas melhoraremos isso em breve. _Antes:_ @@ -852,7 +852,7 @@ greeting_ch = Channel.of('Hello','Bonjour','Holà') A documentação nos diz que isso deve funcionar. Será que realmente pode ser tão simples? -### 8.2. Executando o comando e vendo a saída do registro +### 7.2. Executando o comando e vendo a saída do registro Vamos tentar. @@ -876,7 +876,7 @@ No entanto... Isso parece indicar que foram feitas “3 de 3” chamadas para ca Por padrão, o sistema de registro ANSI grava o registro de várias chamadas para o mesmo processo na mesma linha. Felizmente, podemos desativar esse comportamento. -### 8.3. Execute o comando novamente com a opção `-ansi-log false` +### 7.3. Execute o comando novamente com a opção `-ansi-log false` Para expandir o registro em log para exibir uma linha por chamada de processo, basta adicionar `-ansi-log false` ao comando. @@ -913,7 +913,7 @@ Você deve se lembrar que codificamos o nome do arquivo de saída para o primeir Isso foi bom desde que houvesse apenas uma única chamada feita por processo, mas quando começamos a processar vários valores de entrada e a publicar as saídas no mesmo diretório de resultados, isso se torna um problema. Para um determinado processo, cada chamada produz uma saída com o mesmo nome de arquivo, portanto, o Nextflow simplesmente substitui o arquivo de saída anterior sempre que um novo é produzido. -### 8.4. Certifique-se de que os nomes dos arquivos de saída sejam exclusivos +### 7.4. Certifique-se de que os nomes dos arquivos de saída sejam exclusivos Como publicaremos todos os resultados no mesmo diretório de resultados, precisamos garantir que eles tenham nomes exclusivos. Especificamente, precisamos modificar o primeiro processo para gerar um nome de arquivo dinamicamente, de modo que os nomes dos arquivos finais sejam exclusivos. @@ -962,7 +962,7 @@ process sayHello { Isso deve produzir um nome de arquivo de saída exclusivo para cada chamada de cada processo. -### 8.5. Execute o fluxo de trabalho e veja o diretório de resultados +### 7.5. Execute o fluxo de trabalho e veja o diretório de resultados Vamos executá-lo e verificar se ele funciona. @@ -1012,7 +1012,7 @@ Saiba como fazer com que o fluxo de trabalho use um arquivo como sua fonte de va --- -## 9. Modificando o fluxo de trabalho para usar um arquivo como fonte de valores de entrada +## 8. Modificando o fluxo de trabalho para usar um arquivo como fonte de valores de entrada Muitas vezes, quando queremos executar um lote de vários elementos de entrada, os valores de entrada podem estar contidos em um arquivo. @@ -1024,7 +1024,7 @@ Hello,Bonjour,Holà Portanto, só precisamos modificar nosso fluxo de trabalho para ler os valores de um arquivo como esse. -### 9.1. Configurando um parâmetro da CLI com um valor padrão apontando para um arquivo de entrada +### 8.1. Configurando um parâmetro da CLI com um valor padrão apontando para um arquivo de entrada Primeiro, vamos usar o argumento `params` para configurar um novo parâmetro chamado `input_file`, substituindo o parâmetro `greeting`, agora inútil, com um valor padrão que aponta para o arquivo `greetings.csv`. @@ -1046,7 +1046,7 @@ _Depois:_ params.input_file = "data/greetings.csv" ``` -### 9.2. Atualizando a declaração do canal para lidar com o arquivo de entrada +### 8.2. Atualizando a declaração do canal para lidar com o arquivo de entrada Neste ponto, apresentamos uma nova fábrica de canais, `Channel.fromPath()`, que tem algumas funcionalidades integradas para lidar com caminhos de arquivos. @@ -1085,7 +1085,7 @@ greeting_ch = Channel.fromPath(params.input_file) .flatten() ``` -### 9.3. Executando o fluxo de trabalho (uma última vez!) +### 8.3. Executando o fluxo de trabalho (uma última vez!) ```bash nextflow run hello-world.nf diff --git a/docs/hello_nextflow/03_hello_workflow.it.md b/docs/hello_nextflow/03_hello_workflow.it.md index 40bd1d118..10e190eca 100644 --- a/docs/hello_nextflow/03_hello_workflow.it.md +++ b/docs/hello_nextflow/03_hello_workflow.it.md @@ -74,7 +74,7 @@ A tal fine, dobbiamo fare tre cose: - Scrivere un nuovo processo che racchiuda il comando per la conversione in maiuscolo. - Chiamare il nuovo processo nel blocco del workflow e configurarlo per prendere l'output del processo `sayHello()` come input. -## 1.1 Definire il comando per la conversione in maiuscolo e testarlo nel terminale +### 1.1. Definire il comando per la conversione in maiuscolo e testarlo nel terminale Per eseguire la conversione dei saluti in maiuscolo, useremo uno strumento UNIX classico chiamato `tr` per 'text replacement' (sostituzione del testo), con la seguente sintassi: @@ -98,7 +98,7 @@ HELLO WORLD Questo è ciò che proveremo a fare con il nostro workflow. -### 1.1 Scrivere il passaggio di conversione in maiuscolo come un processo Nextflow +### 1.2. Scrivere il passaggio di conversione in maiuscolo come un processo Nextflow Possiamo modellare il nostro nuovo processo sul primo, poiché vogliamo usare gli stessi componenti. @@ -131,7 +131,7 @@ Qui, componiamo il secondo nome del file di output in base al nome del file di i Nextflow determinerà l'ordine delle operazioni in base alla concatenazione degli input e degli output, quindi l'ordine delle definizioni dei processi nello script del flusso di lavoro non è importante. Tuttavia, ti consigliamo di essere gentile con i tuoi collaboratori e con il futuro te stesso, e cercare di scriverle in un ordine logico per motivi di leggibilità." -### 1.2 Aggiungi una chiamata al nuovo processo nel blocco del workflow +### 1.3. Aggiungi una chiamata al nuovo processo nel blocco del workflow Ora dobbiamo dire a Nextflow di chiamare effettivamente il processo che abbiamo appena definito. @@ -158,7 +158,7 @@ Nel blocco del workflow, apporta la seguente modifica al codice: Questo non è ancora funzionante perché non abbiamo specificato cosa deve essere l'input per il processo `convertToUpper()`. -### 1.3 Passare l'output del primo processo al secondo processo +### 1.4. Passare l'output del primo processo al secondo processo Ora dobbiamo fare in modo che l'output del processo `sayHello()` fluisca nel processo `convertToUpper()`. @@ -185,7 +185,7 @@ Nel blocco del workflow, apporta la seguente modifica al codice: Per un caso semplice come questo (un output a un input), è tutto ciò che dobbiamo fare per connettere due processi! -### 1.4 Esegui di nuovo il flusso di lavoro con `-resume` +### 1.5. Esegui di nuovo il flusso di lavoro con `-resume` Eseguiamo di nuovo il flusso di lavoro utilizzando il flag `-resume`, poiché abbiamo già eseguito con successo il primo passaggio del workflow. @@ -772,7 +772,7 @@ Nel blocco del processo `collectGreetings`, apporta la seguente modifica al codi La variabile `count_greetings` verrà calcolata durante l'esecuzione. -### 4.1.2. Emissione del conteggio come output con nome +#### 4.1.2. Emissione del conteggio come output con nome In linea di principio, tutto ciò che dobbiamo fare è aggiungere la variabile `count_greetings` al blocco `output:`. diff --git a/docs/hello_nextflow/03_hello_workflow.md b/docs/hello_nextflow/03_hello_workflow.md index e3dfc94f3..e455b295d 100644 --- a/docs/hello_nextflow/03_hello_workflow.md +++ b/docs/hello_nextflow/03_hello_workflow.md @@ -98,7 +98,7 @@ HELLO WORLD That's basically what we're going to try to do with our workflow. -### 1.1. Write the uppercasing step as a Nextflow process +### 1.2. Write the uppercasing step as a Nextflow process We can model our new process on the first one, since we want to use all the same components. @@ -132,7 +132,7 @@ Here, we compose the second output filename based on the input filename, similar Nextflow will determine the order of operations based on the chaining of inputs and outputs, so the order of the process definitions in the workflow script does not matter. However, we do recommend you be kind to your collaborators and to your future self, and try to write them in a logical order for the sake of readability. -### 1.2. Add a call to the new process in the workflow block +### 1.3. Add a call to the new process in the workflow block Now we need to tell Nextflow to actually call the process that we just defined. @@ -159,7 +159,7 @@ In the workflow block, make the following code change: This is not yet functional because we have not specified what should be input to the `convertToUpper()` process. -### 1.3. Pass the output of the first process to the second process +### 1.4. Pass the output of the first process to the second process Now we need to make the output of the `sayHello()` process flow into the `convertToUpper()` process. @@ -186,7 +186,7 @@ In the workflow block, make the following code change: For a simple case like this (one output to one input), that's all we need to do to connect two processes! -### 1.4. Run the workflow again with `-resume` +### 1.5. Run the workflow again with `-resume` Let's run this using the `-resume` flag, since we've already run the first step of the workflow successfully. @@ -773,7 +773,7 @@ In the `collectGreetings` process block, make the following code change: The `count_greetings` variable will be computed at runtime. -### 4.1.2. Emit the count as a named output +#### 4.1.2. Emit the count as a named output In principle all we need to do is to add the `count_greetings` variable to the `output:` block. diff --git a/docs/hello_nextflow/04_hello_modules.it.md b/docs/hello_nextflow/04_hello_modules.it.md index 8bb2c384f..d11391f53 100644 --- a/docs/hello_nextflow/04_hello_modules.it.md +++ b/docs/hello_nextflow/04_hello_modules.it.md @@ -93,7 +93,7 @@ Creeremo un file stub per il modulo, copieremo il codice pertinente e lo cancell A questo punto, basterà aggiungere una dichiarazione di importazione, in modo che Nextflow sappia che deve inserire il codice in questione in fase di esecuzione. -### 2.1.1. Creare un file stub per il nuovo modulo +### 2.1. Creare un file stub per il nuovo modulo Creiamo un file vuoto per il modulo, chiamato `sayHello.nf`. diff --git a/docs/hello_nextflow/04_hello_modules.md b/docs/hello_nextflow/04_hello_modules.md index dfced5838..ab18757f9 100644 --- a/docs/hello_nextflow/04_hello_modules.md +++ b/docs/hello_nextflow/04_hello_modules.md @@ -93,7 +93,7 @@ We're going to create a file stub for the module, copy the relevant code over th Then all we'll need to do is add an import statement so that Nextflow will know to pull in the relevant code at runtime. -### 2.1.1. Create a file stub for the new module +### 2.1. Create a file stub for the new module Let's create an empty file for the module called `sayHello.nf`. diff --git a/docs/hello_nextflow/05_hello_containers.it.md b/docs/hello_nextflow/05_hello_containers.it.md index 3637fd109..b35bf7720 100644 --- a/docs/hello_nextflow/05_hello_containers.it.md +++ b/docs/hello_nextflow/05_hello_containers.it.md @@ -127,7 +127,7 @@ community.wave.seqera.io/library/cowpy:1.1.5--3db457ae1977a273 Una volta completato il download, si ha una copia locale dell'immagine del container. -### 1.2. utilizzare il container per eseguire cowpy come comando singolo. +### 1.2. Utilizzare il container per eseguire cowpy come comando singolo Un modo molto comune di utilizzare i container è quello di eseguirli direttamente, cioè in modo non interattivo. Questo è ottimo per eseguire comandi una tantum. @@ -165,7 +165,7 @@ Esegui per produrre il seguente output: Il sistema avvia il container, esegue il comando cowpy con i suoi parametri, invia l'output alla console e infine chiude l'istanza del container. -### 1.3.Ustilizzare il conatienr per eseguire cowpu in modo interattivo +### 1.3. Ustilizzare il container per eseguire cowpy in modo interattivo E anche possibile eseguire un conatiner in modo interattivo, in modo da avere un prompt di shell all'interno del container e poter giocare con i comandi. @@ -355,7 +355,7 @@ Ciò significa che puoi utilizzare qualsiasi immagine di container desideri per Per dimostrarlo, aggiungeremo un passaggio `cowpy` alla pipeline che stiamo sviluppando, dopo il passaggio `collectGreetings`. -### 2.1.Scrivi un modulo `cowpy` +### 2.1. Scrivi un modulo `cowpy` #### 2.1.1. Crea uno stub di file per il nuovo modulo @@ -533,7 +533,7 @@ Command error: Questo codice di errore, `error exit status (127)`, significa che l'eseguibile richiesto non è stato trovato. Naturalmente, dato che stiamo chiamando lo strumento `cowpy` ma non abbiamo ancora specificato un container. -### 2.3.Utilizzare un container per l'esecuzione +### 2.3. Utilizzare un container per l'esecuzione Dobbiamo specificare un container e dire a Nextflow di usarlo per il processo `cowpy()`. diff --git a/docs/hello_nextflow/next_steps.md b/docs/hello_nextflow/next_steps.md index 28d344df1..bbb047070 100644 --- a/docs/hello_nextflow/next_steps.md +++ b/docs/hello_nextflow/next_steps.md @@ -12,13 +12,13 @@ Congrats again on completing the Hello Nextflow training course and thank you fo **Here are our top 3 recommendations for what you can do next to take your Nextflow skills to the next level.** -### 1. See how what you just learned applies to a scientific analysis use case +## 1. See how what you just learned applies to a scientific analysis use case **Check out the [Nextflow for Science](../nf4_science/index.md) page** for a list of short standalone courses that demonstrate how to apply the basic concepts and mechanisms presented in Hello Nextflow to common scientific analysis use cases. If you don't see your domain represented by a relatable use case, let us know in the [Community forum](https://community.seqera.io/) so we can add it to our development list. -### 2. Delve into the details +## 2. Delve into the details In the Hello Nextflow course, we keep the level of technical complexity low on purpose to avoid overloading you with information you don't need in order to get started with Nextflow. As you move forward with your work, you're going to want to learn how to use the full feature set and power of Nextflow. @@ -27,7 +27,7 @@ To that end, we are currently working on a collection of Side Quests, which are In the meantime, feel free to **browse the [Fundamentals Training](../basic_training/index.md) and [Advanced Training](../advanced/index.md)** to find training exercises about the topics that interest you. -### 3. Learn how to use nf-core resources and the Seqera Platform +## 3. Learn how to use nf-core resources and the Seqera Platform **The [nf-core project](https://nf-co.re/) is a worldwide collaborative effort to develop standardized open-source pipelines for a wide range of scientific research applications.** It includes [over 100 pipelines](https://nf-co.re/pipelines/) that are available for use out of the box and [well over 1400 process modules](https://nf-co.re/modules/) that can be integrated into your own projects, as well as a rich set of developer tools.