[meta] Let Release Management handle Merge Day without the need for Release Engineering to be involved
Categories
(Release Engineering :: Release Automation, enhancement, P2)
Tracking
(firefox-esr115 fixed, firefox-esr140 fixed, firefox149 fixed)
People
(Reporter: jlorenzo, Assigned: eijebong)
References
(Depends on 1 open bug, Blocks 1 open bug)
Details
(Keywords: meta)
Attachments
(5 files, 1 obsolete file)
|
50 bytes,
text/x-github-pull-request
|
Details | Review | |
|
64 bytes,
text/x-github-pull-request
|
Details | Review | |
|
48 bytes,
text/x-phabricator-request
|
Details | Review | |
|
48 bytes,
text/x-phabricator-request
|
phab-bot
:
approval-mozilla-esr140+
|
Details | Review |
|
48 bytes,
text/x-phabricator-request
|
phab-bot
:
approval-mozilla-esr115+
|
Details | Review |
That's one of the items called out in bug 1782086 comment 0:
Allow sheriffs and/or relman the ability to trigger merge-automation actions
These days triggering the actions is not very complicated. By allowing sheriffs or relman permission to trigger them, we can guarantee the process can be started ASAP (since sheriffs have 100% coverage). This can help in the event both people on releaseduty are in North American timezones or have something come up and are afk.
In bug 1432655 and bug 1666321, we automated several steps. Yet, there are still some manual ones[1]. :gabriel started a conversation for the shipit part[2]. I'm filing this meta-bug because there are a few more things outside of shipit to fully hand off releaseduty to the Release Management team. On top of my head, I'm thinking of:
- check the output of treescript is sane
- emailing release-drivers@m.o when the merge is done
- update the wiki (not sure how feasible it is today) - bug 1414278.
[1] https://github.com/mozilla-releng/relengdocs/blob/1ec975b6d8d86eaadfcfe17c24fdfd013c836ab9/how-to/releaseduty/merge-duty/merge_duty.rst
[2] https://github.com/mozilla-releng/shipit/issues/1418
| Reporter | ||
Updated•2 years ago
|
| Reporter | ||
Updated•2 years ago
|
Comment 1•2 years ago
|
||
There's also:
- Releng makes a commit in ShipIt to bump the hard-coded version data
This could be do-able with treescript + moving the version data to an structured file (maybe we can useproducts.yml?) - The click to update the product-details api/repository when we update the hard-coded version data
Can we do this from a task after the one that updates the hard-coded data?
This is more of a nice to have because RelMan can/does update product-details by clicking the button. - The mozilla-beta tree closure/re-opening
TreeStatus has an API we might be able to leverage. It is moving to lando but the API will be compatible. - Releng manually fires a "ship-geckoview" hook after the mozilla-central tree version bump
Updated•2 years ago
|
Updated•2 years ago
|
Comment 2•2 years ago
|
||
(In reply to Gabriel Bustamante [:gabriel] from comment #1)
- Releng manually fires a "ship-geckoview" hook after the mozilla-central tree version bump
This is actually no longer a thing since the firefox-android repo migration. It's included with the regular Nightly graph now. We should remove this from the documentation irrespective.
Comment 3•2 years ago
|
||
Mm, do sheriffs/relman have access to treestatus? iirc sheriffs do
Comment 4•2 years ago
|
||
(In reply to Ryan VanderMeulen [:RyanVM] from comment #2)
(In reply to Gabriel Bustamante [:gabriel] from comment #1)
- Releng manually fires a "ship-geckoview" hook after the mozilla-central tree version bump
This is actually no longer a thing since the firefox-android repo migration. It's included with the regular Nightly graph now. We should remove this from the documentation irrespective.
Thanks :RyanVM, that is a good thing!
Comment 5•2 years ago
•
|
||
(In reply to Gabriel Bustamante [:gabriel] from comment #3)
Mm, do sheriffs/relman have access to treestatus? iirc sheriffs do
I do, but that could be because I still have sheriffing bits on my LDAP :-)
Comment 6•2 years ago
|
||
(In reply to Ryan VanderMeulen [:RyanVM] from comment #5)
(In reply to Gabriel Bustamante [:gabriel] from comment #3)
Mm, do sheriffs/relman have access to treestatus? iirc sheriffs do
I do, but that could be because I still have sheriffing bits on my LDAP :-)
Correct, treestatus access is granted to sheriffs + perf_sheriffs (https://hg.mozilla.org/ci/ci-configuration/file/f472b60a69081f8f05033890167c3271ccd0a060/grants.yml#l2282) and thunderbird-sheriff + thunderbird-releng (https://hg.mozilla.org/ci/ci-configuration/file/f472b60a69081f8f05033890167c3271ccd0a060/grants.yml#l2366).
(In reply to Ryan VanderMeulen [:RyanVM] from comment #2)
(In reply to Gabriel Bustamante [:gabriel] from comment #1)
- Releng manually fires a "ship-geckoview" hook after the mozilla-central tree version bump
This is actually no longer a thing since the firefox-android repo migration. It's included with the regular Nightly graph now. We should remove this from the documentation irrespective.
https://github.com/mozilla-releng/relengdocs/pull/264 updates the doc.
Comment 7•2 years ago
|
||
I'm exploring enhancements to the merge-automation - and I am thinking we can probably add a task to bump-central that makes a commit in shipit after the version bump on mozilla-central. This task would automatically make a commit in shipit to update the dates and nightly version.
The pushlog check bit seems straight forward, I think we can just check this endpoint.
Currently, we retrieve dates from the whattrainisitnow calendar, which we could potentially scrape, as it's formatted as a simple HTML table. Hopefully that wouldn't be too brittle. Does anyone know if whattrainisitnow offers an API? I couldn't find one.
Comment 8•2 years ago
•
|
||
Ah, to take ourselves out the the loop we might want to modify shipit to update this data without needing a deployment.
Comment 9•2 years ago
|
||
There's an release schedule API in whattrainisitnow with the data we get and manually hard-code: https://whattrainisitnow.com/api/release/schedule/?version=126
Updated•2 years ago
|
Updated•2 years ago
|
Updated•2 years ago
|
Updated•1 year ago
|
Comment 10•6 months ago
|
||
Comment 11•5 months ago
|
||
| Assignee | ||
Comment 12•3 months ago
|
||
This is part of moving merge automation from an action task that has to
be run through treeherder to a fully supported shipit action.
Just like shipping uses mark-as-shipped to tell shipit that a release
graph is done, this creates a mark-as-merged that runs after the merge
automation graph is done. This means that we're not requesting a merge
automation ID as part of the merge automation input, which shipit will
provide when triggering said automation.
Updated•3 months ago
|
Comment 13•3 months ago
|
||
| Assignee | ||
Comment 14•3 months ago
|
||
This is part of moving merge automation from an action task that has to
be run through treeherder to a fully supported shipit action.
Just like shipping uses mark-as-shipped to tell shipit that a release
graph is done, this creates a mark-as-merged that runs after the merge
automation graph is done. This means that we're now requesting a merge
automation ID as part of the merge automation input, which shipit will
provide when triggering said automation.
Original Revision: https://phabricator.services.mozilla.com/D280400
Updated•3 months ago
|
Comment 15•3 months ago
|
||
firefox-beta Uplift Approval Request
- User impact if declined: Merge automation through shipit requires this new task.
- Code covered by automated testing: no
- Fix verified in Nightly: no
- Needs manual QE test: no
- Steps to reproduce for manual QE testing:
- Risk associated with taking this patch: low
- Explanation of risk level: This just adds a task to merge automation iif a
merge-automation-idarg is passed (which only shipit will pass). This doesn't change anything for "manually" ran merge automation which you could fall back to as a worst case scenarion - String changes made/needed: N/A
- Is Android affected?: no
Comment 16•3 months ago
|
||
firefox-esr140 Uplift Approval Request
- User impact if declined: Merge automation through shipit requires this new task.
- Code covered by automated testing: no
- Fix verified in Nightly: no
- Needs manual QE test: no
- Steps to reproduce for manual QE testing:
- Risk associated with taking this patch: low
- Explanation of risk level: This just adds a task to merge automation iif a
merge-automation-idarg is passed (which only shipit will pass). This doesn't change anything for "manually" ran merge automation which you could fall back to as a worst case scenarion - String changes made/needed: N/A
- Is Android affected?: no
| Assignee | ||
Comment 17•3 months ago
|
||
This is part of moving merge automation from an action task that has to
be run through treeherder to a fully supported shipit action.
Just like shipping uses mark-as-shipped to tell shipit that a release
graph is done, this creates a mark-as-merged that runs after the merge
automation graph is done. This means that we're now requesting a merge
automation ID as part of the merge automation input, which shipit will
provide when triggering said automation.
Original Revision: https://phabricator.services.mozilla.com/D280400
Comment 18•3 months ago
|
||
| bugherder | ||
Updated•2 months ago
|
Updated•2 months ago
|
Comment 19•2 months ago
|
||
| uplift | ||
Updated•2 months ago
|
| Assignee | ||
Comment 20•2 months ago
|
||
This is part of moving merge automation from an action task that has to
be run through treeherder to a fully supported shipit action.
Just like shipping uses mark-as-shipped to tell shipit that a release
graph is done, this creates a mark-as-merged that runs after the merge
automation graph is done. This means that we're now requesting a merge
automation ID as part of the merge automation input, which shipit will
provide when triggering said automation.
Original Revision: https://phabricator.services.mozilla.com/D280400
Updated•2 months ago
|
Comment 21•2 months ago
|
||
firefox-esr115 Uplift Approval Request
- User impact if declined: Can't run merge automation from shipit properly without this (it would never be marked as completed)
- Code covered by automated testing: no
- Fix verified in Nightly: no
- Needs manual QE test: no
- Steps to reproduce for manual QE testing:
- Risk associated with taking this patch: low
- Explanation of risk level: This is just adding an extra task to the merge automation task group. Worst case it fails and it's the same as it not existing.
- String changes made/needed: N/A
- Is Android affected?: no
Updated•2 months ago
|
Updated•2 months ago
|
Comment 22•2 months ago
|
||
| uplift | ||
Description
•