
* Migrate flutter conductor out of dev/tools and into its own directory * flesh out documentation * fix analysis options * fix integration test
57 lines
1.8 KiB
Markdown
57 lines
1.8 KiB
Markdown
# Flutter Conductor
|
|
|
|
Command-line tool for managing a release of the Flutter SDK.
|
|
|
|
## Requirements
|
|
|
|
Some basic requirements to conduct a release are:
|
|
|
|
- a Linux or macOS computer set up for Flutter development. The conductor does
|
|
not support Windows.
|
|
- git
|
|
- Mirrors on GitHub of the Flutter
|
|
[framework](https://github.com/flutter/flutter) and
|
|
[engine](https://github.com/flutter/engine) repositories.
|
|
|
|
## Usage
|
|
|
|
The main entrypoint for the conductor is [bin/conductor](bin/conductor). For
|
|
brevity, the rest of this document will assume that this entrypoint is on the
|
|
shell path.
|
|
|
|
All available commands can be seen via:
|
|
|
|
`conductor help`
|
|
|
|
Releases are initialized with the `start` sub-command, like:
|
|
|
|
```
|
|
conductor start \
|
|
--candidate-branch=flutter-2.2-candidate.10 \
|
|
--release-channel=beta \
|
|
--framework-mirror=git@github.com:flutter-contributor/flutter.git \
|
|
--engine-mirror=git@github.com:flutter-contributor/engine.git \
|
|
--engine-cherrypicks=72114dafe28c8700f1d5d629c6ae9d34172ba395 \
|
|
--framework-cherrypicks=a3e66b396746f6581b2b7efd1b0d0f0074215128,d8d853436206e86f416236b930e97779b143a100 \
|
|
--dart-revision=4511eb2a779a612d9d6b2012123575013e0aef12
|
|
```
|
|
|
|
For more details on these command line arguments, see `conductor help start`.
|
|
This command will write to disk a state file that will persist until the release
|
|
is completed. To see the current status of the release (at any time), issue the
|
|
command:
|
|
|
|
`conductor status`
|
|
|
|
Once initializing the release, the conductor tool will issue instructions for
|
|
manual steps that must be executed by the user. At any time these instructions
|
|
can be seen via `conductor status`. Once these manual steps have been completed,
|
|
you can proceed to the next step by using the command:
|
|
|
|
`conductor next`
|
|
|
|
Upon successful completion of the release, the following command will remove the
|
|
persistent state file:
|
|
|
|
`conductor clean`
|