From d295defdd9e7a4b8d3d1da1ae026437ab274ee54 Mon Sep 17 00:00:00 2001 From: mirpedrol Date: Mon, 5 Aug 2024 11:20:39 +0200 Subject: [PATCH 01/13] add tests to ensure all files are part of a template customisation group --- tests/pipelines/test_create.py | 39 ++++++++++++++++++++++++++++++++++ 1 file changed, 39 insertions(+) diff --git a/tests/pipelines/test_create.py b/tests/pipelines/test_create.py index 13fd3b24c..0d93afb11 100644 --- a/tests/pipelines/test_create.py +++ b/tests/pipelines/test_create.py @@ -7,6 +7,7 @@ import git import jinja2 import yaml +import itertools import nf_core.pipelines.create.create from nf_core.pipelines.create.utils import load_features_yaml @@ -15,6 +16,7 @@ PIPELINE_TEMPLATE_YML = TEST_DATA_DIR / "pipeline_create_template.yml" PIPELINE_TEMPLATE_YML_SKIP = TEST_DATA_DIR / "pipeline_create_template_skip.yml" +PIPELINE_TEMPLATE = Path(nf_core.__file__).parent / "pipeline-template" class NfcoreCreateTest(unittest.TestCase): @@ -134,3 +136,40 @@ def test_pipeline_creation_with_yml_skip(self, tmp_path): assert not (pipeline.outdir / ".github").exists() assert not (pipeline.outdir / "conf" / "igenomes.config").exists() assert not (pipeline.outdir / ".editorconfig").exists() + + def test_template_customisation_all_files_grouping(self): + """Test that all pipeline template files are included in a pipeline customisation group.""" + create_obj = nf_core.pipelines.create.create.PipelineCreate( + template_config=PIPELINE_TEMPLATE_YML_SKIP, + default_branch=self.default_branch, + ) + all_skippable_paths = itertools.chain(*[sp for sp in create_obj.skippable_paths.values()]) + for _, _, files in PIPELINE_TEMPLATE.walk(): + for file in files: + str_path = str(Path(file).relative_to(PIPELINE_TEMPLATE)) + assert str_path in all_skippable_paths, f"Template file `{str_path}` not present in a group for pipeline customisation `PipelineCreate.skippable_paths`." + + def test_template_customisation_all_template_areas(self): + """Check that all groups in `skippable_paths` are template areas.""" + create_obj = nf_core.pipelines.create.create.PipelineCreate( + template_config=PIPELINE_TEMPLATE_YML_SKIP, + default_branch=self.default_branch, + ) + for area in create_obj.skippable_paths.keys(): + if area != "is_nfcore": + assert area in create_obj.template_areas.keys(), f"Customisation template group `{area}` not present in `PipelineCreate.template_areas`." + + def test_template_customisation_all_features_tested(self): + "Check that all customisation groups are tested on CI." + create_obj = nf_core.pipelines.create.create.PipelineCreate( + template_config=PIPELINE_TEMPLATE_YML_SKIP, + default_branch=self.default_branch, + ) + with open(PIPELINE_TEMPLATE_YML_SKIP) as fh: + skip_yaml = yaml.safe_load(fh) + with open(Path(nf_core.__file__).parent.parent / ".github" / "workflows" / "create-test-lint-wf-template.yml") as fh: + ci_workflow = yaml.safe_load(fh) + for area in create_obj.skippable_paths.keys(): + assert area in skip_yaml["skip_features"], f"Customisation template group `{area}` not tested in `tests/data/pipeline_create_template_skip.yml`." + if area != "github": + assert f"template_skip_{area}.yml" in ci_workflow["jobs"]["RunTestWorkflow"]["strategy"]["matrix"]["TEMPLATE"], f"Customisation template group `{area}` not tested in `create-test-lint-wf-template.yml` github workflow." From f700e61932f0ff3bb0b40e0570145ad389a86cab Mon Sep 17 00:00:00 2001 From: mirpedrol Date: Mon, 5 Aug 2024 11:28:46 +0200 Subject: [PATCH 02/13] fix linting --- tests/pipelines/test_create.py | 23 +++++++++++++++++------ 1 file changed, 17 insertions(+), 6 deletions(-) diff --git a/tests/pipelines/test_create.py b/tests/pipelines/test_create.py index 0d93afb11..cb8151849 100644 --- a/tests/pipelines/test_create.py +++ b/tests/pipelines/test_create.py @@ -1,5 +1,6 @@ """Some tests covering the pipeline creation sub command.""" +import itertools import os import unittest from pathlib import Path @@ -7,7 +8,6 @@ import git import jinja2 import yaml -import itertools import nf_core.pipelines.create.create from nf_core.pipelines.create.utils import load_features_yaml @@ -147,7 +147,9 @@ def test_template_customisation_all_files_grouping(self): for _, _, files in PIPELINE_TEMPLATE.walk(): for file in files: str_path = str(Path(file).relative_to(PIPELINE_TEMPLATE)) - assert str_path in all_skippable_paths, f"Template file `{str_path}` not present in a group for pipeline customisation `PipelineCreate.skippable_paths`." + assert ( + str_path in all_skippable_paths + ), f"Template file `{str_path}` not present in a group for pipeline customisation `PipelineCreate.skippable_paths`." def test_template_customisation_all_template_areas(self): """Check that all groups in `skippable_paths` are template areas.""" @@ -157,7 +159,9 @@ def test_template_customisation_all_template_areas(self): ) for area in create_obj.skippable_paths.keys(): if area != "is_nfcore": - assert area in create_obj.template_areas.keys(), f"Customisation template group `{area}` not present in `PipelineCreate.template_areas`." + assert ( + area in create_obj.template_areas.keys() + ), f"Customisation template group `{area}` not present in `PipelineCreate.template_areas`." def test_template_customisation_all_features_tested(self): "Check that all customisation groups are tested on CI." @@ -167,9 +171,16 @@ def test_template_customisation_all_features_tested(self): ) with open(PIPELINE_TEMPLATE_YML_SKIP) as fh: skip_yaml = yaml.safe_load(fh) - with open(Path(nf_core.__file__).parent.parent / ".github" / "workflows" / "create-test-lint-wf-template.yml") as fh: + with open( + Path(nf_core.__file__).parent.parent / ".github" / "workflows" / "create-test-lint-wf-template.yml" + ) as fh: ci_workflow = yaml.safe_load(fh) for area in create_obj.skippable_paths.keys(): - assert area in skip_yaml["skip_features"], f"Customisation template group `{area}` not tested in `tests/data/pipeline_create_template_skip.yml`." + assert ( + area in skip_yaml["skip_features"] + ), f"Customisation template group `{area}` not tested in `tests/data/pipeline_create_template_skip.yml`." if area != "github": - assert f"template_skip_{area}.yml" in ci_workflow["jobs"]["RunTestWorkflow"]["strategy"]["matrix"]["TEMPLATE"], f"Customisation template group `{area}` not tested in `create-test-lint-wf-template.yml` github workflow." + assert ( + f"template_skip_{area}.yml" + in ci_workflow["jobs"]["RunTestWorkflow"]["strategy"]["matrix"]["TEMPLATE"] + ), f"Customisation template group `{area}` not tested in `create-test-lint-wf-template.yml` github workflow." From b8812e8abc220d5022c81198d12f66b84b2fe265 Mon Sep 17 00:00:00 2001 From: mirpedrol Date: Mon, 5 Aug 2024 11:29:30 +0200 Subject: [PATCH 03/13] update changelog --- CHANGELOG.md | 1 + 1 file changed, 1 insertion(+) diff --git a/CHANGELOG.md b/CHANGELOG.md index 84a3018fe..88d635569 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -36,6 +36,7 @@ - add option to exclude documentation from pipeline template ([#3130](https://github.com/nf-core/tools/pull/3130)) - add option to exclude test configs from pipeline template ([#3133](https://github.com/nf-core/tools/pull/3133)) - add option to exclude tower.yml from pipeline template ([#3134](https://github.com/nf-core/tools/pull/3134)) +- Add tests to ensure all files are part of a template customisation group and all groups are tested ([#3099](https://github.com/nf-core/tools/pull/3099)) ### Linting From e6507ccd2c2e11a23ac5fcbacb7c5389deb7fbd8 Mon Sep 17 00:00:00 2001 From: mirpedrol Date: Wed, 28 Aug 2024 09:43:32 +0200 Subject: [PATCH 04/13] rename templatefeatures.yml to template_features.yml --- .github/workflows/create-test-lint-wf-template.yml | 2 +- MANIFEST.in | 2 +- .../create/{templatefeatures.yml => template_features.yml} | 0 nf_core/pipelines/create/utils.py | 2 +- 4 files changed, 3 insertions(+), 3 deletions(-) rename nf_core/pipelines/create/{templatefeatures.yml => template_features.yml} (100%) diff --git a/.github/workflows/create-test-lint-wf-template.yml b/.github/workflows/create-test-lint-wf-template.yml index 85ce2230a..1fb521b4b 100644 --- a/.github/workflows/create-test-lint-wf-template.yml +++ b/.github/workflows/create-test-lint-wf-template.yml @@ -44,7 +44,7 @@ jobs: - name: Create Matrix id: create_matrix run: | - echo "matrix=$(yq 'keys | filter(. != "github") | filter(. != "is_nfcore") | filter(. != "test_config") | tojson(0)' nf_core/pipelines/create/templatefeatures.yml)" >> $GITHUB_OUTPUT + echo "matrix=$(yq 'keys | filter(. != "github") | filter(. != "is_nfcore") | filter(. != "test_config") | tojson(0)' nf_core/pipelines/create/template_features.yml)" >> $GITHUB_OUTPUT RunTestWorkflow: runs-on: ${{ matrix.runner }} diff --git a/MANIFEST.in b/MANIFEST.in index 2bec40380..ce2e08c09 100644 --- a/MANIFEST.in +++ b/MANIFEST.in @@ -10,4 +10,4 @@ include nf_core/assets/logo/nf-core-repo-logo-base-darkbg.png include nf_core/assets/logo/placeholder_logo.svg include nf_core/assets/logo/MavenPro-Bold.ttf include nf_core/pipelines/create/create.tcss -include nf_core/pipelines/create/templatefeatures.yml +include nf_core/pipelines/create/template_features.yml diff --git a/nf_core/pipelines/create/templatefeatures.yml b/nf_core/pipelines/create/template_features.yml similarity index 100% rename from nf_core/pipelines/create/templatefeatures.yml rename to nf_core/pipelines/create/template_features.yml diff --git a/nf_core/pipelines/create/utils.py b/nf_core/pipelines/create/utils.py index 0b72c2bcf..9b331c2a3 100644 --- a/nf_core/pipelines/create/utils.py +++ b/nf_core/pipelines/create/utils.py @@ -37,7 +37,7 @@ def init_context(value: Dict[str, Any]) -> Iterator[None]: NFCORE_PIPELINE_GLOBAL: bool = True # YAML file describing template features -features_yml_path = Path(nf_core.__file__).parent / "pipelines" / "create" / "templatefeatures.yml" +features_yml_path = Path(nf_core.__file__).parent / "pipelines" / "create" / "template_features.yml" class CreateConfig(NFCoreTemplateConfig): From fcfdbaf08031d94504e1ee7f14bea7b967101591 Mon Sep 17 00:00:00 2001 From: mirpedrol Date: Wed, 28 Aug 2024 10:12:34 +0200 Subject: [PATCH 05/13] update test to use template_features.yml and add missing files to a feature group --- .../pipelines/create/template_features.yml | 6 +- tests/pipelines/test_create.py | 78 ++++++++----------- 2 files changed, 38 insertions(+), 46 deletions(-) diff --git a/nf_core/pipelines/create/template_features.yml b/nf_core/pipelines/create/template_features.yml index d72e2cff7..a8300700a 100644 --- a/nf_core/pipelines/create/template_features.yml +++ b/nf_core/pipelines/create/template_features.yml @@ -1,7 +1,8 @@ github: skippable_paths: - - ".github/" + - ".github" - ".gitignore" + - ".gitattributes" short_description: "Skip the creation of a local Git repository." description: "" help_text: "" @@ -282,6 +283,9 @@ changelog: nf_schema: skippable_paths: - "subworkflows/nf-core/utils_nfschema_plugin" + - "nextflow_schema.json" + - "assets/schema_input.json" + - "assets/samplesheet.csv" short_description: "Use nf-schema" description: "Use the nf-schema Nextflow plugin for this pipeline." help_text: | diff --git a/tests/pipelines/test_create.py b/tests/pipelines/test_create.py index cb8151849..cccd9643f 100644 --- a/tests/pipelines/test_create.py +++ b/tests/pipelines/test_create.py @@ -1,6 +1,5 @@ """Some tests covering the pipeline creation sub command.""" -import itertools import os import unittest from pathlib import Path @@ -139,48 +138,37 @@ def test_pipeline_creation_with_yml_skip(self, tmp_path): def test_template_customisation_all_files_grouping(self): """Test that all pipeline template files are included in a pipeline customisation group.""" - create_obj = nf_core.pipelines.create.create.PipelineCreate( - template_config=PIPELINE_TEMPLATE_YML_SKIP, - default_branch=self.default_branch, - ) - all_skippable_paths = itertools.chain(*[sp for sp in create_obj.skippable_paths.values()]) - for _, _, files in PIPELINE_TEMPLATE.walk(): + template_features_yml = load_features_yaml() + base_required_files = [ + ".nf-core.yml", + "README.md", + "nextflow.config", + "CITATIONS.md", + "main.nf", + "workflows/pipeline.nf", + ] + all_skipped_files = [] + for feature in template_features_yml.keys(): + if template_features_yml[feature]["skippable_paths"]: + all_skipped_files.extend(template_features_yml[feature]["skippable_paths"]) + + for root, _, files in PIPELINE_TEMPLATE.walk(): for file in files: - str_path = str(Path(file).relative_to(PIPELINE_TEMPLATE)) - assert ( - str_path in all_skippable_paths - ), f"Template file `{str_path}` not present in a group for pipeline customisation `PipelineCreate.skippable_paths`." - - def test_template_customisation_all_template_areas(self): - """Check that all groups in `skippable_paths` are template areas.""" - create_obj = nf_core.pipelines.create.create.PipelineCreate( - template_config=PIPELINE_TEMPLATE_YML_SKIP, - default_branch=self.default_branch, - ) - for area in create_obj.skippable_paths.keys(): - if area != "is_nfcore": - assert ( - area in create_obj.template_areas.keys() - ), f"Customisation template group `{area}` not present in `PipelineCreate.template_areas`." - - def test_template_customisation_all_features_tested(self): - "Check that all customisation groups are tested on CI." - create_obj = nf_core.pipelines.create.create.PipelineCreate( - template_config=PIPELINE_TEMPLATE_YML_SKIP, - default_branch=self.default_branch, - ) - with open(PIPELINE_TEMPLATE_YML_SKIP) as fh: - skip_yaml = yaml.safe_load(fh) - with open( - Path(nf_core.__file__).parent.parent / ".github" / "workflows" / "create-test-lint-wf-template.yml" - ) as fh: - ci_workflow = yaml.safe_load(fh) - for area in create_obj.skippable_paths.keys(): - assert ( - area in skip_yaml["skip_features"] - ), f"Customisation template group `{area}` not tested in `tests/data/pipeline_create_template_skip.yml`." - if area != "github": - assert ( - f"template_skip_{area}.yml" - in ci_workflow["jobs"]["RunTestWorkflow"]["strategy"]["matrix"]["TEMPLATE"] - ), f"Customisation template group `{area}` not tested in `create-test-lint-wf-template.yml` github workflow." + str_path = str((root / file).relative_to(PIPELINE_TEMPLATE)) + if str_path not in base_required_files: + try: + assert ( + str_path in all_skipped_files + ), f"Template file `{str_path}` not present in a group for pipeline customisation in `template_features.yml`." + except AssertionError: + if "/" in str_path: + # Check if the parent directory is in the skipped files + upper_dir_present = False + for i in range(1, len(str_path.split("/"))): + upper_dir = "/".join(str_path.split("/")[:i]) + if upper_dir in all_skipped_files: + upper_dir_present = True + break + assert upper_dir_present, f"Template file `{str_path}` not present in a group for pipeline customisation in `template_features.yml`." + else: + raise From ea52f9bf241c0f7302d385b74123624b65bbe11d Mon Sep 17 00:00:00 2001 From: mirpedrol Date: Wed, 28 Aug 2024 10:27:39 +0200 Subject: [PATCH 06/13] fix pipeline linting when skipping nf_schema --- nf_core/pipelines/create/template_features.yml | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/nf_core/pipelines/create/template_features.yml b/nf_core/pipelines/create/template_features.yml index a8300700a..b3b124f62 100644 --- a/nf_core/pipelines/create/template_features.yml +++ b/nf_core/pipelines/create/template_features.yml @@ -292,6 +292,13 @@ nf_schema: [nf-schema](https://nextflow-io.github.io/nf-schema/latest/) is used to validate input parameters based on a JSON schema. It also provides helper functionality to create help messages, get a summary of changed parameters and validate and convert a samplesheet to a channel. + linting: + files_exist: + - "nextflow_schema.json" + schema_params: False + schema_lint: False + schema_description: False + nextflow_config: False nfcore_pipelines: True custom_pipelines: True license: From fc7c1e810542aebf976fa10378c78637f9fa2788 Mon Sep 17 00:00:00 2001 From: mirpedrol Date: Wed, 28 Aug 2024 10:34:46 +0200 Subject: [PATCH 07/13] switch to os.walk to support <3.10 versions of Python --- tests/pipelines/test_create.py | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/tests/pipelines/test_create.py b/tests/pipelines/test_create.py index cccd9643f..d72b34690 100644 --- a/tests/pipelines/test_create.py +++ b/tests/pipelines/test_create.py @@ -152,9 +152,9 @@ def test_template_customisation_all_files_grouping(self): if template_features_yml[feature]["skippable_paths"]: all_skipped_files.extend(template_features_yml[feature]["skippable_paths"]) - for root, _, files in PIPELINE_TEMPLATE.walk(): + for root, _, files in os.walk(PIPELINE_TEMPLATE): for file in files: - str_path = str((root / file).relative_to(PIPELINE_TEMPLATE)) + str_path = str((Path(root) / file).relative_to(PIPELINE_TEMPLATE)) if str_path not in base_required_files: try: assert ( From 283284c5ab705c032b6e75850d44fe8a61f7530c Mon Sep 17 00:00:00 2001 From: mirpedrol Date: Thu, 29 Aug 2024 12:31:47 +0200 Subject: [PATCH 08/13] some more minimal template fixes --- nf_core/pipeline-template/README.md | 6 ++++++ nf_core/pipeline-template/nextflow.config | 9 +++++---- nf_core/pipeline-template/nextflow_schema.json | 12 +++++++----- nf_core/pipelines/create/template_features.yml | 2 +- 4 files changed, 19 insertions(+), 10 deletions(-) diff --git a/nf_core/pipeline-template/README.md b/nf_core/pipeline-template/README.md index 1fa210c0e..f4cbce19c 100644 --- a/nf_core/pipeline-template/README.md +++ b/nf_core/pipeline-template/README.md @@ -7,6 +7,12 @@ +{%- else %} + +

+ {{ name }} +

+ {% endif -%} {% if github_badges -%} [![GitHub Actions CI Status](https://github.com/{{ name }}/actions/workflows/ci.yml/badge.svg)](https://github.com/{{ name }}/actions/workflows/ci.yml) diff --git a/nf_core/pipeline-template/nextflow.config b/nf_core/pipeline-template/nextflow.config index 7776bc03f..8201916b3 100644 --- a/nf_core/pipeline-template/nextflow.config +++ b/nf_core/pipeline-template/nextflow.config @@ -31,14 +31,14 @@ params { // Boilerplate options outdir = null - publish_dir_mode = 'copy' + {% if modules %}publish_dir_mode = 'copy'{% endif %} {%- if email %} email = null email_on_fail = null plaintext_email = false {%- endif %} - monochrome_logs = false - hook_url = null + {% if modules %}monochrome_logs = false{% endif %} + {% if slackreport or adaptivecard %}hook_url = null{% endif %} {% if nf_schema %}help = false help_full = false show_hidden = false{% endif %} @@ -62,9 +62,10 @@ params { max_cpus = 16 max_time = '240.h' + {%- if nf_schema %} // Schema validation default options validate_params = true - + {% endif %} } {% if modules %} // Load base.config by default for all pipelines diff --git a/nf_core/pipeline-template/nextflow_schema.json b/nf_core/pipeline-template/nextflow_schema.json index c84f652d0..446da25ae 100644 --- a/nf_core/pipeline-template/nextflow_schema.json +++ b/nf_core/pipeline-template/nextflow_schema.json @@ -184,6 +184,7 @@ "fa_icon": "fas fa-question-circle", "hidden": true }, + {%- if modules %} "publish_dir_mode": { "type": "string", "default": "copy", @@ -192,7 +193,7 @@ "fa_icon": "fas fa-copy", "enum": ["symlink", "rellink", "link", "copy", "copyNoFollow", "move"], "hidden": true - },{% if email %} + },{% endif %}{% if email %} "email_on_fail": { "type": "string", "description": "Email address for completion summary, only when pipeline fails.", @@ -215,21 +216,22 @@ "default": "25.MB", "fa_icon": "fas fa-file-upload", "hidden": true - }, - {% endif %} + },{% endif %} + {%- if modules %} "monochrome_logs": { "type": "boolean", "description": "Do not use coloured log outputs.", "fa_icon": "fas fa-palette", "hidden": true - }, + },{% endif %} + {%- if slackreport or adaptivecard %} "hook_url": { "type": "string", "description": "Incoming hook URL for messaging service", "fa_icon": "fas fa-people-group", "help_text": "Incoming hook URL for messaging service. Currently, MS Teams and Slack are supported.", "hidden": true - }, + },{% endif %} {%- if multiqc %} "multiqc_config": { "type": "string", diff --git a/nf_core/pipelines/create/template_features.yml b/nf_core/pipelines/create/template_features.yml index b3b124f62..744c05407 100644 --- a/nf_core/pipelines/create/template_features.yml +++ b/nf_core/pipelines/create/template_features.yml @@ -27,7 +27,7 @@ github: readme: - "nextflow_badge" nfcore_pipelines: False - custom_pipelines: False + custom_pipelines: True ci: skippable_paths: - ".github/workflows/" From 43b35748a4d4078d080ffbe4f494cbb6f2aed1ff Mon Sep 17 00:00:00 2001 From: mirpedrol Date: Thu, 29 Aug 2024 13:49:20 +0200 Subject: [PATCH 09/13] update textual snapshots --- .../__snapshots__/test_create_app.ambr | 511 +++++++++--------- 1 file changed, 256 insertions(+), 255 deletions(-) diff --git a/tests/pipelines/__snapshots__/test_create_app.ambr b/tests/pipelines/__snapshots__/test_create_app.ambr index 8a0f4dd68..9a7e52288 100644 --- a/tests/pipelines/__snapshots__/test_create_app.ambr +++ b/tests/pipelines/__snapshots__/test_create_app.ambr @@ -851,257 +851,257 @@ font-weight: 700; } - .terminal-2784035137-matrix { + .terminal-1873624262-matrix { font-family: Fira Code, monospace; font-size: 20px; line-height: 24.4px; font-variant-east-asian: full-width; } - .terminal-2784035137-title { + .terminal-1873624262-title { font-size: 18px; font-weight: bold; font-family: arial; } - .terminal-2784035137-r1 { fill: #c5c8c6 } - .terminal-2784035137-r2 { fill: #e3e3e3 } - .terminal-2784035137-r3 { fill: #989898 } - .terminal-2784035137-r4 { fill: #e1e1e1 } - .terminal-2784035137-r5 { fill: #4ebf71;font-weight: bold } - .terminal-2784035137-r6 { fill: #1e1e1e } - .terminal-2784035137-r7 { fill: #507bb3 } - .terminal-2784035137-r8 { fill: #e2e2e2 } - .terminal-2784035137-r9 { fill: #808080 } - .terminal-2784035137-r10 { fill: #dde6ed;font-weight: bold } - .terminal-2784035137-r11 { fill: #001541 } - .terminal-2784035137-r12 { fill: #0178d4 } - .terminal-2784035137-r13 { fill: #454a50 } - .terminal-2784035137-r14 { fill: #e2e3e3;font-weight: bold } - .terminal-2784035137-r15 { fill: #000000 } - .terminal-2784035137-r16 { fill: #14191f } - .terminal-2784035137-r17 { fill: #e4e4e4 } - .terminal-2784035137-r18 { fill: #7ae998 } - .terminal-2784035137-r19 { fill: #0a180e;font-weight: bold } - .terminal-2784035137-r20 { fill: #008139 } - .terminal-2784035137-r21 { fill: #fea62b;font-weight: bold } - .terminal-2784035137-r22 { fill: #a7a9ab } - .terminal-2784035137-r23 { fill: #e2e3e3 } + .terminal-1873624262-r1 { fill: #c5c8c6 } + .terminal-1873624262-r2 { fill: #e3e3e3 } + .terminal-1873624262-r3 { fill: #989898 } + .terminal-1873624262-r4 { fill: #e1e1e1 } + .terminal-1873624262-r5 { fill: #4ebf71;font-weight: bold } + .terminal-1873624262-r6 { fill: #1e1e1e } + .terminal-1873624262-r7 { fill: #507bb3 } + .terminal-1873624262-r8 { fill: #e2e2e2 } + .terminal-1873624262-r9 { fill: #dde6ed;font-weight: bold } + .terminal-1873624262-r10 { fill: #001541 } + .terminal-1873624262-r11 { fill: #808080 } + .terminal-1873624262-r12 { fill: #14191f } + .terminal-1873624262-r13 { fill: #0178d4 } + .terminal-1873624262-r14 { fill: #454a50 } + .terminal-1873624262-r15 { fill: #e2e3e3;font-weight: bold } + .terminal-1873624262-r16 { fill: #000000 } + .terminal-1873624262-r17 { fill: #e4e4e4 } + .terminal-1873624262-r18 { fill: #7ae998 } + .terminal-1873624262-r19 { fill: #0a180e;font-weight: bold } + .terminal-1873624262-r20 { fill: #008139 } + .terminal-1873624262-r21 { fill: #fea62b;font-weight: bold } + .terminal-1873624262-r22 { fill: #a7a9ab } + .terminal-1873624262-r23 { fill: #e2e3e3 } - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - nf-core create + nf-core create - - - - nf-core create — Create a new pipeline with the nf-core pipeline template - - - Template features - - - ▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔ -         Add Github CI testsThe pipeline will  Show help  - ▁▁▁▁▁▁▁▁include several GitHub▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁ - actions for Continuous - Integration (CI)  - testing - - ▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔ -         Use reference genomesThe pipeline will be  Hide help  - ▁▁▁▁▁▁▁▁configured to use a ▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁ - copy of the most ▁▁ - common reference  - genome files from  - iGenomes - - - Nf-core pipelines are configured to use a copy of the most common reference  - genome files. - - By selecting this option, your pipeline will include a configuration file  - specifying the paths to these files. - - The required code to use these files will also be included in the template.  - When the pipeline user provides an appropriate genome key, the pipeline will - automatically download the required reference files. - ▅▅ - For more information about reference genomes in nf-core pipelines, see the  - - - ▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔ -         Add Github badgesThe README.md file of  Show help  - ▁▁▁▁▁▁▁▁the pipeline will ▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁ - include GitHub badges - - ▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔ -         Add configuration The pipeline will  Show help  - ▁▁▁▁▁▁▁▁        filesinclude configuration ▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁ - profiles containing  - custom parameters  - ▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔ -  Back  Continue  - ▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁ - -  d Toggle dark mode  q Quit  + + + + nf-core create — Create a new pipeline with the nf-core pipeline template + + + Template features + + + ▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔ +         Skip the creation of a                                       Show help  + ▁▁▁▁▁▁▁▁        local Git repository.▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁ + + ▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔ +         Add Github CI testsThe pipeline will  Show help  + ▁▁▁▁▁▁▁▁include several GitHub▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁ + actions for Continuous + Integration (CI)  + testing + ▄▄ + ▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔ +         Use reference genomesThe pipeline will be  Hide help  + ▁▁▁▁▁▁▁▁configured to use a ▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁ + copy of the most  + common reference  + genome files from  + iGenomes + + + Nf-core pipelines are configured to use a copy of the most common reference  + genome files. + + By selecting this option, your pipeline will include a configuration file  + specifying the paths to these files. + + The required code to use these files will also be included in the template.  + When the pipeline user provides an appropriate genome key, the pipeline will + automatically download the required reference files. + ▅▅ + For more information about reference genomes in nf-core pipelines, see the  + + + ▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔ +         Add Github badgesThe README.md file of  Show help  + ▁▁▁▁▁▁▁▁the pipeline will ▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁ + include GitHub badges + + ▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔ + ▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔ +  Back  Continue  + ▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁ + +  d Toggle dark mode  q Quit  @@ -2233,254 +2233,255 @@ font-weight: 700; } - .terminal-1508200152-matrix { + .terminal-2724681558-matrix { font-family: Fira Code, monospace; font-size: 20px; line-height: 24.4px; font-variant-east-asian: full-width; } - .terminal-1508200152-title { + .terminal-2724681558-title { font-size: 18px; font-weight: bold; font-family: arial; } - .terminal-1508200152-r1 { fill: #c5c8c6 } - .terminal-1508200152-r2 { fill: #e3e3e3 } - .terminal-1508200152-r3 { fill: #989898 } - .terminal-1508200152-r4 { fill: #e1e1e1 } - .terminal-1508200152-r5 { fill: #4ebf71;font-weight: bold } - .terminal-1508200152-r6 { fill: #1e1e1e } - .terminal-1508200152-r7 { fill: #507bb3 } - .terminal-1508200152-r8 { fill: #e2e2e2 } - .terminal-1508200152-r9 { fill: #808080 } - .terminal-1508200152-r10 { fill: #dde6ed;font-weight: bold } - .terminal-1508200152-r11 { fill: #001541 } - .terminal-1508200152-r12 { fill: #454a50 } - .terminal-1508200152-r13 { fill: #7ae998 } - .terminal-1508200152-r14 { fill: #e2e3e3;font-weight: bold } - .terminal-1508200152-r15 { fill: #0a180e;font-weight: bold } - .terminal-1508200152-r16 { fill: #000000 } - .terminal-1508200152-r17 { fill: #008139 } - .terminal-1508200152-r18 { fill: #fea62b;font-weight: bold } - .terminal-1508200152-r19 { fill: #a7a9ab } - .terminal-1508200152-r20 { fill: #e2e3e3 } + .terminal-2724681558-r1 { fill: #c5c8c6 } + .terminal-2724681558-r2 { fill: #e3e3e3 } + .terminal-2724681558-r3 { fill: #989898 } + .terminal-2724681558-r4 { fill: #e1e1e1 } + .terminal-2724681558-r5 { fill: #4ebf71;font-weight: bold } + .terminal-2724681558-r6 { fill: #1e1e1e } + .terminal-2724681558-r7 { fill: #507bb3 } + .terminal-2724681558-r8 { fill: #e2e2e2 } + .terminal-2724681558-r9 { fill: #dde6ed;font-weight: bold } + .terminal-2724681558-r10 { fill: #001541 } + .terminal-2724681558-r11 { fill: #808080 } + .terminal-2724681558-r12 { fill: #14191f } + .terminal-2724681558-r13 { fill: #454a50 } + .terminal-2724681558-r14 { fill: #7ae998 } + .terminal-2724681558-r15 { fill: #e2e3e3;font-weight: bold } + .terminal-2724681558-r16 { fill: #0a180e;font-weight: bold } + .terminal-2724681558-r17 { fill: #000000 } + .terminal-2724681558-r18 { fill: #008139 } + .terminal-2724681558-r19 { fill: #fea62b;font-weight: bold } + .terminal-2724681558-r20 { fill: #a7a9ab } + .terminal-2724681558-r21 { fill: #e2e3e3 } - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - nf-core create + nf-core create - - - - nf-core create — Create a new pipeline with the nf-core pipeline template - - - Template features - - - ▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔ -         Add Github CI testsThe pipeline will  Show help  - ▁▁▁▁▁▁▁▁include several GitHub▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁ - actions for Continuous - Integration (CI)  - testing - - ▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔ -         Use reference genomesThe pipeline will be  Show help  - ▁▁▁▁▁▁▁▁configured to use a ▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁ - copy of the most  - common reference  - genome files from  - iGenomes - - ▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔ -         Add Github badgesThe README.md file of  Show help  - ▁▁▁▁▁▁▁▁the pipeline will ▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁ - include GitHub badges - - ▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔ -         Add configuration The pipeline will  Show help  - ▁▁▁▁▁▁▁▁        filesinclude configuration ▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁ - profiles containing  - custom parameters  - requried to run  - nf-core pipelines at  - different institutions - - ▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔ -         Use code lintersThe pipeline will  Show help  - ▁▁▁▁▁▁▁▁include code linters ▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁ - and CI tests to lint  - your code: pre-commit, - editor-config and  - prettier. - - ▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔ -         Include citationsInclude pipeline tools Show help  - ▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔ -  Back  Continue  - ▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁ - -  d Toggle dark mode  q Quit  + + + + nf-core create — Create a new pipeline with the nf-core pipeline template + + + Template features + + + ▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔ +         Skip the creation of a                                       Show help  + ▁▁▁▁▁▁▁▁        local Git repository.▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁ + + ▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔ +         Add Github CI testsThe pipeline will  Show help  + ▁▁▁▁▁▁▁▁include several GitHub▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁ + actions for Continuous + Integration (CI)  + testing + + ▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▃▃ +         Use reference genomesThe pipeline will be  Show help  + ▁▁▁▁▁▁▁▁configured to use a ▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁ + copy of the most  + common reference  + genome files from  + iGenomes + + ▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔ +         Add Github badgesThe README.md file of  Show help  + ▁▁▁▁▁▁▁▁the pipeline will ▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁ + include GitHub badges + + ▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔ +         Add configuration The pipeline will  Show help  + ▁▁▁▁▁▁▁▁        filesinclude configuration ▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁ + profiles containing  + custom parameters  + requried to run  + nf-core pipelines at  + different institutions + + ▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔ +         Use code lintersThe pipeline will  Show help  + ▁▁▁▁▁▁▁▁include code linters ▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁ + and CI tests to lint  + your code: pre-commit, + editor-config and  + ▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔ +  Back  Continue  + ▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁ + +  d Toggle dark mode  q Quit  From a0682c3fa7c9bd2b2b3f16dd06097efa79943b36 Mon Sep 17 00:00:00 2001 From: mirpedrol Date: Thu, 29 Aug 2024 13:58:30 +0200 Subject: [PATCH 10/13] don't remove .gitignore when unselecting github --- nf_core/pipelines/create/template_features.yml | 16 +++++++++++----- 1 file changed, 11 insertions(+), 5 deletions(-) diff --git a/nf_core/pipelines/create/template_features.yml b/nf_core/pipelines/create/template_features.yml index 744c05407..b59a2e51a 100644 --- a/nf_core/pipelines/create/template_features.yml +++ b/nf_core/pipelines/create/template_features.yml @@ -1,11 +1,18 @@ github: skippable_paths: - ".github" - - ".gitignore" - ".gitattributes" - short_description: "Skip the creation of a local Git repository." - description: "" - help_text: "" + short_description: "Use a GitHub repository." + description: "Create a GitHub repository for the pipeline." + help_text: | + This will create a GitHub repository for the pipeline. + + The repository will include: + - Continuous Integration (CI) tests + - Issues and pull requests templates + + The initialisation of a git repository is required to use the nf-core/tools. + This means that even if you unselect this option, your pipeline will still contain a `.git` directory and `.gitignore` file. linting: files_exist: - ".github/ISSUE_TEMPLATE/bug_report.yml" @@ -13,7 +20,6 @@ github: - ".github/PULL_REQUEST_TEMPLATE.md" - ".github/CONTRIBUTING.md" - ".github/.dockstore.yml" - - ".gitignore" files_unchanged: - ".github/ISSUE_TEMPLATE/bug_report.yml" - ".github/ISSUE_TEMPLATE/config.yml" From 825d7b68b928267c4cfcff6989907dc389165165 Mon Sep 17 00:00:00 2001 From: mirpedrol Date: Thu, 29 Aug 2024 14:07:59 +0200 Subject: [PATCH 11/13] update textual snapshots --- .../__snapshots__/test_create_app.ambr | 512 +++++++++--------- 1 file changed, 256 insertions(+), 256 deletions(-) diff --git a/tests/pipelines/__snapshots__/test_create_app.ambr b/tests/pipelines/__snapshots__/test_create_app.ambr index 9a7e52288..6e3009e18 100644 --- a/tests/pipelines/__snapshots__/test_create_app.ambr +++ b/tests/pipelines/__snapshots__/test_create_app.ambr @@ -851,257 +851,257 @@ font-weight: 700; } - .terminal-1873624262-matrix { + .terminal-1208643741-matrix { font-family: Fira Code, monospace; font-size: 20px; line-height: 24.4px; font-variant-east-asian: full-width; } - .terminal-1873624262-title { + .terminal-1208643741-title { font-size: 18px; font-weight: bold; font-family: arial; } - .terminal-1873624262-r1 { fill: #c5c8c6 } - .terminal-1873624262-r2 { fill: #e3e3e3 } - .terminal-1873624262-r3 { fill: #989898 } - .terminal-1873624262-r4 { fill: #e1e1e1 } - .terminal-1873624262-r5 { fill: #4ebf71;font-weight: bold } - .terminal-1873624262-r6 { fill: #1e1e1e } - .terminal-1873624262-r7 { fill: #507bb3 } - .terminal-1873624262-r8 { fill: #e2e2e2 } - .terminal-1873624262-r9 { fill: #dde6ed;font-weight: bold } - .terminal-1873624262-r10 { fill: #001541 } - .terminal-1873624262-r11 { fill: #808080 } - .terminal-1873624262-r12 { fill: #14191f } - .terminal-1873624262-r13 { fill: #0178d4 } - .terminal-1873624262-r14 { fill: #454a50 } - .terminal-1873624262-r15 { fill: #e2e3e3;font-weight: bold } - .terminal-1873624262-r16 { fill: #000000 } - .terminal-1873624262-r17 { fill: #e4e4e4 } - .terminal-1873624262-r18 { fill: #7ae998 } - .terminal-1873624262-r19 { fill: #0a180e;font-weight: bold } - .terminal-1873624262-r20 { fill: #008139 } - .terminal-1873624262-r21 { fill: #fea62b;font-weight: bold } - .terminal-1873624262-r22 { fill: #a7a9ab } - .terminal-1873624262-r23 { fill: #e2e3e3 } + .terminal-1208643741-r1 { fill: #c5c8c6 } + .terminal-1208643741-r2 { fill: #e3e3e3 } + .terminal-1208643741-r3 { fill: #989898 } + .terminal-1208643741-r4 { fill: #e1e1e1 } + .terminal-1208643741-r5 { fill: #4ebf71;font-weight: bold } + .terminal-1208643741-r6 { fill: #1e1e1e } + .terminal-1208643741-r7 { fill: #507bb3 } + .terminal-1208643741-r8 { fill: #e2e2e2 } + .terminal-1208643741-r9 { fill: #808080 } + .terminal-1208643741-r10 { fill: #dde6ed;font-weight: bold } + .terminal-1208643741-r11 { fill: #001541 } + .terminal-1208643741-r12 { fill: #14191f } + .terminal-1208643741-r13 { fill: #0178d4 } + .terminal-1208643741-r14 { fill: #454a50 } + .terminal-1208643741-r15 { fill: #e2e3e3;font-weight: bold } + .terminal-1208643741-r16 { fill: #000000 } + .terminal-1208643741-r17 { fill: #e4e4e4 } + .terminal-1208643741-r18 { fill: #7ae998 } + .terminal-1208643741-r19 { fill: #0a180e;font-weight: bold } + .terminal-1208643741-r20 { fill: #008139 } + .terminal-1208643741-r21 { fill: #fea62b;font-weight: bold } + .terminal-1208643741-r22 { fill: #a7a9ab } + .terminal-1208643741-r23 { fill: #e2e3e3 } - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - nf-core create + nf-core create - - - - nf-core create — Create a new pipeline with the nf-core pipeline template - - - Template features - - - ▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔ -         Skip the creation of a                                       Show help  - ▁▁▁▁▁▁▁▁        local Git repository.▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁ - - ▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔ -         Add Github CI testsThe pipeline will  Show help  - ▁▁▁▁▁▁▁▁include several GitHub▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁ - actions for Continuous - Integration (CI)  - testing - ▄▄ - ▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔ -         Use reference genomesThe pipeline will be  Hide help  - ▁▁▁▁▁▁▁▁configured to use a ▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁ - copy of the most  - common reference  - genome files from  - iGenomes - - - Nf-core pipelines are configured to use a copy of the most common reference  - genome files. - - By selecting this option, your pipeline will include a configuration file  - specifying the paths to these files. - - The required code to use these files will also be included in the template.  - When the pipeline user provides an appropriate genome key, the pipeline will - automatically download the required reference files. - ▅▅ - For more information about reference genomes in nf-core pipelines, see the  - - - ▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔ -         Add Github badgesThe README.md file of  Show help  - ▁▁▁▁▁▁▁▁the pipeline will ▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁ - include GitHub badges - - ▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔ - ▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔ -  Back  Continue  - ▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁ - -  d Toggle dark mode  q Quit  + + + + nf-core create — Create a new pipeline with the nf-core pipeline template + + + Template features + + + ▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔ +         Use a GitHub Create a GitHub  Show help  + ▁▁▁▁▁▁▁▁        repository.repository for the ▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁ + pipeline. + + ▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔ +         Add Github CI testsThe pipeline will  Show help  + ▁▁▁▁▁▁▁▁include several GitHub▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁ + actions for Continuous + Integration (CI)  + testing▄▄ + + ▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔ +         Use reference genomesThe pipeline will be  Hide help  + ▁▁▁▁▁▁▁▁configured to use a ▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁ + copy of the most  + common reference  + genome files from  + iGenomes + + + Nf-core pipelines are configured to use a copy of the most common reference  + genome files. + + By selecting this option, your pipeline will include a configuration file  + specifying the paths to these files. + + The required code to use these files will also be included in the template.  + When the pipeline user provides an appropriate genome key, the pipeline will + automatically download the required reference files. + ▅▅ + For more information about reference genomes in nf-core pipelines, see the  + + + ▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔ +         Add Github badgesThe README.md file of  Show help  + ▁▁▁▁▁▁▁▁the pipeline will ▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁ + include GitHub badges + + ▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔ +  Back  Continue  + ▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁ + +  d Toggle dark mode  q Quit  @@ -2233,255 +2233,255 @@ font-weight: 700; } - .terminal-2724681558-matrix { + .terminal-3747616910-matrix { font-family: Fira Code, monospace; font-size: 20px; line-height: 24.4px; font-variant-east-asian: full-width; } - .terminal-2724681558-title { + .terminal-3747616910-title { font-size: 18px; font-weight: bold; font-family: arial; } - .terminal-2724681558-r1 { fill: #c5c8c6 } - .terminal-2724681558-r2 { fill: #e3e3e3 } - .terminal-2724681558-r3 { fill: #989898 } - .terminal-2724681558-r4 { fill: #e1e1e1 } - .terminal-2724681558-r5 { fill: #4ebf71;font-weight: bold } - .terminal-2724681558-r6 { fill: #1e1e1e } - .terminal-2724681558-r7 { fill: #507bb3 } - .terminal-2724681558-r8 { fill: #e2e2e2 } - .terminal-2724681558-r9 { fill: #dde6ed;font-weight: bold } - .terminal-2724681558-r10 { fill: #001541 } - .terminal-2724681558-r11 { fill: #808080 } - .terminal-2724681558-r12 { fill: #14191f } - .terminal-2724681558-r13 { fill: #454a50 } - .terminal-2724681558-r14 { fill: #7ae998 } - .terminal-2724681558-r15 { fill: #e2e3e3;font-weight: bold } - .terminal-2724681558-r16 { fill: #0a180e;font-weight: bold } - .terminal-2724681558-r17 { fill: #000000 } - .terminal-2724681558-r18 { fill: #008139 } - .terminal-2724681558-r19 { fill: #fea62b;font-weight: bold } - .terminal-2724681558-r20 { fill: #a7a9ab } - .terminal-2724681558-r21 { fill: #e2e3e3 } + .terminal-3747616910-r1 { fill: #c5c8c6 } + .terminal-3747616910-r2 { fill: #e3e3e3 } + .terminal-3747616910-r3 { fill: #989898 } + .terminal-3747616910-r4 { fill: #e1e1e1 } + .terminal-3747616910-r5 { fill: #4ebf71;font-weight: bold } + .terminal-3747616910-r6 { fill: #1e1e1e } + .terminal-3747616910-r7 { fill: #507bb3 } + .terminal-3747616910-r8 { fill: #e2e2e2 } + .terminal-3747616910-r9 { fill: #808080 } + .terminal-3747616910-r10 { fill: #dde6ed;font-weight: bold } + .terminal-3747616910-r11 { fill: #001541 } + .terminal-3747616910-r12 { fill: #14191f } + .terminal-3747616910-r13 { fill: #454a50 } + .terminal-3747616910-r14 { fill: #7ae998 } + .terminal-3747616910-r15 { fill: #e2e3e3;font-weight: bold } + .terminal-3747616910-r16 { fill: #0a180e;font-weight: bold } + .terminal-3747616910-r17 { fill: #000000 } + .terminal-3747616910-r18 { fill: #008139 } + .terminal-3747616910-r19 { fill: #fea62b;font-weight: bold } + .terminal-3747616910-r20 { fill: #a7a9ab } + .terminal-3747616910-r21 { fill: #e2e3e3 } - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - nf-core create + nf-core create - - - - nf-core create — Create a new pipeline with the nf-core pipeline template - - - Template features - - - ▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔ -         Skip the creation of a                                       Show help  - ▁▁▁▁▁▁▁▁        local Git repository.▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁ - - ▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔ -         Add Github CI testsThe pipeline will  Show help  - ▁▁▁▁▁▁▁▁include several GitHub▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁ - actions for Continuous - Integration (CI)  - testing - - ▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▃▃ -         Use reference genomesThe pipeline will be  Show help  - ▁▁▁▁▁▁▁▁configured to use a ▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁ - copy of the most  - common reference  - genome files from  - iGenomes - - ▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔ -         Add Github badgesThe README.md file of  Show help  - ▁▁▁▁▁▁▁▁the pipeline will ▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁ - include GitHub badges - - ▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔ -         Add configuration The pipeline will  Show help  - ▁▁▁▁▁▁▁▁        filesinclude configuration ▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁ - profiles containing  - custom parameters  - requried to run  - nf-core pipelines at  - different institutions - - ▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔ -         Use code lintersThe pipeline will  Show help  - ▁▁▁▁▁▁▁▁include code linters ▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁ - and CI tests to lint  - your code: pre-commit, - editor-config and  - ▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔ -  Back  Continue  - ▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁ - -  d Toggle dark mode  q Quit  + + + + nf-core create — Create a new pipeline with the nf-core pipeline template + + + Template features + + + ▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔ +         Use a GitHub Create a GitHub  Show help  + ▁▁▁▁▁▁▁▁        repository.repository for the ▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁ + pipeline. + + ▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔ +         Add Github CI testsThe pipeline will  Show help  + ▁▁▁▁▁▁▁▁include several GitHub▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁ + actions for Continuous + Integration (CI)  + testing + ▃▃ + ▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔ +         Use reference genomesThe pipeline will be  Show help  + ▁▁▁▁▁▁▁▁configured to use a ▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁ + copy of the most  + common reference  + genome files from  + iGenomes + + ▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔ +         Add Github badgesThe README.md file of  Show help  + ▁▁▁▁▁▁▁▁the pipeline will ▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁ + include GitHub badges + + ▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔ +         Add configuration The pipeline will  Show help  + ▁▁▁▁▁▁▁▁        filesinclude configuration ▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁ + profiles containing  + custom parameters  + requried to run  + nf-core pipelines at  + different institutions + + ▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔ +         Use code lintersThe pipeline will  Show help  + ▁▁▁▁▁▁▁▁include code linters ▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁ + and CI tests to lint  + your code: pre-commit, + ▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔ +  Back  Continue  + ▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁ + +  d Toggle dark mode  q Quit  From 5b9eff5dfb1b579a334bd8b2903eb8bba25a46ce Mon Sep 17 00:00:00 2001 From: mirpedrol Date: Thu, 29 Aug 2024 14:14:29 +0200 Subject: [PATCH 12/13] add .gitignore to base required files --- tests/pipelines/test_create.py | 1 + 1 file changed, 1 insertion(+) diff --git a/tests/pipelines/test_create.py b/tests/pipelines/test_create.py index d72b34690..f83cc274f 100644 --- a/tests/pipelines/test_create.py +++ b/tests/pipelines/test_create.py @@ -140,6 +140,7 @@ def test_template_customisation_all_files_grouping(self): """Test that all pipeline template files are included in a pipeline customisation group.""" template_features_yml = load_features_yaml() base_required_files = [ + ".gitignore", ".nf-core.yml", "README.md", "nextflow.config", From fef0829832068384635a7ea36b956cbf663938aa Mon Sep 17 00:00:00 2001 From: Phil Ewels Date: Sun, 1 Sep 2024 08:34:03 +0200 Subject: [PATCH 13/13] markdown header --- nf_core/pipeline-template/README.md | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) diff --git a/nf_core/pipeline-template/README.md b/nf_core/pipeline-template/README.md index f4cbce19c..beb45ed51 100644 --- a/nf_core/pipeline-template/README.md +++ b/nf_core/pipeline-template/README.md @@ -9,9 +9,7 @@ {%- else %} -

- {{ name }} -

+# {{ name }} {% endif -%} {% if github_badges -%}