Skip to content

Reorganize CI jobs so they appear sensibly in the GitHub UI#3422

Closed
MoralCode wants to merge 5 commits intomainfrom
ntdn/reorg-ci
Closed

Reorganize CI jobs so they appear sensibly in the GitHub UI#3422
MoralCode wants to merge 5 commits intomainfrom
ntdn/reorg-ci

Conversation

@MoralCode
Copy link
Contributor

@MoralCode MoralCode commented Nov 19, 2025

This reorganizes the CI jobs so they can be more easily found via the Actions tab of github. it essentially sepearates the tests into categories for things like checks (i.e. spell check, type check), docs build, smoke tests, functional/unit tests. etc)

it also adds CI jobs for running python type checks (mypy) and the unit tests

Copy link
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

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

Pull Request Overview

This PR reorganizes CI workflows to improve their visibility and organization in the GitHub Actions UI. The changes separate different types of tests and checks into dedicated workflow files for easier navigation and understanding.

Key Changes:

  • Extracted specialized workflows from the main build workflow (docs, macOS tests, image publishing)
  • Added new functional test suite with multi-version Python testing (3.10-3.14)
  • Integrated mypy type checking into the lint and style checks workflow

Reviewed Changes

Copilot reviewed 6 out of 6 changed files in this pull request and generated 6 comments.

Show a summary per file
File Description
.github/workflows/smoke_test.yml Renamed to "End to end Smoke Tests" and removed macOS test job (moved to separate file)
.github/workflows/publish_images.yml New workflow for publishing Docker images to registry (extracted from smoke_test.yml)
.github/workflows/macos.yml New workflow containing the macOS installation and setup tests (extracted from smoke_test.yml)
.github/workflows/functional_test.yml New workflow for running functional tests across multiple Python versions and operating systems
.github/workflows/docs.yml New workflow dedicated to documentation build validation (extracted from checks.yml)
.github/workflows/checks.yml Updated to focus on lint and style checks, adds mypy type checking job

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

@@ -0,0 +1,52 @@
name: Test MacOS
# Unknown. MacOS functionality test i guess, probably incomplete
Copy link

Copilot AI Nov 20, 2025

Choose a reason for hiding this comment

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

The comment is vague and unprofessional. Consider providing a clear description of what this workflow does, such as: "Tests installation and basic setup on macOS to ensure compatibility" or something more specific based on the actual purpose of this test.

Suggested change
# Unknown. MacOS functionality test i guess, probably incomplete
# Tests installation and basic setup on macOS to ensure compatibility

Copilot uses AI. Check for mistakes.
Copy link
Contributor Author

Choose a reason for hiding this comment

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

@sgoggins do you know why this test is here, or if we still rely on it?

Copy link
Member

Choose a reason for hiding this comment

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

@JohnStrunk created most of these adn they have been working. AFAIK these tests are part of what is keeping augur stable and easy to deploy ... which I think you know so I think I may not understand the question :)

Copy link
Contributor Author

Choose a reason for hiding this comment

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

given the definition of this test, im unsure what it is specifically testing - it seems to just install some python data processing toolkits and things. are we trying to ensure one of our dependencies can install on mac OS? it feels weird to be testing a dependency in one of our tests like this - IMO it would make more sense to make sure the unit tests run on MacOS (which I think its set up by this PR)

Copy link
Member

Choose a reason for hiding this comment

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

The "Go" and NLTK parts have been the most inconsistent historically.

@JohnStrunk's approach, as I understand it, was to create this test in the CI and then validate that, when the test succeeds, Augur runs on OSX. Successful installation of the toolkits cannot be assumed across OSX distros, Go, and Python distros on OSX, based on our long experience.

@MoralCode MoralCode force-pushed the ntdn/reorg-ci branch 2 times, most recently from a012e06 to 7f8d8f9 Compare November 20, 2025 18:35
@sgoggins sgoggins self-requested a review November 20, 2025 19:09
sgoggins
sgoggins previously approved these changes Nov 20, 2025
Copy link
Member

@sgoggins sgoggins left a comment

Choose a reason for hiding this comment

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

I think this is a decoupling and modularization of the CI jobs. LGTM.

@@ -0,0 +1,52 @@
name: Test MacOS
# Unknown. MacOS functionality test i guess, probably incomplete
Copy link
Member

Choose a reason for hiding this comment

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

@JohnStrunk created most of these adn they have been working. AFAIK these tests are part of what is keeping augur stable and easy to deploy ... which I think you know so I think I may not understand the question :)

Signed-off-by: Adrian Edwards <adredwar@redhat.com>
Signed-off-by: Adrian Edwards <adredwar@redhat.com>
Signed-off-by: Adrian Edwards <adredwar@redhat.com>
Signed-off-by: Adrian Edwards <adredwar@redhat.com>
Signed-off-by: Adrian Edwards <adredwar@redhat.com>
@MoralCode
Copy link
Contributor Author

closing as not really necessary. The key change i wanted here was that the unit tests were their own section, which was achieved when those were merged.

@MoralCode MoralCode closed this Feb 16, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

devops Development Operations tech debt

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants