pub struct Build {
Show 29 fields pub name: String, pub id: String, pub project_id: String, pub status: i32, pub status_detail: String, pub source: Option<Source>, pub steps: Vec<BuildStep>, pub results: Option<Results>, pub create_time: Option<Timestamp>, pub start_time: Option<Timestamp>, pub finish_time: Option<Timestamp>, pub timeout: Option<Duration>, pub images: Vec<String>, pub queue_ttl: Option<Duration>, pub artifacts: Option<Artifacts>, pub logs_bucket: String, pub source_provenance: Option<SourceProvenance>, pub build_trigger_id: String, pub options: Option<BuildOptions>, pub log_url: String, pub substitutions: BTreeMap<String, String>, pub tags: Vec<String>, pub secrets: Vec<Secret>, pub timing: BTreeMap<String, TimeSpan>, pub approval: Option<BuildApproval>, pub service_account: String, pub available_secrets: Option<Secrets>, pub warnings: Vec<Warning>, pub failure_info: Option<FailureInfo>,
}
Expand description

A build resource in the Cloud Build API.

At a high level, a Build describes where to find source code, how to build it (for example, the builder image to run on the source), and where to store the built artifacts.

Fields can include the following variables, which will be expanded when the build is created:

  • $PROJECT_ID: the project ID of the build.
  • $PROJECT_NUMBER: the project number of the build.
  • $LOCATION: the location/region of the build.
  • $BUILD_ID: the autogenerated ID of the build.
  • $REPO_NAME: the source repository name specified by RepoSource.
  • $BRANCH_NAME: the branch name specified by RepoSource.
  • $TAG_NAME: the tag name specified by RepoSource.
  • $REVISION_ID or $COMMIT_SHA: the commit SHA specified by RepoSource or resolved from the specified branch or tag.
  • $SHORT_SHA: first 7 characters of $REVISION_ID or $COMMIT_SHA.

Fields§

§name: String

Output only. The ‘Build’ name with format: projects/{project}/locations/{location}/builds/{build}, where {build} is a unique identifier generated by the service.

§id: String

Output only. Unique identifier of the build.

§project_id: String

Output only. ID of the project.

§status: i32

Output only. Status of the build.

§status_detail: String

Output only. Customer-readable message about the current status.

§source: Option<Source>

The location of the source files to build.

§steps: Vec<BuildStep>

Required. The operations to be performed on the workspace.

§results: Option<Results>

Output only. Results of the build.

§create_time: Option<Timestamp>

Output only. Time at which the request to create the build was received.

§start_time: Option<Timestamp>

Output only. Time at which execution of the build was started.

§finish_time: Option<Timestamp>

Output only. Time at which execution of the build was finished.

The difference between finish_time and start_time is the duration of the build’s execution.

§timeout: Option<Duration>

Amount of time that this build should be allowed to run, to second granularity. If this amount of time elapses, work on the build will cease and the build status will be TIMEOUT.

timeout starts ticking from startTime.

Default time is 60 minutes.

§images: Vec<String>

A list of images to be pushed upon the successful completion of all build steps.

The images are pushed using the builder service account’s credentials.

The digests of the pushed images will be stored in the Build resource’s results field.

If any of the images fail to be pushed, the build status is marked FAILURE.

§queue_ttl: Option<Duration>

TTL in queue for this build. If provided and the build is enqueued longer than this value, the build will expire and the build status will be EXPIRED.

The TTL starts ticking from create_time.

§artifacts: Option<Artifacts>

Artifacts produced by the build that should be uploaded upon successful completion of all build steps.

§logs_bucket: String

Cloud Storage bucket where logs should be written (see Bucket Name Requirements). Logs file names will be of the format ${logs_bucket}/log-${build_id}.txt.

§source_provenance: Option<SourceProvenance>

Output only. A permanent fixed identifier for source.

§build_trigger_id: String

Output only. The ID of the BuildTrigger that triggered this build, if it was triggered automatically.

§options: Option<BuildOptions>

Special options for this build.

§log_url: String

Output only. URL to logs for this build in Google Cloud Console.

§substitutions: BTreeMap<String, String>

Substitutions data for Build resource.

§tags: Vec<String>

Tags for annotation of a Build. These are not docker tags.

§secrets: Vec<Secret>

Secrets to decrypt using Cloud Key Management Service. Note: Secret Manager is the recommended technique for managing sensitive data with Cloud Build. Use available_secrets to configure builds to access secrets from Secret Manager. For instructions, see: https://cloud.google.com/cloud-build/docs/securing-builds/use-secrets

§timing: BTreeMap<String, TimeSpan>

Output only. Stores timing information for phases of the build. Valid keys are:

  • BUILD: time to execute all build steps.
  • PUSH: time to push all artifacts including docker images and non docker artifacts.
  • FETCHSOURCE: time to fetch source.
  • SETUPBUILD: time to set up build.

If the build does not specify source or images, these keys will not be included.

§approval: Option<BuildApproval>

Output only. Describes this build’s approval configuration, status, and result.

§service_account: String

IAM service account whose credentials will be used at build runtime. Must be of the format projects/{PROJECT_ID}/serviceAccounts/{ACCOUNT}. ACCOUNT can be email address or uniqueId of the service account.

§available_secrets: Option<Secrets>

Secrets and secret environment variables.

§warnings: Vec<Warning>

Output only. Non-fatal problems encountered during the execution of the build.

§failure_info: Option<FailureInfo>

Output only. Contains information about the build when status=FAILURE.

Implementations§

source§

impl Build

source

pub fn status(&self) -> Status

Returns the enum value of status, or the default if the field is set to an invalid enum value.

source

pub fn set_status(&mut self, value: Status)

Sets status to the provided enum value.

Trait Implementations§

source§

impl Clone for Build

source§

fn clone(&self) -> Build

Returns a copy of the value. Read more
1.0.0 · source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
source§

impl Debug for Build

source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
source§

impl Default for Build

source§

fn default() -> Self

Returns the “default value” for a type. Read more
source§

impl Message for Build

source§

fn encoded_len(&self) -> usize

Returns the encoded length of the message without a length delimiter.
source§

fn clear(&mut self)

Clears the message, resetting all fields to their default.
source§

fn encode<B>(&self, buf: &mut B) -> Result<(), EncodeError>
where B: BufMut, Self: Sized,

Encodes the message to a buffer. Read more
source§

fn encode_to_vec(&self) -> Vec<u8>
where Self: Sized,

Encodes the message to a newly allocated buffer.
source§

fn encode_length_delimited<B>(&self, buf: &mut B) -> Result<(), EncodeError>
where B: BufMut, Self: Sized,

Encodes the message with a length-delimiter to a buffer. Read more
source§

fn encode_length_delimited_to_vec(&self) -> Vec<u8>
where Self: Sized,

Encodes the message with a length-delimiter to a newly allocated buffer.
source§

fn decode<B>(buf: B) -> Result<Self, DecodeError>
where B: Buf, Self: Default,

Decodes an instance of the message from a buffer. Read more
source§

fn decode_length_delimited<B>(buf: B) -> Result<Self, DecodeError>
where B: Buf, Self: Default,

Decodes a length-delimited instance of the message from the buffer.
source§

fn merge<B>(&mut self, buf: B) -> Result<(), DecodeError>
where B: Buf, Self: Sized,

Decodes an instance of the message from a buffer, and merges it into self. Read more
source§

fn merge_length_delimited<B>(&mut self, buf: B) -> Result<(), DecodeError>
where B: Buf, Self: Sized,

Decodes a length-delimited instance of the message from buffer, and merges it into self.
source§

impl PartialEq for Build

source§

fn eq(&self, other: &Build) -> bool

This method tests for self and other values to be equal, and is used by ==.
1.0.0 · source§

fn ne(&self, other: &Rhs) -> bool

This method tests for !=. The default implementation is almost always sufficient, and should not be overridden without very good reason.
source§

impl StructuralPartialEq for Build

Auto Trait Implementations§

§

impl Freeze for Build

§

impl RefUnwindSafe for Build

§

impl Send for Build

§

impl Sync for Build

§

impl Unpin for Build

§

impl UnwindSafe for Build

Blanket Implementations§

source§

impl<T> Any for T
where T: 'static + ?Sized,

source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
source§

impl<T> Borrow<T> for T
where T: ?Sized,

source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
source§

impl<T> From<T> for T

source§

fn from(t: T) -> T

Returns the argument unchanged.

§

impl<T> FromRef<T> for T
where T: Clone,

§

fn from_ref(input: &T) -> T

Converts to this type from a reference to the input type.
§

impl<T> Instrument for T

§

fn instrument(self, span: Span) -> Instrumented<Self>

Instruments this type with the provided [Span], returning an Instrumented wrapper. Read more
§

fn in_current_span(self) -> Instrumented<Self>

Instruments this type with the current Span, returning an Instrumented wrapper. Read more
source§

impl<T, U> Into<U> for T
where U: From<T>,

source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

source§

impl<T> IntoRequest<T> for T

source§

fn into_request(self) -> Request<T>

Wrap the input message T in a tonic::Request
source§

impl<T> ToOwned for T
where T: Clone,

§

type Owned = T

The resulting type after obtaining ownership.
source§

fn to_owned(&self) -> T

Creates owned data from borrowed data, usually by cloning. Read more
source§

fn clone_into(&self, target: &mut T)

Uses borrowed data to replace owned data, usually by cloning. Read more
source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

§

type Error = Infallible

The type returned in the event of a conversion error.
source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.
§

impl<V, T> VZip<V> for T
where V: MultiLane<T>,

§

fn vzip(self) -> V

§

impl<T> WithSubscriber for T

§

fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
where S: Into<Dispatch>,

Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
§

fn with_current_subscriber(self) -> WithDispatch<Self>

Attaches the current default Subscriber to this type, returning a [WithDispatch] wrapper. Read more