flutter/dev/conductor/RELEASE_ONBOARDING.md
Reid Baker 90aa59f6c3
Externalize and update onboarding instructions (#154730)
Part 1/n #154724 

## Pre-launch Checklist

- [x] I read the [Contributor Guide] and followed the process outlined
there for submitting PRs.
- [x] I read the [Tree Hygiene] wiki page, which explains my
responsibilities.
- [x] I read and followed the [Flutter Style Guide], including [Features
we expect every widget to implement].
- [x] I signed the [CLA].
- [x] I listed at least one issue that this PR fixes in the description
above.
- [x] I updated/added relevant documentation (doc comments with `///`).
- [ ] I added new tests to check the change I am making, or this PR is
[test-exempt].
- [x] I followed the [breaking change policy] and added [Data Driven
Fixes] where supported.
- [x] All existing and new tests are passing.

---------

Co-authored-by: Tirth <pateltirth454@gmail.com>
Co-authored-by: Navaron Bracke <brackenavaron@gmail.com>
2024-09-12 13:14:53 -04:00

2.2 KiB

Release engineer/manager onboarding

Googler facing documentation can be found at go/flutter-release-workflow.

Responsiblity

Release engineer is responsible for:

  • Branch alignment and/or Sheparding cherry picks
  • Decision making related to cherry pick risk
  • Verification that pre and post submits pass prior to publishing
  • Contributor facing communication
  • Some public facing post release comunication

In the past (and possibly in the future) there was a distinction between a release engineer and release manager. For now the responsiblitys are the same and we will refer to the person managing the release as a release engineer.

Onboarding

One time setup instructions for new or returning relase engineers.

Groups/Permissions

Join flutter-hackers on github

https://github.com/orgs/flutter/teams/flutter-hackers/members

[Googler only] Join mdb/flutter-infra

Possibly not required https://ganpati2.corp.google.com/propose_membership?parent=9147533327&child=$me.prod

Join the flutter-announce google group

Ping any current release engineer to add you as an owner and give you publish access. https://groups.google.com/g/flutter-announce/members?q=role:owner&pli=1

TODO include screenshot

[Googler only] Install tool-proxy-client

From a glinux machine run sudo apt install tool-proxy-client

tool-proxy-client is the tool that enables/enforces 2 party authorization for controlled builds.

[Googler only] Confirm access to release calendar

Public and Beta releases and timelines go/dash-team-releases

[Googler only] Join release chatroom

Release hotline https://chat.google.com/room/AAAA6RKcK2k?cls=7

[Googler only] join mdb/flutter-release-team

Controls who can approve 2 party auth requests. https://ganpati2.corp.google.com/propose_membership?parent=100213927583&child=$me.prod

Setup conductor

Conductor is a dart command line interface for common release tasks. Its instructions are in README.md.

[Googler only] Confirm access to Apple signing cert update doc

go/flutter-signing-apple-contracts Also confirm access to valentine entries listed in that doc.

[Googler only] Access release engineer doc

Confirm access to go/release-eng-retros