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.



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

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



6420
6421
6422
# File 'lib/google/apis/clouddeploy_v1/classes.rb', line 6420

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)


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

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)


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

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)


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

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)


6445
6446
6447
# File 'lib/google/apis/clouddeploy_v1/classes.rb', line 6445

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)


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

def time_zone
  @time_zone
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



6458
6459
6460
6461
6462
6463
6464
6465
# File 'lib/google/apis/clouddeploy_v1/classes.rb', line 6458

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