Class: Google::Apis::ClouddeployV1::Automation
- Inherits:
-
Object
- Object
- Google::Apis::ClouddeployV1::Automation
- Includes:
- Google::Apis::Core::Hashable, Google::Apis::Core::JsonObjectSupport
- Defined in:
- lib/google/apis/clouddeploy_v1/classes.rb,
lib/google/apis/clouddeploy_v1/representations.rb,
lib/google/apis/clouddeploy_v1/representations.rb
Overview
An Automation
resource in the Cloud Deploy API. An Automation
enables the
automation of manually driven actions for a Delivery Pipeline, which includes
Release promotion among Targets, Rollout repair and Rollout deployment
strategy advancement. The intention of Automation is to reduce manual
intervention in the continuous delivery process.
Instance Attribute Summary collapse
-
#annotations ⇒ Hash<String,String>
Optional.
-
#create_time ⇒ String
Output only.
-
#description ⇒ String
Optional.
-
#etag ⇒ String
Optional.
-
#labels ⇒ Hash<String,String>
Optional.
-
#name ⇒ String
Output only.
-
#rules ⇒ Array<Google::Apis::ClouddeployV1::AutomationRule>
Required.
-
#selector ⇒ Google::Apis::ClouddeployV1::AutomationResourceSelector
AutomationResourceSelector contains the information to select the resources to which an Automation is going to be applied.
-
#service_account ⇒ String
Required.
-
#suspended ⇒ Boolean
(also: #suspended?)
Optional.
-
#uid ⇒ String
Output only.
-
#update_time ⇒ String
Output only.
Instance Method Summary collapse
-
#initialize(**args) ⇒ Automation
constructor
A new instance of Automation.
-
#update!(**args) ⇒ Object
Update properties of this object.
Constructor Details
#initialize(**args) ⇒ Automation
Returns a new instance of Automation.
422 423 424 |
# File 'lib/google/apis/clouddeploy_v1/classes.rb', line 422 def initialize(**args) update!(**args) end |
Instance Attribute Details
#annotations ⇒ Hash<String,String>
Optional. User annotations. These attributes can only be set and used by the user, and not by Cloud Deploy. Annotations must meet the following constraints:
- Annotations are key/value pairs. * Valid annotation keys have two segments:
an optional prefix and name, separated by a slash (
/
). * The name segment is required and must be 63 characters or less, beginning and ending with an alphanumeric character ([a-z0-9A-Z]
) with dashes (-
), underscores (_
), dots (.
), and alphanumerics between. * The prefix is optional. If specified, the prefix must be a DNS subdomain: a series of DNS labels separated by dots(.
), not longer than 253 characters in total, followed by a slash (/
). See https://kubernetes.io/docs/concepts/overview/working-with-objects/annotations/# syntax-and-character-set for more details. Corresponds to the JSON propertyannotations
350 351 352 |
# File 'lib/google/apis/clouddeploy_v1/classes.rb', line 350 def annotations @annotations end |
#create_time ⇒ String
Output only. Time at which the automation was created.
Corresponds to the JSON property createTime
355 356 357 |
# File 'lib/google/apis/clouddeploy_v1/classes.rb', line 355 def create_time @create_time end |
#description ⇒ String
Optional. Description of the Automation
. Max length is 255 characters.
Corresponds to the JSON property description
360 361 362 |
# File 'lib/google/apis/clouddeploy_v1/classes.rb', line 360 def description @description end |
#etag ⇒ String
Optional. The weak etag of the Automation
resource. This checksum is
computed by the server based on the value of other fields, and may be sent on
update and delete requests to ensure the client has an up-to-date value before
proceeding.
Corresponds to the JSON property etag
368 369 370 |
# File 'lib/google/apis/clouddeploy_v1/classes.rb', line 368 def etag @etag end |
#labels ⇒ Hash<String,String>
Optional. Labels are attributes that can be set and used by both the user and
by Cloud Deploy. Labels must meet the following constraints: * Keys and values
can contain only lowercase letters, numeric characters, underscores, and
dashes. * All characters must use UTF-8 encoding, and international characters
are allowed. * Keys must start with a lowercase letter or international
character. * Each resource is limited to a maximum of 64 labels. Both keys and
values are additionally constrained to be <= 63 characters.
Corresponds to the JSON property labels
379 380 381 |
# File 'lib/google/apis/clouddeploy_v1/classes.rb', line 379 def labels @labels end |
#name ⇒ String
Output only. Name of the Automation
. Format is projects/
project/locations/
location/deliveryPipelines/
delivery_pipeline/automations/
automation`.
Corresponds to the JSON property
name`
385 386 387 |
# File 'lib/google/apis/clouddeploy_v1/classes.rb', line 385 def name @name end |
#rules ⇒ Array<Google::Apis::ClouddeployV1::AutomationRule>
Required. List of Automation rules associated with the Automation resource.
Must have at least one rule and limited to 250 rules per Delivery Pipeline.
Note: the order of the rules here is not the same as the order of execution.
Corresponds to the JSON property rules
392 393 394 |
# File 'lib/google/apis/clouddeploy_v1/classes.rb', line 392 def rules @rules end |
#selector ⇒ Google::Apis::ClouddeployV1::AutomationResourceSelector
AutomationResourceSelector contains the information to select the resources to
which an Automation is going to be applied.
Corresponds to the JSON property selector
398 399 400 |
# File 'lib/google/apis/clouddeploy_v1/classes.rb', line 398 def selector @selector end |
#service_account ⇒ String
Required. Email address of the user-managed IAM service account that creates
Cloud Deploy release and rollout resources.
Corresponds to the JSON property serviceAccount
404 405 406 |
# File 'lib/google/apis/clouddeploy_v1/classes.rb', line 404 def service_account @service_account end |
#suspended ⇒ Boolean Also known as: suspended?
Optional. When Suspended, automation is deactivated from execution.
Corresponds to the JSON property suspended
409 410 411 |
# File 'lib/google/apis/clouddeploy_v1/classes.rb', line 409 def suspended @suspended end |
#uid ⇒ String
Output only. Unique identifier of the Automation
.
Corresponds to the JSON property uid
415 416 417 |
# File 'lib/google/apis/clouddeploy_v1/classes.rb', line 415 def uid @uid end |
#update_time ⇒ String
Output only. Time at which the automation was updated.
Corresponds to the JSON property updateTime
420 421 422 |
# File 'lib/google/apis/clouddeploy_v1/classes.rb', line 420 def update_time @update_time end |
Instance Method Details
#update!(**args) ⇒ Object
Update properties of this object
427 428 429 430 431 432 433 434 435 436 437 438 439 440 |
# File 'lib/google/apis/clouddeploy_v1/classes.rb', line 427 def update!(**args) @annotations = args[:annotations] if args.key?(:annotations) @create_time = args[:create_time] if args.key?(:create_time) @description = args[:description] if args.key?(:description) @etag = args[:etag] if args.key?(:etag) @labels = args[:labels] if args.key?(:labels) @name = args[:name] if args.key?(:name) @rules = args[:rules] if args.key?(:rules) @selector = args[:selector] if args.key?(:selector) @service_account = args[:service_account] if args.key?(:service_account) @suspended = args[:suspended] if args.key?(:suspended) @uid = args[:uid] if args.key?(:uid) @update_time = args[:update_time] if args.key?(:update_time) end |