Skip to content

Improve the GitHub Actions workflow triggers and requirements - #21562

Merged
timvandermeij merged 3 commits into
mozilla:masterfrom
timvandermeij:workflow-improvements
Jul 12, 2026
Merged

timvandermeij merged 3 commits into
mozilla:masterfrom
timvandermeij:workflow-improvements

Conversation

@timvandermeij

Copy link
Copy Markdown
Collaborator

The commit messages contain more information about the individual changes.

@timvandermeij timvandermeij added test infra Infrastructure related labels Jul 12, 2026
@codecov-commenter

codecov-commenter commented Jul 12, 2026 •

Copy link
Copy Markdown

Codecov Report

✅ All modified and coverable lines are covered by tests.
✅ Project coverage is 89.71%. Comparing base (cbdea64) to head (ae179be).

Additional details and impacted files
@@            Coverage Diff             @@
##           master   #21562      +/-   ##
==========================================
- Coverage   89.72%   89.71%   -0.01%     
==========================================
  Files         262      262              
  Lines       66710    66710              
==========================================
- Hits        59854    59848       -6     
- Misses       6856     6862       +6     
Flag Coverage Δ
browsertest 66.55% <ø> (-0.02%) ⬇️
fonttest 9.05% <ø> (ø)
integrationtest 69.25% <ø> (-0.01%) ⬇️
unittest 57.31% <ø> (-0.01%) ⬇️
unittestcli 56.27% <ø> (-0.02%) ⬇️

Flags with carried forward coverage won't be shown. Click here to find out more.

☔ View full report in Codecov by Harness.
📢 Have feedback on the report? Share it here.

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.
  • 📦 JS Bundle Analysis: Save yourself from yourself by tracking and limiting bundle sizes in JS merges.

@Snuffleupagus Snuffleupagus left a comment

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

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

r=me, good idea; thanks.

If one of our dependencies changes it can have an effect on all tests we
have, for instance via the test runner, bundler or coverage collector.
This commit therefore updates all workflows that work with a file-based
allowlist to also trigger on `package-lock.json` changes so that we have
more certainty that any unintended effects of dependency updates can't
go by unnoticed, and thus improve stability.
The `requirements.txt` files of the two Python-based workflows were not
included in the file-based allowlist, which prevented the font/Fluent
linter tests from running if their contents changed. This commit fixes
that oversight from the original introduction of the workflows.
…ents

The `requirements.txt` files of the two Python-based builds only listed
the top-level dependency, and thus not the full dependency tree, and
only limited it via a version range. This means that the actual versions
we use for the builds are determined at runtime, and can thus easily
change if a new version gets published. This causes the builds to not be
deterministic, and it's in contrast to the JavaScript-based builds where
`package-lock.json` pins the full dependency tree with fixed versions.

This commit changes the `requirements.txt` files to follow the same
approach as `package-lock.json` and thus pin the full dependency tree to
fixed versions. This ensures deterministic builds, improves consistency
and provides better protection against e.g. supply chain attacks by not
automatically pulling in new versions as they are published (but rather
make updating versions a conscious and verifiable/auditable action). To
simplify the update process, and make it repeatable, we document the
full one-line generation commands inline.
@timvandermeij
timvandermeij merged commit 5e3272c into mozilla:master Jul 12, 2026
22 checks passed
@timvandermeij
timvandermeij deleted the workflow-improvements branch July 12, 2026 16:06
@timvandermeij
timvandermeij removed the request for review from calixteman July 12, 2026 16:06

This branch was previously deployed

1 inactive deployment
code-coverage — ae179be7 Deployed Jul 12, 2026 by timvandermeij via windows-latest / chrome #845
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

infra Infrastructure related test

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants