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 docs for internal Nextstrain team #45

Merged
merged 4 commits into from
Jun 18, 2024
Merged

Conversation

joverlee521
Copy link
Contributor

Description of proposed changes

I didn't want to take the time to set up of full Read the Docs project since I'm not even sure that's needed.
Just using Markdown files to document:

  1. the CI workflow
  2. automating pathogen repo workflows

Related issue(s)

Resolves #10

Checklist

  • Checks pass

This will hold docs for setting up Nextstrain pathogen repos that
is meant for the internal team. External users can consult for their
own use, but it will not be written with them in mind!
@joverlee521 joverlee521 requested review from a team and genehack June 14, 2024 00:49
Comment on lines +29 to +38
### `pathogen-repo-ci` Requirements

> [!IMPORTANT]
> If your pathogen repo does not meet these requirements, please update the
> repo to conform to them to maintain uniformity of Nextstrain pathogen repos.

1. The pathogen repo must have a top level `nextstrain-pathogen.yaml` file.
2. To run the CI step for a workflow (ingest, nextclade, or phylogenetic), the
directory must contain a `build-configs/ci/config.yaml` config file.
3. At least one of the CI steps must be run or else the CI workflow will exit with an error.
Copy link
Contributor Author

Choose a reason for hiding this comment

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

I waffled on whether this should be here or point to docs in the .github repo. I just put it here so it's all in one place, but feel free to push back.

branches:
- main
pull_request:
workflow_dispatch:
Copy link
Member

Choose a reason for hiding this comment

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

I'd encourage adding a basic schedule: on here too. It's really nice to come back to a repo after a while of inactivity and know if CI has broken due to the passage of time before you do some work and expect CI to pass.

non-blocking

Copy link
Contributor Author

Choose a reason for hiding this comment

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

I'd encourage adding a basic schedule: on here too. It's really nice to come back to a repo after a while of inactivity and know if CI has broken due to the passage of time before you do some work and expect CI to pass.

True! What would be a reasonable schedule here? Once a week?

Copy link
Member

@tsibley tsibley Jun 15, 2024

Choose a reason for hiding this comment

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

I'd say once a day? CI hours are "free" and in this case should ideally only take a few minutes each to run (I'd hope!).

Schedule would ideally be staggered so we don't get a "thundering herd" of pathogen repo CI jobs every day, but we can't stagger with a static template and maybe GitHub already staggers things enough for us (intentionally or unintentionally).

 # Routinely check that we continue to work in the face of external changes.
  schedule:
    # Every day at 18:37 UTC / 10:37 Seattle (winter) / 11:37 Seattle (summer)
    - cron: "37 18 * * *"

Copy link
Contributor Author

Choose a reason for hiding this comment

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

Added in b183592


jobs:
ci:
uses: nextstrain/.github/.github/workflows/pathogen-repo-ci.yaml@master
Copy link
Member

Choose a reason for hiding this comment

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

Presumably once we tag v1 (when? I'd have thought by now?) we'll suggest that here?

non-blocking

Copy link
Contributor

Choose a reason for hiding this comment

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

Tagging the repo is on my TODO list; I was waiting for the "smart" pathogen-repo-ci to land, which just happened yesterday (and it looks like you've got at least one further outstanding change).

@joverlee521 joverlee521 merged commit e3bfb52 into main Jun 18, 2024
1 check passed
@joverlee521 joverlee521 deleted the doc-nextstrain-automation branch June 18, 2024 17:24
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.

Add Nextstrain automation docs
3 participants