Build class

A single build, identified by an int64 ID. Belongs to a builder.

RPC: see Builds service for build creation and retrieval. Some Build fields are marked as excluded from responses by default. Use "mask" request field to specify that a field must be included.

BigQuery: this message also defines schema of a BigQuery table of completed builds. A BigQuery row is inserted soon after build ends, i.e. a row represents a state of a build at completion time and does not change after that. All fields are included.

Next id: 36.

Inheritance
  • Object
  • GeneratedMessage
  • Build

Constructors

Build({Int64? id, BuilderID? builder, int? number, String? createdBy, String? viewUrl, Timestamp? createTime, Timestamp? startTime, Timestamp? endTime, Timestamp? updateTime, Status? status, Build_Input? input, Build_Output? output, Iterable<Step>? steps, BuildInfra? infra, Iterable<StringPair>? tags, String? summaryMarkdown, Trinary? critical, StatusDetails? statusDetails, String? canceledBy, Executable? exe, bool? canary, Duration? schedulingTimeout, Duration? executionTimeout, bool? waitForCapacity, Duration? gracePeriod, bool? canOutliveParent, Iterable<Int64>? ancestorIds, Timestamp? cancelTime, String? cancellationMarkdown, Build_BuilderInfo? builderInfo, Trinary? retriable})
factory
Build.fromBuffer(List<int> i, [ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY])
factory
Build.fromJson(String i, [ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY])
factory

Properties

ancestorIds List<Int64>
IDs of the build's ancestors. This includes all parents/grandparents/etc. This is ordered from top-to-bottom so ancestor_ids[0] is the root of the builds tree, and ancestor_ids[-1] is this build's immediate parent. This does not include any "siblings" at higher levels of the tree, just the direct chain of ancestors from root to this build.
no setter
builder BuilderID
Required. The builder this build belongs to.
getter/setter pair
builderInfo Build_BuilderInfo
getter/setter pair
canary bool
DEPRECATED
getter/setter pair
canceledBy String
Verified LUCI identity that canceled this build.
getter/setter pair
cancellationMarkdown String
Markdown reasoning for cancelling the build. Human readable and should be following https://spec.commonmark.org/0.28/.
getter/setter pair
cancelTime Timestamp
When the cancel process of the build started. Note it's not the time that the cancellation completed, which would be tracked by end_time.
getter/setter pair
canOutliveParent bool
Flag to control if the build can outlive its parent.
getter/setter pair
createdBy String
Verified LUCI identity that created this build.
getter/setter pair
createTime Timestamp
When the build was created.
getter/setter pair
critical Trinary
If NO, then the build status SHOULD NOT be used to assess correctness of the input gitiles_commit or gerrit_changes. For example, if a pre-submit build has failed, CQ MAY still land the CL. For example, if a post-submit build has failed, CLs MAY continue landing.
getter/setter pair
endTime Timestamp
When the build ended. Present iff status is terminal. MUST NOT be before start_time.
getter/setter pair
eventPlugin → EventPlugin?
Subclasses can override this getter to be notified of changes to protobuf fields.
no setterinherited
exe Executable
What to run when the build is ready to start.
getter/setter pair
executionTimeout Duration
Maximum build execution time.
getter/setter pair
gracePeriod Duration
Amount of cleanup time after execution_timeout.
getter/setter pair
hashCode int
Calculates a hash code based on the contents of the protobuf.
no setterinherited
id ↔ Int64
Identifier of the build, unique per LUCI deployment. IDs are monotonically decreasing.
getter/setter pair
info_ → BuilderInfo
no setteroverride
infra BuildInfra
Build infrastructure used by the build.
getter/setter pair
input Build_Input
Input to the build executable.
getter/setter pair
isFrozen bool
Returns true if this message is marked read-only. Otherwise false.
no setterinherited
number int
Human-readable identifier of the build with the following properties:
getter/setter pair
output Build_Output
Output of the build executable. SHOULD depend only on input field and NOT other fields. MUST be unset if build status is SCHEDULED.
getter/setter pair
retriable Trinary
If UNSET, retrying the build is implicitly allowed; If YES, retrying the build is explicitly allowed; If NO, retrying the build is explicitly disallowed,
getter/setter pair
runtimeType Type
A representation of the runtime type of the object.
no setterinherited
schedulingTimeout Duration
Maximum build pending time. If the timeout is reached, the build is marked as INFRA_FAILURE status and both status_details.{timeout, resource_exhaustion} are set.
getter/setter pair
startTime Timestamp
When the build started. Required iff status is STARTED, SUCCESS or FAILURE.
getter/setter pair
status Status
Status of the build. Must be specified, i.e. not STATUS_UNSPECIFIED.
getter/setter pair
statusDetails StatusDetails
Machine-readable details of the current status. Human-readable status reason is available in summary_markdown.
getter/setter pair
steps List<Step>
Current list of build steps. Updated as build runs.
no setter
summaryMarkdown String
Human-readable summary of the build in Markdown format (https://spec.commonmark.org/0.28/). Explains status. Up to 4 KB.
getter/setter pair
tags List<StringPair>
Arbitrary annotations for the build. One key may have multiple values, which is why this is not a map<string,string>. Indexed by the server, see also BuildPredicate.tags.
no setter
unknownFields → UnknownFieldSet
no setterinherited
updateTime Timestamp
When the build was most recently updated.
getter/setter pair
viewUrl String
Redirect url for the build.
getter/setter pair
waitForCapacity bool
If set, swarming was requested to wait until it sees at least one bot report a superset of the build's requested dimensions.
getter/setter pair

Methods

addExtension(Extension extension, Object? value) → void
Adds an extension field value to a repeated field.
inherited
check() → void
inherited
clear() → void
Clears all data that was set in this message.
inherited
clearBuilder() → void
clearBuilderInfo() → void
clearCanary() → void
clearCanceledBy() → void
clearCancellationMarkdown() → void
clearCancelTime() → void
clearCanOutliveParent() → void
clearCreatedBy() → void
clearCreateTime() → void
clearCritical() → void
clearEndTime() → void
clearExe() → void
clearExecutionTimeout() → void
clearExtension(Extension extension) → void
Clears an extension field and also removes the extension.
inherited
clearField(int tagNumber) → void
Clears the contents of a given field.
inherited
clearGracePeriod() → void
clearId() → void
clearInfra() → void
clearInput() → void
clearNumber() → void
clearOutput() → void
clearRetriable() → void
clearSchedulingTimeout() → void
clearStartTime() → void
clearStatus() → void
clearStatusDetails() → void
clearSummaryMarkdown() → void
clearUpdateTime() → void
clearViewUrl() → void
clearWaitForCapacity() → void
clone() Build
Creates a deep copy of the fields in this message. (The generated code uses mergeFromMessage.)
override
copyWith(void updates(Build)) Build
Apply updates to a copy of this message.
override
createEmptyInstance() Build
Creates an empty instance of the same message type as this.
override
createMapField<K, V>(int tagNumber, MapFieldInfo<K, V> fi) Map<K, V>
Creates a Map representing a map field.
inherited
createRepeatedField<T>(int tagNumber, FieldInfo<T> fi) List<T>
Creates List implementing a mutable repeated field.
inherited
ensureBuilder() BuilderID
ensureBuilderInfo() Build_BuilderInfo
ensureCancelTime() Timestamp
ensureCreateTime() Timestamp
ensureEndTime() Timestamp
ensureExe() Executable
ensureExecutionTimeout() Duration
ensureGracePeriod() Duration
ensureInfra() BuildInfra
ensureInput() Build_Input
ensureOutput() Build_Output
ensureSchedulingTimeout() Duration
ensureStartTime() Timestamp
ensureStatusDetails() StatusDetails
ensureUpdateTime() Timestamp
extensionsAreInitialized() bool
inherited
freeze() → GeneratedMessage
Make this message read-only.
inherited
getDefaultForField(int tagNumber) → dynamic
Returns the default value for the given field.
inherited
getExtension(Extension extension) → dynamic
Returns the value of extension.
inherited
getField(int tagNumber) → dynamic
Returns the value of the field associated with tagNumber, or the default value if it is not set.
inherited
getFieldOrNull(int tagNumber) → dynamic
Returns the value of a field, ignoring any defaults.
inherited
getTagNumber(String fieldName) int?
inherited
hasBuilder() bool
hasBuilderInfo() bool
hasCanary() bool
hasCanceledBy() bool
hasCancellationMarkdown() bool
hasCancelTime() bool
hasCanOutliveParent() bool
hasCreatedBy() bool
hasCreateTime() bool
hasCritical() bool
hasEndTime() bool
hasExe() bool
hasExecutionTimeout() bool
hasExtension(Extension extension) bool
Returns true if a value of extension is present.
inherited
hasField(int tagNumber) bool
Whether this message has a field associated with tagNumber.
inherited
hasGracePeriod() bool
hasId() bool
hasInfra() bool
hasInput() bool
hasNumber() bool
hasOutput() bool
hasRequiredFields() bool
Whether the message has required fields.
inherited
hasRetriable() bool
hasSchedulingTimeout() bool
hasStartTime() bool
hasStatus() bool
hasStatusDetails() bool
hasSummaryMarkdown() bool
hasUpdateTime() bool
hasViewUrl() bool
hasWaitForCapacity() bool
isInitialized() bool
Whether all required fields in the message and embedded messages are set.
inherited
mergeFromBuffer(List<int> input, [ExtensionRegistry extensionRegistry = ExtensionRegistry.EMPTY]) → void
Merges serialized protocol buffer data into this message.
inherited
mergeFromCodedBufferReader(CodedBufferReader input, [ExtensionRegistry extensionRegistry = ExtensionRegistry.EMPTY]) → void
inherited
mergeFromJson(String data, [ExtensionRegistry extensionRegistry = ExtensionRegistry.EMPTY]) → void
Merges field values from data, a JSON object, encoded as described by GeneratedMessage.writeToJson.
inherited
mergeFromJsonMap(Map<String, dynamic> json, [ExtensionRegistry extensionRegistry = ExtensionRegistry.EMPTY]) → void
Merges field values from a JSON object represented as a Dart map.
inherited
mergeFromMessage(GeneratedMessage other) → void
Merges the contents of the other into this message.
inherited
mergeFromProto3Json(Object? json, {TypeRegistry typeRegistry = const TypeRegistry.empty(), bool ignoreUnknownFields = false, bool supportNamesWithUnderscores = true, bool permissiveEnums = false}) → void
Merges field values from json, a JSON object using proto3 encoding.
inherited
mergeUnknownFields(UnknownFieldSet unknownFieldSet) → void
inherited
noSuchMethod(Invocation invocation) → dynamic
Invoked when a nonexistent method or property is accessed.
inherited
setExtension(Extension extension, Object value) → void
Sets the value of a non-repeated extension field to value.
inherited
setField(int tagNumber, Object value) → void
Sets the value of a field by its tagNumber.
inherited
toBuilder() → GeneratedMessage
Creates a writable, shallow copy of this message.
inherited
toDebugString() String
Returns a String representation of this message.
inherited
toProto3Json({TypeRegistry typeRegistry = const TypeRegistry.empty()}) Object?
Returns an Object representing Proto3 JSON serialization of this.
inherited
toString() String
Returns a String representation of this message.
inherited
writeToBuffer() Uint8List
inherited
writeToCodedBufferWriter(CodedBufferWriter output) → void
inherited
writeToJson() String
Returns a JSON string that encodes this message.
inherited
writeToJsonMap() Map<String, dynamic>
Returns the JSON encoding of this message as a Dart Map.
inherited

Operators

operator ==(Object other) bool
The equality operator.
inherited

Static Methods

create() Build
createRepeated() → PbList<Build>
getDefault() Build