Class: Google::Apis::ClouddeployV1::TimedPromoteReleaseRule

Inherits:
Object
  • Object
show all
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

The TimedPromoteReleaseRule will automatically promote a release from the current target(s) to the specified target(s) on a configured schedule.

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(**args) ⇒ TimedPromoteReleaseRule

Returns a new instance of TimedPromoteReleaseRule.



6480
6481
6482
# File 'lib/google/apis/clouddeploy_v1/classes.rb', line 6480

def initialize(**args)
   update!(**args)
end

Instance Attribute Details

#conditionGoogle::Apis::ClouddeployV1::AutomationRuleCondition

AutomationRuleCondition contains conditions relevant to an Automation rule. Corresponds to the JSON property condition



6447
6448
6449
# File 'lib/google/apis/clouddeploy_v1/classes.rb', line 6447

def condition
  @condition
end

#destination_phaseString

Optional. The starting phase of the rollout created by this rule. Default to the first phase. Corresponds to the JSON property destinationPhase

Returns:

  • (String)


6453
6454
6455
# File 'lib/google/apis/clouddeploy_v1/classes.rb', line 6453

def destination_phase
  @destination_phase
end

#destination_target_idString

Optional. The ID of the stage in the pipeline to which this Release is deploying. If unspecified, default it to the next stage in the promotion flow. The value of this field could be one of the following: * The last segment of a target name * "@next", the next target in the promotion sequence Corresponds to the JSON property destinationTargetId

Returns:

  • (String)


6461
6462
6463
# File 'lib/google/apis/clouddeploy_v1/classes.rb', line 6461

def destination_target_id
  @destination_target_id
end

#idString

Required. ID of the rule. This ID must be unique in the Automation resource to which this rule belongs. The format is [a-z]([a-z0-9-]0,61[a-z0-9])?. Corresponds to the JSON property id

Returns:

  • (String)


6467
6468
6469
# File 'lib/google/apis/clouddeploy_v1/classes.rb', line 6467

def id
  @id
end

#scheduleString

Required. Schedule in crontab format. e.g. "0 9 * * 1" for every Monday at 9am. Corresponds to the JSON property schedule

Returns:

  • (String)


6472
6473
6474
# File 'lib/google/apis/clouddeploy_v1/classes.rb', line 6472

def schedule
  @schedule
end

#time_zoneString

Required. The time zone in IANA format IANA Time Zone Database (e.g. America/New_York). Corresponds to the JSON property timeZone

Returns:

  • (String)


6478
6479
6480
# File 'lib/google/apis/clouddeploy_v1/classes.rb', line 6478

def time_zone
  @time_zone
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



6485
6486
6487
6488
6489
6490
6491
6492
# File 'lib/google/apis/clouddeploy_v1/classes.rb', line 6485

def update!(**args)
  @condition = args[:condition] if args.key?(:condition)
  @destination_phase = args[:destination_phase] if args.key?(:destination_phase)
  @destination_target_id = args[:destination_target_id] if args.key?(:destination_target_id)
  @id = args[:id] if args.key?(:id)
  @schedule = args[:schedule] if args.key?(:schedule)
  @time_zone = args[:time_zone] if args.key?(:time_zone)
end