Closed Bug 2052329 Opened 21 days ago Closed 16 days ago

improve task selection and setup of nightly-build-tasks action on try

Categories

(Release Engineering :: General, enhancement, P3)

enhancement

Tracking

(firefox154 fixed)

RESOLVED FIXED
Tracking Status
firefox154 --- fixed

People

(Reporter: bhearsum, Assigned: bhearsum)

References

Details

Attachments

(5 files)

There's a couple of things less than ideal at the moment:

  • A number of tasks don't run at all (eg: balrog, beetmover)
  • Release history is generated against production balrog rather than stage, which makes it impossible to test sequential nightlies

I'm not certain on why these are so explicitly included, but these days tests never end up running as part of nightly graphs, because they run on the on-push graphs. This change has no effect on main, but prevents tests from running as part of nightly build tasks on Try, where they're never wanted.

This patch alone has no effect, but downstream changes in this stack will be making changes that would cause tests to be included when running the nightly-build-tasks action on Try, which would be undesirable.

A couple of theories as to why this are here are:

  • https://phabricator.services.mozilla.com/D16580, where it's unclear if this was intentional to pull them in in the first place. That change talks about wanting bouncer-locations running, which presumably didn't have shipping-product set at the time, and tests were pulled in (and documented as being pulled in, without justifying it) as a side effect
  • I have a vague memory that pre-https://bugzilla.mozilla.org/show_bug.cgi?id=1614970, we may have only been running PGO builds on actual nightly builds, and thus wanted to run tests on them.

These days, all of the tasks that run as part of the nightly graph have this set, so this is a no-op change that corrects what appears to be a relatively lazy workaround introduced in https://phabricator.services.mozilla.com/D16580.

These look-ups are done in Balrog, and the server we look them up in is based on the branch given. When I first implemented this action, Balrog stage was in a sorry state, and there were no try releases to be found there. I was too lazy at the time to fix this up, and instead ended up relying on looking up production nightlies in production Balrog. This worked to a degree, except that it means there's no way to test subsequent nightlies on Try, which makes testing certain types of changes to partial generation or update verification impossible.

Since I'm making such changes right now, I've made an effort to populate at least one try nightly in Balrog stage, so we can adjust this action to point in the correct place. As long as this (or at least one future) try nightly continues to exist this action should continue to work fine.

Many tasks set run-on-projects to integration, release, etc. This causes these tasks not to be considered target tasks for Try by target tasks methods such as nightly_desktop. Up until now, this hasn't mattered: they've been pulled in explicitly by try selectors or release promotion target tasks methods.

The relatively new nightly-build-tasks action relies on other target tasks methods for task selection, however (and intentionally so to keep it in line with production nightlies). When using this action, we're currently missing many task, most notably beetmover and balrog tasks, which are needed to properly test partial generation and update verification.

I expect this change to be a no-op, except when tasks are created with the nightly-build-on-try action.

This logic is currently wrong, and both generates release history when limit_product is any non-empty value at all, and fails to generate it when it's empty (meaning we want desktop nightlies).

Attachment #9604213 - Attachment description: Bug 2052329: allow more types of tasks to be targeted on try r?#releng-reviewers! → Bug 2052329: filter nightly desktop tasks in a way that allows them to run on Try r?#releng-reviewers!
Pushed by bhearsum@mozilla.com: https://github.com/mozilla-firefox/firefox/commit/42c53f054437 https://hg.mozilla.org/integration/autoland/rev/68ae3090c3f4 pre: don't pull in tests with nightly builds r=releng-reviewers,taskgraph-reviewers,ahal https://github.com/mozilla-firefox/firefox/commit/4c7ed8f410a0 https://hg.mozilla.org/integration/autoland/rev/528746b0006c pre: don't allow tasks with shipping_product 'None' in nightly target tasks r=releng-reviewers,taskgraph-reviewers,ahal https://github.com/mozilla-firefox/firefox/commit/5b3194370e58 https://hg.mozilla.org/integration/autoland/rev/aceed4b016d6 use `try` as the branch when looking up release history on try r=releng-reviewers,taskgraph-reviewers,ahal https://github.com/mozilla-firefox/firefox/commit/24c1dcd28031 https://hg.mozilla.org/integration/autoland/rev/205cc2fdf5ca filter nightly desktop tasks in a way that allows them to run on Try r=releng-reviewers,taskgraph-reviewers,jcristau https://github.com/mozilla-firefox/firefox/commit/4bcbeb4f14b3 https://hg.mozilla.org/integration/autoland/rev/cbeeb998e040 set release history correctly when not limiting product r=releng-reviewers,taskgraph-reviewers,jcristau
See Also: → 2053869
Regressions: 2053869
See Also: 2053869
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: