What is the meaning of "building DAG of jobs"?

I’m new to NextStrain and was reading the tutorial document. https://docs.nextstrain.org/en/latest/tutorials/SARS-CoV-2/steps/setup.html So, After running the command

snakemake --cores 4 --profile ./my_profiles/getting_started
I got the following

Building DAG of jobs...

Updating job 22 (aggregate_alignments).

Nothing to be done.

Complete log: /Users/amanda/ncov/.snakemake/log/2020-11-19T091330.453646.snakemake.log

So, what is the meaning of “Building DAG of jobs…”? Moreover, I understand that this NextStrain has two components, one is “Augur” and the other one is “Auspice”. So, here, before this command, why do we need to explicitly install auspice using

“npm install --global auspice”?

I figured that once the NextStrain environment is created, then both the programs “Augur” and “Auspice” are installed right away.

The “Building DAG of jobs” message comes from Snakemake, which is reporting that it’s figuring out how to hook up all the different steps of the pipeline together. A DAG is a directed acyclic graph, where, in this case, the nodes are steps and the edges inputs/outputs. Snakemake’s workflow example contains some more explanation of what this means (look for the highlights of “DAG” at that link).

The install of Auspice from NPM is necessary after Conda environment creation because Auspice currently isn’t packaged for Conda, so cannot be installed with the rest of the environment. Installing Auspice from NPM after activating the Conda environment for Nextstrain, however, does ensure that Auspice is installed into the environment.

1 Like

I was trying to run snakemake and got the following error message:

 (nextstrain) MacBook-Pro:myNcov $ snakemake --profile my_profiles/ncov2021

    Error: profile given but no config.yaml found. Profile has to be given as either absolute path, relative path or name of a directory available in either /Library/Application Support/snakemake or /Users/Library/Application Support/snakemake.

Do you know the reason for this by the way?

Either the myNcov/my_profiles/ncov2021 directory doesn’t exist or the myNcov/my_profiles/ncov2021/config.yaml file doesn’t exist.