Class Build (1.0.0)

public sealed class Build : IMessage<Build>, IEquatable<Build>, IDeepCloneable<Build>, IBufferMessage, IMessage

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.
  • $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.

Inheritance

Object > Build

Implements

Google.Protobuf.IMessage<Build>, IEquatable<Build>, Google.Protobuf.IDeepCloneable<Build>, Google.Protobuf.IBufferMessage, Google.Protobuf.IMessage

Namespace

Google.Cloud.CloudBuild.V1

Assembly

Google.Cloud.CloudBuild.V1.dll

Constructors

Build()

public Build()

Build(Build)

public Build(Build other)
Parameter
NameDescription
otherBuild

Properties

Artifacts

public Artifacts Artifacts { get; set; }

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

Property Value
TypeDescription
Artifacts

BuildName

public BuildName BuildName { get; set; }

BuildName-typed view over the Name resource name property.

Property Value
TypeDescription
BuildName

BuildTriggerId

public string BuildTriggerId { get; set; }

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

Property Value
TypeDescription
String

CreateTime

public Timestamp CreateTime { get; set; }

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

Property Value
TypeDescription
Google.Protobuf.WellKnownTypes.Timestamp

FinishTime

public Timestamp FinishTime { get; set; }

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.

Property Value
TypeDescription
Google.Protobuf.WellKnownTypes.Timestamp

Id

public string Id { get; set; }

Output only. Unique identifier of the build.

Property Value
TypeDescription
String

Images

public RepeatedField<string> Images { get; }

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.

Property Value
TypeDescription
Google.Protobuf.Collections.RepeatedField<String>

LogsBucket

public string LogsBucket { get; set; }

Google 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.

Property Value
TypeDescription
String

LogUrl

public string LogUrl { get; set; }

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

Property Value
TypeDescription
String

Name

public string Name { get; set; }

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

Property Value
TypeDescription
String

Options

public BuildOptions Options { get; set; }

Special options for this build.

Property Value
TypeDescription
BuildOptions

ProjectId

public string ProjectId { get; set; }

Output only. ID of the project.

Property Value
TypeDescription
String

QueueTtl

public Duration QueueTtl { get; set; }

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.

Property Value
TypeDescription
Google.Protobuf.WellKnownTypes.Duration

Results

public Results Results { get; set; }

Output only. Results of the build.

Property Value
TypeDescription
Results

Secrets

public RepeatedField<Secret> Secrets { get; }

Secrets to decrypt using Cloud Key Management Service.

Property Value
TypeDescription
Google.Protobuf.Collections.RepeatedField<Secret>

ServiceAccount

public string ServiceAccount { get; set; }

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.

This field is in alpha and is not publicly available.

Property Value
TypeDescription
String

ServiceAccountAsServiceAccountName

public ServiceAccountName ServiceAccountAsServiceAccountName { get; set; }

ServiceAccountName-typed view over the ServiceAccount resource name property.

Property Value
TypeDescription
ServiceAccountName

Source

public Source Source { get; set; }

The location of the source files to build.

Property Value
TypeDescription
Source

SourceProvenance

public SourceProvenance SourceProvenance { get; set; }

Output only. A permanent fixed identifier for source.

Property Value
TypeDescription
SourceProvenance

StartTime

public Timestamp StartTime { get; set; }

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

Property Value
TypeDescription
Google.Protobuf.WellKnownTypes.Timestamp

Status

public Build.Types.Status Status { get; set; }

Output only. Status of the build.

Property Value
TypeDescription
Build.Types.Status

StatusDetail

public string StatusDetail { get; set; }

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

Property Value
TypeDescription
String

Steps

public RepeatedField<BuildStep> Steps { get; }

Required. The operations to be performed on the workspace.

Property Value
TypeDescription
Google.Protobuf.Collections.RepeatedField<BuildStep>

Substitutions

public MapField<string, string> Substitutions { get; }

Substitutions data for Build resource.

Property Value
TypeDescription
Google.Protobuf.Collections.MapField<String, String>

Tags

public RepeatedField<string> Tags { get; }

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

Property Value
TypeDescription
Google.Protobuf.Collections.RepeatedField<String>

Timeout

public Duration Timeout { get; set; }

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 ten minutes.

Property Value
TypeDescription
Google.Protobuf.WellKnownTypes.Duration

Timing

public MapField<string, TimeSpan> Timing { get; }

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 specified images.
  • FETCHSOURCE: time to fetch source.

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

Property Value
TypeDescription
Google.Protobuf.Collections.MapField<String, TimeSpan>