Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add independent ingest and phylogenetic GH Action workflows #55

Merged
merged 6 commits into from
Apr 18, 2024

Conversation

joverlee521
Copy link
Contributor

@joverlee521 joverlee521 commented Apr 12, 2024

Description of proposed changes

Splits the ingest-to-phylogenetic GH Action workflow added in #52 into independent reusable workflows.
The reusable GH Action workflows ingest and phylogenetic are then called from within ingest-to-phylogenetic, but they can also be run independently and with trial names.

This splits the use of the workflows as

  • ingest-to-phylogenetic.yaml for scheduled, automated runs
  • ingest.yaml for manual trial runs of the ingest workflow
  • phylogenetic.yaml for manual trial runs of the phylogenetic workflow OR forced runs that don't check the cache

Checklist

Create a reusable GH Action workflows for ingest and phylogenetic that
are called within the ingest-to-phylogenetic workflow.

Future commits will update the independent GH Action workflows to allow
manual workflow dispatches and trial runs.
This will allow manual triggers of the independent ingest and
phylogenetic workflows.

Currently just includes the existing `image` input but subsequent
commits will allow trial runs of each workflow.
Allow trial builds of the ingest and phylogenetic workflows to be
uploaded to trial S3 URLs.

The `trial_name` inputs are _not_ added to the `workflow_call` trigger
since the `workflow_call` trigger is only being used by our automated
ingest-to-phylogenetic workflow. This may change in the future, but
leaving it out for now.

For phylogenetic workflow to run with trial outputs from the ingest
workflow, the phylogenetic workflow needs to accept inputs from the
config. I'll make these changes separately.
Allows us to easily update the input URLs both from the config YAML
and `--config` args.

This is mostly motivated by the desire to run phylogenetic builds
from trial ingest outputs.
Allows customization of input sequences and metadata URLs.
This will allow us to test trial outputs from ingest workflows.
@joverlee521
Copy link
Contributor Author

The trial ingest outputs are available at s3://nextstrain-data/files/workflows/zika/trials/reusable-workflows/.

The trial phylogenetic bulid that used the trial ingest output was deployed to staging, available at https://nextstrain.org/staging/zika/trials/reusable-workflows/zika

@joverlee521 joverlee521 requested a review from a team April 12, 2024 23:51
joverlee521 added a commit to nextstrain/.github that referenced this pull request Apr 13, 2024
Make it easier to set up GH Action workflows for pathogen repos,
but still allow customizations within them that are not possible with
reusable workflows.

Based on the GH Action workflows added in
nextstrain/zika#55.
Copy link
Member

@victorlin victorlin left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Skimmed commits, looks good

.github/workflows/phylogenetic.yaml Outdated Show resolved Hide resolved
Co-authored-by: Victor Lin <13424970+victorlin@users.noreply.github.com>
@joverlee521
Copy link
Contributor Author

Merging to allow @j23414 and @kimandrews to see the GitHub Actions UI for the 3 different workflows.
If things look good, I'll port these changes to dengue and measles repos as well. Then I'll continue on the GitHub Action workflow templates in https://github.com/nextstrain/.github/tree/pathogen-repo-workflow-templates so we can use them for future pathogen repos.

Post-merge feedback is always welcome!

@joverlee521 joverlee521 merged commit fe37759 into main Apr 18, 2024
58 of 59 checks passed
@joverlee521 joverlee521 deleted the reusable-workflows branch April 18, 2024 22:50
@j23414
Copy link
Contributor

j23414 commented Apr 19, 2024

Worked as expected during my tests (ingest, phylogenetic). Thanks!

@joverlee521
Copy link
Contributor Author

Oh hmm, just found a side effect of this PR. The Pathogen status page no longer includes the automated workflow:

Screenshot 2024-04-22 at 2 14 55 PM

@tsibley
Copy link
Member

tsibley commented Apr 22, 2024

@joverlee521 The criteria used for that status page, "workflows which use nextstrain/.github/.github/workflows/pathogen-repo-build.yaml", can get tweaked. It was a convenient proxy for "workflows we want to monitor on this page" but we can always create/use a different way to mark/flag/filter workflows for that page.

@joverlee521
Copy link
Contributor Author

@joverlee521 The criteria used for that status page, "workflows which use nextstrain/.github/.github/workflows/pathogen-repo-build.yaml", can get tweaked. It was a convenient proxy for "workflows we want to monitor on this page" but we can always create/use a different way to mark/flag/filter workflows for that page.

For sure! Just need to figure out what the appropriate proxy is for the workflows of this PR. I'll write up something in the status repo.

@kimandrews
Copy link

I completed trial runs and it went fine for me too: ingest, phylogenetic

j23414 added a commit to nextstrain/dengue that referenced this pull request Apr 25, 2024
Create a reusable GH Action workflows for ingest that can be manually
called to test branches, and can be called within the
ingest-to-phylogenetic workflow.

Copied from the zika PR and modified for dengue.

nextstrain/zika#55
j23414 added a commit to nextstrain/dengue that referenced this pull request Apr 25, 2024
Create a reusable GH Action workflows for ingest that can be manually
called to test branches, and can be called within the
ingest-to-phylogenetic workflow.

Copied from the zika PR and modified for dengue.

nextstrain/zika#55
j23414 added a commit to nextstrain/dengue that referenced this pull request Apr 25, 2024
Create a reusable GH Action workflows for phylogenetic that can be manually
called to test branches, and can be called within the
ingest-to-phylogenetic workflow.

Copied from the zika PR and modified for dengue.

nextstrain/zika#55
j23414 added a commit to nextstrain/dengue that referenced this pull request Apr 26, 2024
Create a reusable GH Action workflows for ingest that can be manually
called to test branches, and can be called within the
ingest-to-phylogenetic workflow.

Copied from the zika PR and modified for dengue.

nextstrain/zika#55
j23414 added a commit to nextstrain/dengue that referenced this pull request Apr 26, 2024
Create a reusable GH Action workflows for phylogenetic that can be manually
called to test branches, and can be called within the
ingest-to-phylogenetic workflow.

Copied from the zika PR and modified for dengue.

nextstrain/zika#55
j23414 added a commit to nextstrain/dengue that referenced this pull request Apr 26, 2024
Create a reusable GH Action workflows for ingest that can be manually
called to test branches, and can be called within the
ingest-to-phylogenetic workflow.

Copied from the zika PR and modified for dengue.

nextstrain/zika#55
j23414 added a commit to nextstrain/dengue that referenced this pull request Apr 26, 2024
Create a reusable GH Action workflows for phylogenetic that can be manually
called to test branches, and can be called within the
ingest-to-phylogenetic workflow.

Copied from the zika PR and modified for dengue.

nextstrain/zika#55
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

5 participants