Class: Google::Apis::CloudbuildV1alpha1::Build
- Inherits:
-
Object
- Object
- Google::Apis::CloudbuildV1alpha1::Build
- Includes:
- Google::Apis::Core::Hashable, Google::Apis::Core::JsonObjectSupport
- Defined in:
- generated/google/apis/cloudbuild_v1alpha1/classes.rb,
generated/google/apis/cloudbuild_v1alpha1/representations.rb,
generated/google/apis/cloudbuild_v1alpha1/representations.rb
Overview
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.
Instance Attribute Summary collapse
-
#artifacts ⇒ Google::Apis::CloudbuildV1alpha1::Artifacts
Artifacts produced by a build that should be uploaded upon successful completion of all build steps.
-
#build_trigger_id ⇒ String
Output only.
-
#create_time ⇒ String
Output only.
-
#finish_time ⇒ String
Output only.
-
#id ⇒ String
Output only.
-
#images ⇒ Array<String>
A list of images to be pushed upon the successful completion of all build steps.
-
#log_url ⇒ String
Output only.
-
#logs_bucket ⇒ String
Google Cloud Storage bucket where logs should be written (see Bucket Name Requirements ).
-
#name ⇒ String
Output only.
-
#options ⇒ Google::Apis::CloudbuildV1alpha1::BuildOptions
Optional arguments to enable specific features of builds.
-
#project_id ⇒ String
Output only.
-
#queue_ttl ⇒ String
TTL in queue for this build.
-
#results ⇒ Google::Apis::CloudbuildV1alpha1::Results
Artifacts created by the build pipeline.
-
#secrets ⇒ Array<Google::Apis::CloudbuildV1alpha1::Secret>
Secrets to decrypt using Cloud Key Management Service.
-
#service_account ⇒ String
IAM service account whose credentials will be used at build runtime.
-
#source ⇒ Google::Apis::CloudbuildV1alpha1::Source
Location of the source in a supported storage service.
-
#source_provenance ⇒ Google::Apis::CloudbuildV1alpha1::SourceProvenance
Provenance of the source.
-
#start_time ⇒ String
Output only.
-
#status ⇒ String
Output only.
-
#status_detail ⇒ String
Output only.
-
#steps ⇒ Array<Google::Apis::CloudbuildV1alpha1::BuildStep>
Required.
-
#substitutions ⇒ Hash<String,String>
Substitutions data for
Build
resource. -
#tags ⇒ Array<String>
Tags for annotation of a
Build
. -
#timeout ⇒ String
Amount of time that this build should be allowed to run, to second granularity.
-
#timing ⇒ Hash<String,Google::Apis::CloudbuildV1alpha1::TimeSpan>
Output only.
Instance Method Summary collapse
-
#initialize(**args) ⇒ Build
constructor
A new instance of Build.
-
#update!(**args) ⇒ Object
Update properties of this object.
Constructor Details
#initialize(**args) ⇒ Build
Returns a new instance of Build.
278 279 280 |
# File 'generated/google/apis/cloudbuild_v1alpha1/classes.rb', line 278 def initialize(**args) update!(**args) end |
Instance Attribute Details
#artifacts ⇒ Google::Apis::CloudbuildV1alpha1::Artifacts
Artifacts produced by a build that should be uploaded upon successful
completion of all build steps.
Corresponds to the JSON property artifacts
135 136 137 |
# File 'generated/google/apis/cloudbuild_v1alpha1/classes.rb', line 135 def artifacts @artifacts end |
#build_trigger_id ⇒ String
Output only. The ID of the BuildTrigger
that triggered this build, if it was
triggered automatically.
Corresponds to the JSON property buildTriggerId
141 142 143 |
# File 'generated/google/apis/cloudbuild_v1alpha1/classes.rb', line 141 def build_trigger_id @build_trigger_id end |
#create_time ⇒ String
Output only. Time at which the request to create the build was received.
Corresponds to the JSON property createTime
146 147 148 |
# File 'generated/google/apis/cloudbuild_v1alpha1/classes.rb', line 146 def create_time @create_time end |
#finish_time ⇒ String
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.
Corresponds to the JSON property finishTime
152 153 154 |
# File 'generated/google/apis/cloudbuild_v1alpha1/classes.rb', line 152 def finish_time @finish_time end |
#id ⇒ String
Output only. Unique identifier of the build.
Corresponds to the JSON property id
157 158 159 |
# File 'generated/google/apis/cloudbuild_v1alpha1/classes.rb', line 157 def id @id end |
#images ⇒ Array<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
.
Corresponds to the JSON property images
166 167 168 |
# File 'generated/google/apis/cloudbuild_v1alpha1/classes.rb', line 166 def images @images end |
#log_url ⇒ String
Output only. URL to logs for this build in Google Cloud Console.
Corresponds to the JSON property logUrl
171 172 173 |
# File 'generated/google/apis/cloudbuild_v1alpha1/classes.rb', line 171 def log_url @log_url end |
#logs_bucket ⇒ String
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
.
Corresponds to the JSON property logsBucket
178 179 180 |
# File 'generated/google/apis/cloudbuild_v1alpha1/classes.rb', line 178 def logs_bucket @logs_bucket end |
#name ⇒ String
Output only. The 'Build' name with format: projects/
project/locations/
location/builds/
build`, where
buildis a unique identifier generated by
the service.
Corresponds to the JSON property
name`
185 186 187 |
# File 'generated/google/apis/cloudbuild_v1alpha1/classes.rb', line 185 def name @name end |
#options ⇒ Google::Apis::CloudbuildV1alpha1::BuildOptions
Optional arguments to enable specific features of builds.
Corresponds to the JSON property options
190 191 192 |
# File 'generated/google/apis/cloudbuild_v1alpha1/classes.rb', line 190 def @options end |
#project_id ⇒ String
Output only. ID of the project.
Corresponds to the JSON property projectId
195 196 197 |
# File 'generated/google/apis/cloudbuild_v1alpha1/classes.rb', line 195 def project_id @project_id end |
#queue_ttl ⇒ String
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.
Corresponds to the JSON property queueTtl
202 203 204 |
# File 'generated/google/apis/cloudbuild_v1alpha1/classes.rb', line 202 def queue_ttl @queue_ttl end |
#results ⇒ Google::Apis::CloudbuildV1alpha1::Results
Artifacts created by the build pipeline.
Corresponds to the JSON property results
207 208 209 |
# File 'generated/google/apis/cloudbuild_v1alpha1/classes.rb', line 207 def results @results end |
#secrets ⇒ Array<Google::Apis::CloudbuildV1alpha1::Secret>
Secrets to decrypt using Cloud Key Management Service.
Corresponds to the JSON property secrets
212 213 214 |
# File 'generated/google/apis/cloudbuild_v1alpha1/classes.rb', line 212 def secrets @secrets end |
#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. This field is in beta.
Corresponds to the JSON property
serviceAccount`
219 220 221 |
# File 'generated/google/apis/cloudbuild_v1alpha1/classes.rb', line 219 def service_account @service_account end |
#source ⇒ Google::Apis::CloudbuildV1alpha1::Source
Location of the source in a supported storage service.
Corresponds to the JSON property source
224 225 226 |
# File 'generated/google/apis/cloudbuild_v1alpha1/classes.rb', line 224 def source @source end |
#source_provenance ⇒ Google::Apis::CloudbuildV1alpha1::SourceProvenance
Provenance of the source. Ways to find the original source, or verify that
some source was used for this build.
Corresponds to the JSON property sourceProvenance
230 231 232 |
# File 'generated/google/apis/cloudbuild_v1alpha1/classes.rb', line 230 def source_provenance @source_provenance end |
#start_time ⇒ String
Output only. Time at which execution of the build was started.
Corresponds to the JSON property startTime
235 236 237 |
# File 'generated/google/apis/cloudbuild_v1alpha1/classes.rb', line 235 def start_time @start_time end |
#status ⇒ String
Output only. Status of the build.
Corresponds to the JSON property status
240 241 242 |
# File 'generated/google/apis/cloudbuild_v1alpha1/classes.rb', line 240 def status @status end |
#status_detail ⇒ String
Output only. Customer-readable message about the current status.
Corresponds to the JSON property statusDetail
245 246 247 |
# File 'generated/google/apis/cloudbuild_v1alpha1/classes.rb', line 245 def status_detail @status_detail end |
#steps ⇒ Array<Google::Apis::CloudbuildV1alpha1::BuildStep>
Required. The operations to be performed on the workspace.
Corresponds to the JSON property steps
250 251 252 |
# File 'generated/google/apis/cloudbuild_v1alpha1/classes.rb', line 250 def steps @steps end |
#substitutions ⇒ Hash<String,String>
Substitutions data for Build
resource.
Corresponds to the JSON property substitutions
255 256 257 |
# File 'generated/google/apis/cloudbuild_v1alpha1/classes.rb', line 255 def substitutions @substitutions end |
#tags ⇒ Array<String>
Tags for annotation of a Build
. These are not docker tags.
Corresponds to the JSON property tags
260 261 262 |
# File 'generated/google/apis/cloudbuild_v1alpha1/classes.rb', line 260 def @tags end |
#timeout ⇒ String
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.
Corresponds to the JSON property timeout
268 269 270 |
# File 'generated/google/apis/cloudbuild_v1alpha1/classes.rb', line 268 def timeout @timeout end |
#timing ⇒ Hash<String,Google::Apis::CloudbuildV1alpha1::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 specified
images. * FETCHSOURCE: time to fetch source. If the build does not specify
source or images, these keys will not be included.
Corresponds to the JSON property
timing
276 277 278 |
# File 'generated/google/apis/cloudbuild_v1alpha1/classes.rb', line 276 def timing @timing end |
Instance Method Details
#update!(**args) ⇒ Object
Update properties of this object
283 284 285 286 287 288 289 290 291 292 293 294 295 296 297 298 299 300 301 302 303 304 305 306 307 308 309 |
# File 'generated/google/apis/cloudbuild_v1alpha1/classes.rb', line 283 def update!(**args) @artifacts = args[:artifacts] if args.key?(:artifacts) @build_trigger_id = args[:build_trigger_id] if args.key?(:build_trigger_id) @create_time = args[:create_time] if args.key?(:create_time) @finish_time = args[:finish_time] if args.key?(:finish_time) @id = args[:id] if args.key?(:id) @images = args[:images] if args.key?(:images) @log_url = args[:log_url] if args.key?(:log_url) @logs_bucket = args[:logs_bucket] if args.key?(:logs_bucket) @name = args[:name] if args.key?(:name) @options = args[:options] if args.key?(:options) @project_id = args[:project_id] if args.key?(:project_id) @queue_ttl = args[:queue_ttl] if args.key?(:queue_ttl) @results = args[:results] if args.key?(:results) @secrets = args[:secrets] if args.key?(:secrets) @service_account = args[:service_account] if args.key?(:service_account) @source = args[:source] if args.key?(:source) @source_provenance = args[:source_provenance] if args.key?(:source_provenance) @start_time = args[:start_time] if args.key?(:start_time) @status = args[:status] if args.key?(:status) @status_detail = args[:status_detail] if args.key?(:status_detail) @steps = args[:steps] if args.key?(:steps) @substitutions = args[:substitutions] if args.key?(:substitutions) @tags = args[:tags] if args.key?(:tags) @timeout = args[:timeout] if args.key?(:timeout) @timing = args[:timing] if args.key?(:timing) end |