Skip to content

Update workflow for new augur clades version#1000

Merged
jameshadfield merged 2 commits intomasterfrom
new-augur-clades
May 17, 2023
Merged

Update workflow for new augur clades version#1000
jameshadfield merged 2 commits intomasterfrom
new-augur-clades

Conversation

@jameshadfield
Copy link
Copy Markdown
Member

@jameshadfield jameshadfield commented Sep 12, 2022

This updates the workflow to use augur after augur PR nextstrain/augur#728 has been merged. It removes two rules from the workflow.

In the situation where the ncov workflow is not updated but augur is, the pipeline will proceed without error however the 'emerging_lineage' branch label will be missing. (This is because the add_branch_labels.py script is looking for the key 'clade_annotation' which is no longer present.)

In the situation where the ncov workflow is updated but augur is not, rule.emerging_lineages will error due to unknown arguments. You can see this in the failing CI for this PR 😉

The script add_branch_labels.py is no longer used, but not removed here, as it contains logic to export spike mutations as branch labels which may be useful at some point. If we do use this, it would be better to produce an intermediate node-data JSON with a custom branch label to avoid modifying the auspice JSON after export.

Release checklist

If this pull request introduces backward incompatible changes, complete the following steps for a new release of the workflow:

  • Determine the version number for the new release by incrementing the most recent release (e.g., "v2" from "v1").
  • Update docs/src/reference/change_log.md in this pull request to document these changes and the new version number.
  • After merging, create a new GitHub release with the new version number as the tag and release title.

If this pull request introduces new features, complete the following steps:

  • Update docs/src/reference/change_log.md in this pull request to document these changes by the date they were added.

@jameshadfield
Copy link
Copy Markdown
Member Author

Rebased and re-tested using the (now released) Augur v22.0.0

Note there is one change here which is to be fixed on Augur's side - the clade coloring entry is now the bottom entry in the (Auspice) dropdown rather than the top. PR for that forthcoming.

@jameshadfield
Copy link
Copy Markdown
Member Author

jameshadfield commented May 16, 2023

CI Failures on conda: ERROR: results/europe/rbd_levels.json did not contain either nodesorbranches. Please check the formatting of this JSON! This has been fixed by nextstrain/augur#1214 (merged) but this isn't yet in an Augur release.

CI Failures on Docker: augur: error: unrecognized arguments: --membership-name emerging_lineage --label-name emerging_lineage. This is related to the Docker caching issues (I think) resulting in Docker not yet using Augur v22.

Note that I wrote #1070 specifically because of the error seen on Docker (which you'll also see when running locally)

@jameshadfield
Copy link
Copy Markdown
Member Author

Updated to require minimum augur version of 22.0.1

@jameshadfield
Copy link
Copy Markdown
Member Author

Force pushed (with no changes) to trigger a new CI run, now that augur 22.0.1 is available in conda-base

This updates the workflow to use the new clades interface from augur
v22 (see nextstrain/augur#728). In the process we can remove two
rules from the workflow. The minimum augur version is bumped to 22.0.1,
as that includes a couple of important bug-fixes.

If this workflow is run with augur prior to v22, the emerging_lineages
rule  will error due to unknown arguments.

The script add_branch_labels.py is no longer used and thus removed here
(as recommended in code review: #1000 (comment))
Note that it contained unused functionality to export spike mutations;
if we reinstate this in the future we should update the output format
to produce a node-data JSON with a custom branch label to avoid modifying
the auspice JSON after export.
This is a minor aesthetic change which restores the order of the
branch labels in Auspice so that clade appears before emerging_lingeage.
The change in ordering was introduced by the previous commit as
we moved from a custom script to using `augur clades` interface from
Augur v22.0.0

The ordering is not specified and cannot be configured, but in practice
it is the order of the keys in the dictionary (and which is stable in
CPython 3.6, Python 3.7, and most (all?) JS engines).
@jameshadfield jameshadfield merged commit fcac1d1 into master May 17, 2023
@jameshadfield jameshadfield deleted the new-augur-clades branch May 17, 2023 00:12
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

No open projects

Development

Successfully merging this pull request may close these issues.

2 participants