Class: Google::Apis::RunV1::GoogleDevtoolsCloudbuildV1Build
- Inherits:
-
Object
- Object
- Google::Apis::RunV1::GoogleDevtoolsCloudbuildV1Build
- Includes:
- Core::Hashable, Core::JsonObjectSupport
- Defined in:
- lib/google/apis/run_v1/classes.rb,
lib/google/apis/run_v1/representations.rb,
lib/google/apis/run_v1/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. - $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.
Instance Attribute Summary collapse
-
#approval ⇒ Google::Apis::RunV1::GoogleDevtoolsCloudbuildV1BuildApproval
BuildApproval describes a build's approval configuration, state, and result.
-
#artifacts ⇒ Google::Apis::RunV1::GoogleDevtoolsCloudbuildV1Artifacts
Artifacts produced by a build that should be uploaded upon successful completion of all build steps.
-
#available_secrets ⇒ Google::Apis::RunV1::GoogleDevtoolsCloudbuildV1Secrets
Secrets and secret environment variables.
-
#build_trigger_id ⇒ String
Output only.
-
#create_time ⇒ String
Output only.
-
#dependencies ⇒ Array<Google::Apis::RunV1::GoogleDevtoolsCloudbuildV1Dependency>
Optional.
-
#failure_info ⇒ Google::Apis::RunV1::GoogleDevtoolsCloudbuildV1FailureInfo
A fatal problem encountered during the execution of the build.
-
#finish_time ⇒ String
Output only.
-
#git_config ⇒ Google::Apis::RunV1::GoogleDevtoolsCloudbuildV1GitConfig
GitConfig is a configuration for git operations.
-
#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
Cloud Storage bucket where logs should be written (see Bucket Name Requirements ).
-
#name ⇒ String
Output only.
-
#options ⇒ Google::Apis::RunV1::GoogleDevtoolsCloudbuildV1BuildOptions
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::RunV1::GoogleDevtoolsCloudbuildV1Results
Artifacts created by the build pipeline.
-
#secrets ⇒ Array<Google::Apis::RunV1::GoogleDevtoolsCloudbuildV1Secret>
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::RunV1::GoogleDevtoolsCloudbuildV1Source
Location of the source in a supported storage service.
-
#source_provenance ⇒ Google::Apis::RunV1::GoogleDevtoolsCloudbuildV1SourceProvenance
Provenance of the source.
-
#start_time ⇒ String
Output only.
-
#status ⇒ String
Output only.
-
#status_detail ⇒ String
Output only.
-
#steps ⇒ Array<Google::Apis::RunV1::GoogleDevtoolsCloudbuildV1BuildStep>
Required.
-
#substitutions ⇒ Hash<String,String>
Substitutions data for
Buildresource. -
#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::RunV1::GoogleDevtoolsCloudbuildV1TimeSpan>
Output only.
-
#warnings ⇒ Array<Google::Apis::RunV1::GoogleDevtoolsCloudbuildV1Warning>
Output only.
Instance Method Summary collapse
-
#initialize(**args) ⇒ GoogleDevtoolsCloudbuildV1Build
constructor
A new instance of GoogleDevtoolsCloudbuildV1Build.
-
#update!(**args) ⇒ Object
Update properties of this object.
Constructor Details
#initialize(**args) ⇒ GoogleDevtoolsCloudbuildV1Build
Returns a new instance of GoogleDevtoolsCloudbuildV1Build.
1818 1819 1820 |
# File 'lib/google/apis/run_v1/classes.rb', line 1818 def initialize(**args) update!(**args) end |
Instance Attribute Details
#approval ⇒ Google::Apis::RunV1::GoogleDevtoolsCloudbuildV1BuildApproval
BuildApproval describes a build's approval configuration, state, and result.
Corresponds to the JSON property approval
1638 1639 1640 |
# File 'lib/google/apis/run_v1/classes.rb', line 1638 def approval @approval end |
#artifacts ⇒ Google::Apis::RunV1::GoogleDevtoolsCloudbuildV1Artifacts
Artifacts produced by a build that should be uploaded upon successful
completion of all build steps.
Corresponds to the JSON property artifacts
1644 1645 1646 |
# File 'lib/google/apis/run_v1/classes.rb', line 1644 def artifacts @artifacts end |
#available_secrets ⇒ Google::Apis::RunV1::GoogleDevtoolsCloudbuildV1Secrets
Secrets and secret environment variables.
Corresponds to the JSON property availableSecrets
1649 1650 1651 |
# File 'lib/google/apis/run_v1/classes.rb', line 1649 def available_secrets @available_secrets 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
1655 1656 1657 |
# File 'lib/google/apis/run_v1/classes.rb', line 1655 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
1660 1661 1662 |
# File 'lib/google/apis/run_v1/classes.rb', line 1660 def create_time @create_time end |
#dependencies ⇒ Array<Google::Apis::RunV1::GoogleDevtoolsCloudbuildV1Dependency>
Optional. Dependencies that the Cloud Build worker will fetch before executing
user steps.
Corresponds to the JSON property dependencies
1666 1667 1668 |
# File 'lib/google/apis/run_v1/classes.rb', line 1666 def dependencies @dependencies end |
#failure_info ⇒ Google::Apis::RunV1::GoogleDevtoolsCloudbuildV1FailureInfo
A fatal problem encountered during the execution of the build.
Corresponds to the JSON property failureInfo
1671 1672 1673 |
# File 'lib/google/apis/run_v1/classes.rb', line 1671 def failure_info @failure_info 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
1677 1678 1679 |
# File 'lib/google/apis/run_v1/classes.rb', line 1677 def finish_time @finish_time end |
#git_config ⇒ Google::Apis::RunV1::GoogleDevtoolsCloudbuildV1GitConfig
GitConfig is a configuration for git operations.
Corresponds to the JSON property gitConfig
1682 1683 1684 |
# File 'lib/google/apis/run_v1/classes.rb', line 1682 def git_config @git_config end |
#id ⇒ String
Output only. Unique identifier of the build.
Corresponds to the JSON property id
1687 1688 1689 |
# File 'lib/google/apis/run_v1/classes.rb', line 1687 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
1696 1697 1698 |
# File 'lib/google/apis/run_v1/classes.rb', line 1696 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
1701 1702 1703 |
# File 'lib/google/apis/run_v1/classes.rb', line 1701 def log_url @log_url end |
#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.
Corresponds to the JSON property logsBucket
1708 1709 1710 |
# File 'lib/google/apis/run_v1/classes.rb', line 1708 def logs_bucket @logs_bucket end |
#name ⇒ String
Output only. The 'Build' name with format: projects/project/locations/
location/builds/build`, wherebuildis a unique identifier generated by
the service.
Corresponds to the JSON propertyname`
1715 1716 1717 |
# File 'lib/google/apis/run_v1/classes.rb', line 1715 def name @name end |
#options ⇒ Google::Apis::RunV1::GoogleDevtoolsCloudbuildV1BuildOptions
Optional arguments to enable specific features of builds.
Corresponds to the JSON property options
1720 1721 1722 |
# File 'lib/google/apis/run_v1/classes.rb', line 1720 def @options end |
#project_id ⇒ String
Output only. ID of the project.
Corresponds to the JSON property projectId
1725 1726 1727 |
# File 'lib/google/apis/run_v1/classes.rb', line 1725 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
1732 1733 1734 |
# File 'lib/google/apis/run_v1/classes.rb', line 1732 def queue_ttl @queue_ttl end |
#results ⇒ Google::Apis::RunV1::GoogleDevtoolsCloudbuildV1Results
Artifacts created by the build pipeline.
Corresponds to the JSON property results
1737 1738 1739 |
# File 'lib/google/apis/run_v1/classes.rb', line 1737 def results @results end |
#secrets ⇒ Array<Google::Apis::RunV1::GoogleDevtoolsCloudbuildV1Secret>
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
Corresponds to the JSON property secrets
1746 1747 1748 |
# File 'lib/google/apis/run_v1/classes.rb', line 1746 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.
Corresponds to the JSON propertyserviceAccount`
1753 1754 1755 |
# File 'lib/google/apis/run_v1/classes.rb', line 1753 def service_account @service_account end |
#source ⇒ Google::Apis::RunV1::GoogleDevtoolsCloudbuildV1Source
Location of the source in a supported storage service.
Corresponds to the JSON property source
1758 1759 1760 |
# File 'lib/google/apis/run_v1/classes.rb', line 1758 def source @source end |
#source_provenance ⇒ Google::Apis::RunV1::GoogleDevtoolsCloudbuildV1SourceProvenance
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
1764 1765 1766 |
# File 'lib/google/apis/run_v1/classes.rb', line 1764 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
1769 1770 1771 |
# File 'lib/google/apis/run_v1/classes.rb', line 1769 def start_time @start_time end |
#status ⇒ String
Output only. Status of the build.
Corresponds to the JSON property status
1774 1775 1776 |
# File 'lib/google/apis/run_v1/classes.rb', line 1774 def status @status end |
#status_detail ⇒ String
Output only. Customer-readable message about the current status.
Corresponds to the JSON property statusDetail
1779 1780 1781 |
# File 'lib/google/apis/run_v1/classes.rb', line 1779 def status_detail @status_detail end |
#steps ⇒ Array<Google::Apis::RunV1::GoogleDevtoolsCloudbuildV1BuildStep>
Required. The operations to be performed on the workspace.
Corresponds to the JSON property steps
1784 1785 1786 |
# File 'lib/google/apis/run_v1/classes.rb', line 1784 def steps @steps end |
#substitutions ⇒ Hash<String,String>
Substitutions data for Build resource.
Corresponds to the JSON property substitutions
1789 1790 1791 |
# File 'lib/google/apis/run_v1/classes.rb', line 1789 def substitutions @substitutions end |
#tags ⇒ Array<String>
Tags for annotation of a Build. These are not docker tags.
Corresponds to the JSON property tags
1794 1795 1796 |
# File 'lib/google/apis/run_v1/classes.rb', line 1794 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 60 minutes.
Corresponds to the JSON property timeout
1802 1803 1804 |
# File 'lib/google/apis/run_v1/classes.rb', line 1802 def timeout @timeout end |
#timing ⇒ Hash<String,Google::Apis::RunV1::GoogleDevtoolsCloudbuildV1TimeSpan>
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.
Corresponds to the JSON property
timing
1811 1812 1813 |
# File 'lib/google/apis/run_v1/classes.rb', line 1811 def timing @timing end |
#warnings ⇒ Array<Google::Apis::RunV1::GoogleDevtoolsCloudbuildV1Warning>
Output only. Non-fatal problems encountered during the execution of the build.
Corresponds to the JSON property warnings
1816 1817 1818 |
# File 'lib/google/apis/run_v1/classes.rb', line 1816 def warnings @warnings end |
Instance Method Details
#update!(**args) ⇒ Object
Update properties of this object
1823 1824 1825 1826 1827 1828 1829 1830 1831 1832 1833 1834 1835 1836 1837 1838 1839 1840 1841 1842 1843 1844 1845 1846 1847 1848 1849 1850 1851 1852 1853 1854 1855 |
# File 'lib/google/apis/run_v1/classes.rb', line 1823 def update!(**args) @approval = args[:approval] if args.key?(:approval) @artifacts = args[:artifacts] if args.key?(:artifacts) @available_secrets = args[:available_secrets] if args.key?(:available_secrets) @build_trigger_id = args[:build_trigger_id] if args.key?(:build_trigger_id) @create_time = args[:create_time] if args.key?(:create_time) @dependencies = args[:dependencies] if args.key?(:dependencies) @failure_info = args[:failure_info] if args.key?(:failure_info) @finish_time = args[:finish_time] if args.key?(:finish_time) @git_config = args[:git_config] if args.key?(:git_config) @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) @warnings = args[:warnings] if args.key?(:warnings) end |