Skip to content

ci(tests): Cleanup workflow runs#231

Merged
crankynetmaam merged 37 commits into
mainfrom
topic/chriscummings/cleanup-test-runs
May 11, 2026
Merged

ci(tests): Cleanup workflow runs#231
crankynetmaam merged 37 commits into
mainfrom
topic/chriscummings/cleanup-test-runs

Conversation

@crankynetmaam
Copy link
Copy Markdown
Collaborator

@crankynetmaam crankynetmaam commented May 4, 2026

This PR cleans up our workflows to run on a per-app basis and upload things in the same manner. It also renames all of the make targets to test-application to get ride of behave vs pytest and all the confusion there. Now it just runs the tests for one of the applications. You can still call pytest and behave but the targets are all simplified. I also added a (neutral) type-check workflow.. It fails all the time (so we ignore that) but I want to run type checking in the future so I figure this gets us to where it's ready to remove || true once we fix type checking errors in the code base.

Finally, this adds a make target ci-act (act needs to be installed via brew locally) which allows you to test GH actions locally. Works pretty well.

I also restructured the Makefile. It was way too out of order and the names didn't make sense anymore as we've scaled things. Changes are:

Renamed:

  1. behave-all to behave-django (it was all for ALL features (in django only lol)
  2. behave to behave-django-feature (keeping this around but I feel like we should get rid of it or make it generic enough to work for translator behave too)
  3. integration-tests to integration-django
  4. pytest to pytest-django
  5. pytest-scheduler to test-scheduler
  6. pytest-scripts to test-scripts

Removed:

  1. coverage.xml . We now just have per-app coverage steps inside the test targets. And we just now always run coverage cuz it's not that big a deal to do.

Added/Significantly modified:

behave-translator. This wasn't added, but now it has coverage, doesn't just run tests.
test-django. runs all tests for django (pytest-django + behave-django + integration-django)
test-translator: builds/runs stack + runs behave-translator
test: runs all four test-* targets (so in theory ALL test types)
ci-test: runs all CI workflows locally via act (old ci-test didn't mirror CI at all).
behave-translator-feature. Allows you to run just one behave feature for translator.

Should close #200 and #219.

@github-actions
Copy link
Copy Markdown

github-actions Bot commented May 4, 2026

Scheduler Coverage

File Coverage
All files 100%

Minimum allowed coverage is 80%

Generated by 🐒 cobertura-action against d5978e3

Comment thread .github/workflows/scheduler.yml Fixed
Comment thread .github/workflows/scripts.yml Fixed
Comment thread .github/workflows/translator.yml Fixed
@github-actions
Copy link
Copy Markdown

github-actions Bot commented May 4, 2026

Scripts Coverage

File Coverage
All files 50%
scripts/extract_env_vars.py 50%

Minimum allowed coverage is 50%

Generated by 🐒 cobertura-action against d5978e3

@github-actions
Copy link
Copy Markdown

github-actions Bot commented May 4, 2026

Django Coverage

File Coverage
All files 78%
src/config/consumers.py 59%
src/config/urls.py 69%
src/config/settings/base.py 69%
src/config/settings/local.py 72%
src/scram/route_manager/admin.py 71%
src/scram/route_manager/models.py 79%
src/scram/route_manager/views.py 88%
src/scram/route_manager/api/serializers.py 92%
src/scram/route_manager/api/views.py 63%
src/scram/shared/shared_code.py 56%
src/scram/templates/403.html 93%
src/scram/templates/404.html 93%

Minimum allowed coverage is 70%

Generated by 🐒 cobertura-action against d5978e3

@crankynetmaam crankynetmaam changed the base branch from main to topic/chriscummings/uv-workspaces-django May 4, 2026 21:08
crankynetmaam and others added 4 commits May 4, 2026 16:49
@github-actions
Copy link
Copy Markdown

github-actions Bot commented May 4, 2026

Translator Coverage

File Coverage
All files 85%
translator/src/translator/__init__.py 0%
translator/src/translator/exceptions.py 50%
translator/src/translator/gobgp.py 85%
translator/src/translator/settings.py 91%
translator/src/translator/shared.py 81%

Minimum allowed coverage is 80%

Generated by 🐒 cobertura-action against d5978e3

@crankynetmaam crankynetmaam marked this pull request as draft May 4, 2026 22:13
@crankynetmaam crankynetmaam marked this pull request as ready for review May 5, 2026 01:25
Comment thread .github/workflows/django.yml
Comment thread Makefile Outdated
@samoehlert
Copy link
Copy Markdown
Collaborator

I see the 4 neutral checks that say "Run Scheduler Tests" but then they are actually for different coverages. i cant quite figure out why, but it would be nice to see that cleaned up.

Base automatically changed from topic/chriscummings/uv-workspaces-django to main May 11, 2026 13:32
@crankynetmaam
Copy link
Copy Markdown
Collaborator Author

I see the 4 neutral checks that say "Run Scheduler Tests" but then they are actually for different coverages. i cant quite figure out why, but it would be nice to see that cleaned up.

This was bothering me too. Unfortunately it seems to be a quirk of cobertura/github where it picks up the "check_suite_id" of the first check that passes and then considers that the parent check... We could rename all of the CI job names that upload coverage to just be "coverage" then whichever runs first that will be the parent name but I'd rather not. The right info is there now, it's just hidden a bit.

What we could do is just move to a different approach for those coverage messages (or get rid of them, but I like having them on the PR)

@crankynetmaam crankynetmaam enabled auto-merge (squash) May 11, 2026 15:54
Copy link
Copy Markdown
Collaborator

@samoehlert samoehlert left a comment

Choose a reason for hiding this comment

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

This will make CI so much more useful and less annoying. Thanks!

@crankynetmaam crankynetmaam merged commit 4d9ae6f into main May 11, 2026
14 checks passed
@crankynetmaam crankynetmaam deleted the topic/chriscummings/cleanup-test-runs branch May 11, 2026 16:03
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.

Local Github Actions

3 participants