mirror of
https://github.com/flutter/flutter.git
synced 2025-06-03 00:51:18 +00:00
104 lines
2.5 KiB
Protocol Buffer
104 lines
2.5 KiB
Protocol Buffer
syntax = "proto3";
|
|
|
|
package conductor_state;
|
|
|
|
// A git remote
|
|
message Remote {
|
|
string name = 1;
|
|
string url = 2;
|
|
}
|
|
|
|
enum ReleasePhase {
|
|
// Release was started with `conductor start` and repositories cloned.
|
|
INITIALIZE = 0;
|
|
APPLY_ENGINE_CHERRYPICKS = 1;
|
|
CODESIGN_ENGINE_BINARIES = 2;
|
|
APPLY_FRAMEWORK_CHERRYPICKS = 3;
|
|
|
|
// Git tag applied to framework RC branch HEAD and pushed upstream.
|
|
PUBLISH_VERSION = 4;
|
|
|
|
// RC branch HEAD pushed to upstream release branch.
|
|
//
|
|
// For example, flutter-1.2-candidate.3 -> upstream/beta
|
|
PUBLISH_CHANNEL = 5;
|
|
|
|
// Package artifacts verified to exist on cloud storage.
|
|
VERIFY_RELEASE = 6;
|
|
}
|
|
|
|
enum CherrypickState {
|
|
// The cherrypick has not yet been applied.
|
|
PENDING = 0;
|
|
|
|
// The cherrypick has not been applied and will require manual resolution.
|
|
PENDING_WITH_CONFLICT = 1;
|
|
|
|
// The cherrypick has been successfully applied to the local checkout.
|
|
//
|
|
// This state requires Cherrypick.appliedRevision to also be set.
|
|
COMPLETED = 2;
|
|
|
|
// The cherrypick will NOT be applied in this release.
|
|
ABANDONED = 3;
|
|
}
|
|
|
|
message Cherrypick {
|
|
// The revision on trunk to cherrypick.
|
|
string trunkRevision = 1;
|
|
|
|
// Once applied, the actual commit revision of the cherrypick.
|
|
string appliedRevision = 2;
|
|
|
|
CherrypickState state = 3;
|
|
}
|
|
|
|
message Repository {
|
|
// The development git branch the release is based on.
|
|
//
|
|
// Must be of the form /flutter-(\d+)\.(\d+)-candidate\.(\d+)/
|
|
string candidateBranch = 1;
|
|
|
|
// The commit hash at the tip of the branch before cherrypicks were applied.
|
|
string startingGitHead = 2;
|
|
|
|
// The difference in commits between this and [startingGitHead] is the number
|
|
// of cherrypicks that have been currently applied.
|
|
string currentGitHead = 3;
|
|
|
|
// Path to the git checkout on local disk.
|
|
string checkoutPath = 4;
|
|
|
|
// The remote commits will be fetched from.
|
|
Remote upstream = 5;
|
|
|
|
// The remote cherrypicks will be pushed to to create a Pull Request.
|
|
//
|
|
// This should be a mirror owned by the user conducting the release.
|
|
Remote mirror = 6;
|
|
|
|
// Desired cherrypicks.
|
|
repeated Cherrypick cherrypicks = 7;
|
|
}
|
|
|
|
message ConductorState {
|
|
// One of 'stable', 'beta', or 'dev'
|
|
string releaseChannel = 1;
|
|
|
|
// The name of the release.
|
|
string releaseVersion = 2;
|
|
|
|
Repository engine = 4;
|
|
Repository framework = 5;
|
|
int64 createdDate = 6;
|
|
int64 lastUpdatedDate = 7;
|
|
|
|
repeated string logs = 8;
|
|
|
|
// The last [ReleasePhase] that was successfully completed.
|
|
ReleasePhase lastPhase = 9;
|
|
|
|
// Commit hash of the Conductor tool.
|
|
string conductor_version = 10;
|
|
}
|