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.



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

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



6427
6428
6429
# File 'lib/google/apis/clouddeploy_v1/classes.rb', line 6427

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)


6433
6434
6435
# File 'lib/google/apis/clouddeploy_v1/classes.rb', line 6433

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)


6441
6442
6443
# File 'lib/google/apis/clouddeploy_v1/classes.rb', line 6441

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)


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

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)


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

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)


6458
6459
6460
# File 'lib/google/apis/clouddeploy_v1/classes.rb', line 6458

def time_zone
  @time_zone
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



6465
6466
6467
6468
6469
6470
6471
6472
# File 'lib/google/apis/clouddeploy_v1/classes.rb', line 6465

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