mirror of
https://github.com/MillironX/taxprofiler.git
synced 2024-11-24 05:19:55 +00:00
Template update for nf-core/tools version 2.4
This commit is contained in:
parent
feeb8ba8dd
commit
a560492353
12 changed files with 136 additions and 131 deletions
3
.github/workflows/awsfulltest.yml
vendored
3
.github/workflows/awsfulltest.yml
vendored
|
@ -28,6 +28,3 @@ jobs:
|
||||||
"outdir": "s3://${{ secrets.AWS_S3_BUCKET }}/taxprofiler/results-${{ github.sha }}"
|
"outdir": "s3://${{ secrets.AWS_S3_BUCKET }}/taxprofiler/results-${{ github.sha }}"
|
||||||
}
|
}
|
||||||
profiles: test_full,aws_tower
|
profiles: test_full,aws_tower
|
||||||
nextflow_config: |
|
|
||||||
process.errorStrategy = 'retry'
|
|
||||||
process.maxRetries = 3
|
|
||||||
|
|
3
.github/workflows/awstest.yml
vendored
3
.github/workflows/awstest.yml
vendored
|
@ -23,6 +23,3 @@ jobs:
|
||||||
"outdir": "s3://${{ secrets.AWS_S3_BUCKET }}/taxprofiler/results-test-${{ github.sha }}"
|
"outdir": "s3://${{ secrets.AWS_S3_BUCKET }}/taxprofiler/results-test-${{ github.sha }}"
|
||||||
}
|
}
|
||||||
profiles: test,aws_tower
|
profiles: test,aws_tower
|
||||||
nextflow_config: |
|
|
||||||
process.errorStrategy = 'retry'
|
|
||||||
process.maxRetries = 3
|
|
||||||
|
|
3
.github/workflows/branch.yml
vendored
3
.github/workflows/branch.yml
vendored
|
@ -13,7 +13,7 @@ jobs:
|
||||||
- name: Check PRs
|
- name: Check PRs
|
||||||
if: github.repository == 'nf-core/taxprofiler'
|
if: github.repository == 'nf-core/taxprofiler'
|
||||||
run: |
|
run: |
|
||||||
"{ [[ ${{github.event.pull_request.head.repo.full_name }} == nf-core/taxprofiler ]] && [[ $GITHUB_HEAD_REF = "dev" ]]; } || [[ $GITHUB_HEAD_REF == "patch" ]]"
|
{ [[ ${{github.event.pull_request.head.repo.full_name }} == nf-core/taxprofiler ]] && [[ $GITHUB_HEAD_REF = "dev" ]]; } || [[ $GITHUB_HEAD_REF == "patch" ]]
|
||||||
|
|
||||||
# If the above check failed, post a comment on the PR explaining the failure
|
# If the above check failed, post a comment on the PR explaining the failure
|
||||||
# NOTE - this doesn't currently work if the PR is coming from a fork, due to limitations in GitHub actions secrets
|
# NOTE - this doesn't currently work if the PR is coming from a fork, due to limitations in GitHub actions secrets
|
||||||
|
@ -42,4 +42,3 @@ jobs:
|
||||||
Thanks again for your contribution!
|
Thanks again for your contribution!
|
||||||
repo-token: ${{ secrets.GITHUB_TOKEN }}
|
repo-token: ${{ secrets.GITHUB_TOKEN }}
|
||||||
allow-repeats: false
|
allow-repeats: false
|
||||||
#
|
|
||||||
|
|
2
.github/workflows/ci.yml
vendored
2
.github/workflows/ci.yml
vendored
|
@ -48,5 +48,3 @@ jobs:
|
||||||
# Remember that you can parallelise this by using strategy.matrix
|
# Remember that you can parallelise this by using strategy.matrix
|
||||||
run: |
|
run: |
|
||||||
nextflow run ${GITHUB_WORKSPACE} -profile test,docker --outdir ./results
|
nextflow run ${GITHUB_WORKSPACE} -profile test,docker --outdir ./results
|
||||||
|
|
||||||
#
|
|
||||||
|
|
55
.github/workflows/fix-linting.yml
vendored
Normal file
55
.github/workflows/fix-linting.yml
vendored
Normal file
|
@ -0,0 +1,55 @@
|
||||||
|
name: Fix linting from a comment
|
||||||
|
on:
|
||||||
|
issue_comment:
|
||||||
|
types: [created]
|
||||||
|
|
||||||
|
jobs:
|
||||||
|
deploy:
|
||||||
|
# Only run if comment is on a PR with the main repo, and if it contains the magic keywords
|
||||||
|
if: >
|
||||||
|
contains(github.event.comment.html_url, '/pull/') &&
|
||||||
|
contains(github.event.comment.body, '@nf-core-bot fix linting') &&
|
||||||
|
github.repository == 'nf-core/taxprofiler'
|
||||||
|
runs-on: ubuntu-latest
|
||||||
|
steps:
|
||||||
|
# Use the @nf-core-bot token to check out so we can push later
|
||||||
|
- uses: actions/checkout@v3
|
||||||
|
with:
|
||||||
|
token: ${{ secrets.nf_core_bot_auth_token }}
|
||||||
|
|
||||||
|
# Action runs on the issue comment, so we don't get the PR by default
|
||||||
|
# Use the gh cli to check out the PR
|
||||||
|
- name: Checkout Pull Request
|
||||||
|
run: gh pr checkout ${{ github.event.issue.number }}
|
||||||
|
env:
|
||||||
|
GITHUB_TOKEN: ${{ secrets.nf_core_bot_auth_token }}
|
||||||
|
|
||||||
|
- uses: actions/setup-node@v2
|
||||||
|
|
||||||
|
- name: Install Prettier
|
||||||
|
run: npm install -g prettier @prettier/plugin-php
|
||||||
|
|
||||||
|
# Check that we actually need to fix something
|
||||||
|
- name: Run 'prettier --check'
|
||||||
|
id: prettier_status
|
||||||
|
run: |
|
||||||
|
if prettier --check ${GITHUB_WORKSPACE}; then
|
||||||
|
echo "::set-output name=result::pass"
|
||||||
|
else
|
||||||
|
echo "::set-output name=result::fail"
|
||||||
|
fi
|
||||||
|
|
||||||
|
- name: Run 'prettier --write'
|
||||||
|
if: steps.prettier_status.outputs.result == 'fail'
|
||||||
|
run: prettier --write ${GITHUB_WORKSPACE}
|
||||||
|
|
||||||
|
- name: Commit & push changes
|
||||||
|
if: steps.prettier_status.outputs.result == 'fail'
|
||||||
|
run: |
|
||||||
|
git config user.email "core@nf-co.re"
|
||||||
|
git config user.name "nf-core-bot"
|
||||||
|
git config push.default upstream
|
||||||
|
git add .
|
||||||
|
git status
|
||||||
|
git commit -m "[automated] Fix linting with Prettier"
|
||||||
|
git push
|
4
.github/workflows/linting.yml
vendored
4
.github/workflows/linting.yml
vendored
|
@ -48,7 +48,7 @@ jobs:
|
||||||
wget -qO- get.nextflow.io | bash
|
wget -qO- get.nextflow.io | bash
|
||||||
sudo mv nextflow /usr/local/bin/
|
sudo mv nextflow /usr/local/bin/
|
||||||
|
|
||||||
- uses: actions/setup-python@v1
|
- uses: actions/setup-python@v3
|
||||||
with:
|
with:
|
||||||
python-version: "3.6"
|
python-version: "3.6"
|
||||||
architecture: "x64"
|
architecture: "x64"
|
||||||
|
@ -78,5 +78,3 @@ jobs:
|
||||||
lint_log.txt
|
lint_log.txt
|
||||||
lint_results.md
|
lint_results.md
|
||||||
PR_number.txt
|
PR_number.txt
|
||||||
|
|
||||||
#
|
|
||||||
|
|
1
.github/workflows/linting_comment.yml
vendored
1
.github/workflows/linting_comment.yml
vendored
|
@ -26,4 +26,3 @@ jobs:
|
||||||
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
|
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
|
||||||
number: ${{ steps.pr_number.outputs.pr_number }}
|
number: ${{ steps.pr_number.outputs.pr_number }}
|
||||||
path: linting-logs/lint_results.md
|
path: linting-logs/lint_results.md
|
||||||
#
|
|
||||||
|
|
9
.prettierignore
Normal file
9
.prettierignore
Normal file
|
@ -0,0 +1,9 @@
|
||||||
|
email_template.html
|
||||||
|
.nextflow*
|
||||||
|
work/
|
||||||
|
data/
|
||||||
|
results/
|
||||||
|
.DS_Store
|
||||||
|
testing/
|
||||||
|
testing*
|
||||||
|
*.pyc
|
21
README.md
21
README.md
|
@ -1,18 +1,19 @@
|
||||||
# ![nf-core/taxprofiler](docs/images/nf-core/taxprofiler_logo_light.png#gh-light-mode-only) ![nf-core/taxprofiler](docs/images/nf-core/taxprofiler_logo_dark.png#gh-dark-mode-only)
|
# ![nf-core/taxprofiler](docs/images/nf-core-taxprofiler_logo_light.png#gh-light-mode-only) ![nf-core/taxprofiler](docs/images/nf-core-taxprofiler_logo_dark.png#gh-dark-mode-only)
|
||||||
|
|
||||||
[![GitHub Actions CI Status](https://github.com/nf-core/taxprofiler/workflows/nf-core%20CI/badge.svg)](https://github.com/nf-core/taxprofiler/actions?query=workflow%3A%22nf-core+CI%22)
|
[![GitHub Actions CI Status](https://github.com/nf-core/taxprofiler/workflows/nf-core%20CI/badge.svg)](https://github.com/nf-core/taxprofiler/actions?query=workflow%3A%22nf-core+CI%22)
|
||||||
[![GitHub Actions Linting Status](https://github.com/nf-core/taxprofiler/workflows/nf-core%20linting/badge.svg)](https://github.com/nf-core/taxprofiler/actions?query=workflow%3A%22nf-core+linting%22)
|
[![GitHub Actions Linting Status](https://github.com/nf-core/taxprofiler/workflows/nf-core%20linting/badge.svg)](https://github.com/nf-core/taxprofiler/actions?query=workflow%3A%22nf-core+linting%22)
|
||||||
[![AWS CI](https://img.shields.io/badge/CI%20tests-full%20size-FF9900?labelColor=000000&logo=Amazon%20AWS)](https://nf-co.re/taxprofiler/results)
|
[![AWS CI](https://img.shields.io/badge/CI%20tests-full%20size-FF9900?logo=Amazon%20AWS)](https://nf-co.re/taxprofiler/results)
|
||||||
[![Cite with Zenodo](http://img.shields.io/badge/DOI-10.5281/zenodo.XXXXXXX-1073c8?labelColor=000000)](https://doi.org/10.5281/zenodo.XXXXXXX)
|
[![Cite with Zenodo](http://img.shields.io/badge/DOI-10.5281/zenodo.XXXXXXX-1073c8)](https://doi.org/10.5281/zenodo.XXXXXXX)
|
||||||
|
|
||||||
[![Nextflow](https://img.shields.io/badge/nextflow%20DSL2-%E2%89%A521.10.3-23aa62.svg?labelColor=000000)](https://www.nextflow.io/)
|
[![Nextflow](https://img.shields.io/badge/nextflow%20DSL2-%E2%89%A521.10.3-23aa62.svg)](https://www.nextflow.io/)
|
||||||
[![run with conda](http://img.shields.io/badge/run%20with-conda-3EB049?labelColor=000000&logo=anaconda)](https://docs.conda.io/en/latest/)
|
[![run with conda](http://img.shields.io/badge/run%20with-conda-3EB049?logo=anaconda)](https://docs.conda.io/en/latest/)
|
||||||
[![run with docker](https://img.shields.io/badge/run%20with-docker-0db7ed?labelColor=000000&logo=docker)](https://www.docker.com/)
|
[![run with docker](https://img.shields.io/badge/run%20with-docker-0db7ed?logo=docker)](https://www.docker.com/)
|
||||||
[![run with singularity](https://img.shields.io/badge/run%20with-singularity-1d355c.svg?labelColor=000000)](https://sylabs.io/docs/)
|
[![run with singularity](https://img.shields.io/badge/run%20with-singularity-1d355c.svg)](https://sylabs.io/docs/)
|
||||||
|
[![Launch on Nextflow Tower](https://img.shields.io/badge/Launch%20%F0%9F%9A%80-Nextflow%20Tower-%234256e7)](https://tower.nf/launch?pipeline=https://github.com/nf-core/taxprofiler)
|
||||||
|
|
||||||
[![Get help on Slack](http://img.shields.io/badge/slack-nf--core%20%23taxprofiler-4A154B?labelColor=000000&logo=slack)](https://nfcore.slack.com/channels/taxprofiler)
|
[![Get help on Slack](http://img.shields.io/badge/slack-nf--core%20%23taxprofiler-4A154B?logo=slack)](https://nfcore.slack.com/channels/taxprofiler)
|
||||||
[![Follow on Twitter](http://img.shields.io/badge/twitter-%40nf__core-1DA1F2?labelColor=000000&logo=twitter)](https://twitter.com/nf_core)
|
[![Follow on Twitter](http://img.shields.io/badge/twitter-%40nf__core-1DA1F2?logo=twitter)](https://twitter.com/nf_core)
|
||||||
[![Watch on YouTube](http://img.shields.io/badge/youtube-nf--core-FF0000?labelColor=000000&logo=youtube)](https://www.youtube.com/c/nf-core)
|
[![Watch on YouTube](http://img.shields.io/badge/youtube-nf--core-FF0000?logo=youtube)](https://www.youtube.com/c/nf-core)
|
||||||
|
|
||||||
## Introduction
|
## Introduction
|
||||||
|
|
||||||
|
|
|
@ -1,111 +1,53 @@
|
||||||
<html>
|
<html>
|
||||||
<head>
|
<head>
|
||||||
<meta charset="utf-8" />
|
<meta charset="utf-8">
|
||||||
<meta http-equiv="X-UA-Compatible" content="IE=edge" />
|
<meta http-equiv="X-UA-Compatible" content="IE=edge">
|
||||||
<meta name="viewport" content="width=device-width, initial-scale=1" />
|
<meta name="viewport" content="width=device-width, initial-scale=1">
|
||||||
|
|
||||||
<!-- prettier-ignore -->
|
<meta name="description" content="nf-core/taxprofiler: Taxonomic profiling of shotgun metagenomic data">
|
||||||
<meta name="description" content="nf-core/taxprofiler: Taxonomic profiling of shotgun metagenomic data" />
|
<title>nf-core/taxprofiler Pipeline Report</title>
|
||||||
<title>nf-core/taxprofiler Pipeline Report</title>
|
</head>
|
||||||
</head>
|
<body>
|
||||||
<body>
|
<div style="font-family: Helvetica, Arial, sans-serif; padding: 30px; max-width: 800px; margin: 0 auto;">
|
||||||
<div style="font-family: Helvetica, Arial, sans-serif; padding: 30px; max-width: 800px; margin: 0 auto">
|
|
||||||
<img src="cid:nfcorepipelinelogo" />
|
|
||||||
|
|
||||||
<h1>nf-core/taxprofiler v${version}</h1>
|
<img src="cid:nfcorepipelinelogo">
|
||||||
<h2>Run Name: $runName</h2>
|
|
||||||
|
|
||||||
<% if (!success){ out << """
|
<h1>nf-core/taxprofiler v${version}</h1>
|
||||||
<div
|
<h2>Run Name: $runName</h2>
|
||||||
style="
|
|
||||||
color: #a94442;
|
<% if (!success){
|
||||||
background-color: #f2dede;
|
out << """
|
||||||
border-color: #ebccd1;
|
<div style="color: #a94442; background-color: #f2dede; border-color: #ebccd1; padding: 15px; margin-bottom: 20px; border: 1px solid transparent; border-radius: 4px;">
|
||||||
padding: 15px;
|
<h4 style="margin-top:0; color: inherit;">nf-core/taxprofiler execution completed unsuccessfully!</h4>
|
||||||
margin-bottom: 20px;
|
|
||||||
border: 1px solid transparent;
|
|
||||||
border-radius: 4px;
|
|
||||||
"
|
|
||||||
>
|
|
||||||
<h4 style="margin-top: 0; color: inherit">nf-core/taxprofiler execution completed unsuccessfully!</h4>
|
|
||||||
<p>The exit status of the task that caused the workflow execution to fail was: <code>$exitStatus</code>.</p>
|
<p>The exit status of the task that caused the workflow execution to fail was: <code>$exitStatus</code>.</p>
|
||||||
<p>The full error message was:</p>
|
<p>The full error message was:</p>
|
||||||
<pre style="white-space: pre-wrap; overflow: visible; margin-bottom: 0">${errorReport}</pre>
|
<pre style="white-space: pre-wrap; overflow: visible; margin-bottom: 0;">${errorReport}</pre>
|
||||||
</div>
|
|
||||||
""" } else { out << """
|
|
||||||
<div
|
|
||||||
style="
|
|
||||||
color: #3c763d;
|
|
||||||
background-color: #dff0d8;
|
|
||||||
border-color: #d6e9c6;
|
|
||||||
padding: 15px;
|
|
||||||
margin-bottom: 20px;
|
|
||||||
border: 1px solid transparent;
|
|
||||||
border-radius: 4px;
|
|
||||||
"
|
|
||||||
>
|
|
||||||
nf-core/taxprofiler execution completed successfully!
|
|
||||||
</div>
|
|
||||||
""" } %>
|
|
||||||
|
|
||||||
<p>The workflow was completed at <strong>$dateComplete</strong> (duration: <strong>$duration</strong>)</p>
|
|
||||||
<p>The command used to launch the workflow was as follows:</p>
|
|
||||||
<pre
|
|
||||||
style="
|
|
||||||
white-space: pre-wrap;
|
|
||||||
overflow: visible;
|
|
||||||
background-color: #ededed;
|
|
||||||
padding: 15px;
|
|
||||||
border-radius: 4px;
|
|
||||||
margin-bottom: 30px;
|
|
||||||
"
|
|
||||||
>
|
|
||||||
$commandLine</pre
|
|
||||||
>
|
|
||||||
|
|
||||||
<h3>Pipeline Configuration:</h3>
|
|
||||||
<table
|
|
||||||
style="
|
|
||||||
width: 100%;
|
|
||||||
max-width: 100%;
|
|
||||||
border-spacing: 0;
|
|
||||||
border-collapse: collapse;
|
|
||||||
border: 0;
|
|
||||||
margin-bottom: 30px;
|
|
||||||
"
|
|
||||||
>
|
|
||||||
<tbody style="border-bottom: 1px solid #ddd">
|
|
||||||
<% out << summary.collect{ k,v -> "
|
|
||||||
<tr>
|
|
||||||
<th
|
|
||||||
style="
|
|
||||||
text-align: left;
|
|
||||||
padding: 8px 0;
|
|
||||||
line-height: 1.42857143;
|
|
||||||
vertical-align: top;
|
|
||||||
border-top: 1px solid #ddd;
|
|
||||||
"
|
|
||||||
>
|
|
||||||
$k
|
|
||||||
</th>
|
|
||||||
<td
|
|
||||||
style="
|
|
||||||
text-align: left;
|
|
||||||
padding: 8px;
|
|
||||||
line-height: 1.42857143;
|
|
||||||
vertical-align: top;
|
|
||||||
border-top: 1px solid #ddd;
|
|
||||||
"
|
|
||||||
>
|
|
||||||
<pre style="white-space: pre-wrap; overflow: visible">$v</pre>
|
|
||||||
</td>
|
|
||||||
</tr>
|
|
||||||
" }.join("\n") %>
|
|
||||||
</tbody>
|
|
||||||
</table>
|
|
||||||
|
|
||||||
<p>nf-core/taxprofiler</p>
|
|
||||||
<p><a href="https://github.com/nf-core/taxprofiler">https://github.com/nf-core/taxprofiler</a></p>
|
|
||||||
</div>
|
</div>
|
||||||
</body>
|
"""
|
||||||
|
} else {
|
||||||
|
out << """
|
||||||
|
<div style="color: #3c763d; background-color: #dff0d8; border-color: #d6e9c6; padding: 15px; margin-bottom: 20px; border: 1px solid transparent; border-radius: 4px;">
|
||||||
|
nf-core/taxprofiler execution completed successfully!
|
||||||
|
</div>
|
||||||
|
"""
|
||||||
|
}
|
||||||
|
%>
|
||||||
|
|
||||||
|
<p>The workflow was completed at <strong>$dateComplete</strong> (duration: <strong>$duration</strong>)</p>
|
||||||
|
<p>The command used to launch the workflow was as follows:</p>
|
||||||
|
<pre style="white-space: pre-wrap; overflow: visible; background-color: #ededed; padding: 15px; border-radius: 4px; margin-bottom:30px;">$commandLine</pre>
|
||||||
|
|
||||||
|
<h3>Pipeline Configuration:</h3>
|
||||||
|
<table style="width:100%; max-width:100%; border-spacing: 0; border-collapse: collapse; border:0; margin-bottom: 30px;">
|
||||||
|
<tbody style="border-bottom: 1px solid #ddd;">
|
||||||
|
<% out << summary.collect{ k,v -> "<tr><th style='text-align:left; padding: 8px 0; line-height: 1.42857143; vertical-align: top; border-top: 1px solid #ddd;'>$k</th><td style='text-align:left; padding: 8px; line-height: 1.42857143; vertical-align: top; border-top: 1px solid #ddd;'><pre style='white-space: pre-wrap; overflow: visible;'>$v</pre></td></tr>" }.join("\n") %>
|
||||||
|
</tbody>
|
||||||
|
</table>
|
||||||
|
|
||||||
|
<p>nf-core/taxprofiler</p>
|
||||||
|
<p><a href="https://github.com/nf-core/taxprofiler">https://github.com/nf-core/taxprofiler</a></p>
|
||||||
|
|
||||||
|
</div>
|
||||||
|
|
||||||
|
</body>
|
||||||
</html>
|
</html>
|
||||||
|
|
|
@ -98,7 +98,7 @@ class RowChecker:
|
||||||
if row[self._first_col] and row[self._second_col]:
|
if row[self._first_col] and row[self._second_col]:
|
||||||
row[self._single_col] = False
|
row[self._single_col] = False
|
||||||
assert (
|
assert (
|
||||||
Path(row[self._first_col]).suffixes == Path(row[self._second_col]).suffixes
|
Path(row[self._first_col]).suffixes[-2:] == Path(row[self._second_col]).suffixes[-2:]
|
||||||
), "FASTQ pairs must have the same file extensions."
|
), "FASTQ pairs must have the same file extensions."
|
||||||
else:
|
else:
|
||||||
row[self._single_col] = True
|
row[self._single_col] = True
|
||||||
|
@ -129,6 +129,16 @@ class RowChecker:
|
||||||
row[self._sample_col] = f"{sample}_T{seen[sample]}"
|
row[self._sample_col] = f"{sample}_T{seen[sample]}"
|
||||||
|
|
||||||
|
|
||||||
|
def read_head(handle, num_lines=10):
|
||||||
|
"""Read the specified number of lines from the current position in the file."""
|
||||||
|
lines = []
|
||||||
|
for idx, line in enumerate(handle):
|
||||||
|
if idx == num_lines:
|
||||||
|
break
|
||||||
|
lines.append(line)
|
||||||
|
return "".join(lines)
|
||||||
|
|
||||||
|
|
||||||
def sniff_format(handle):
|
def sniff_format(handle):
|
||||||
"""
|
"""
|
||||||
Detect the tabular format.
|
Detect the tabular format.
|
||||||
|
@ -144,13 +154,13 @@ def sniff_format(handle):
|
||||||
https://docs.python.org/3/glossary.html#term-text-file
|
https://docs.python.org/3/glossary.html#term-text-file
|
||||||
|
|
||||||
"""
|
"""
|
||||||
peek = handle.read(2048)
|
peek = read_head(handle)
|
||||||
|
handle.seek(0)
|
||||||
sniffer = csv.Sniffer()
|
sniffer = csv.Sniffer()
|
||||||
if not sniffer.has_header(peek):
|
if not sniffer.has_header(peek):
|
||||||
logger.critical(f"The given sample sheet does not appear to contain a header.")
|
logger.critical(f"The given sample sheet does not appear to contain a header.")
|
||||||
sys.exit(1)
|
sys.exit(1)
|
||||||
dialect = sniffer.sniff(peek)
|
dialect = sniffer.sniff(peek)
|
||||||
handle.seek(0)
|
|
||||||
return dialect
|
return dialect
|
||||||
|
|
||||||
|
|
||||||
|
|
|
@ -159,7 +159,7 @@ trace {
|
||||||
}
|
}
|
||||||
dag {
|
dag {
|
||||||
enabled = true
|
enabled = true
|
||||||
file = "${params.tracedir}/pipeline_dag_${trace_timestamp}.svg"
|
file = "${params.tracedir}/pipeline_dag_${trace_timestamp}.html"
|
||||||
}
|
}
|
||||||
|
|
||||||
manifest {
|
manifest {
|
||||||
|
|
Loading…
Reference in a new issue