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.



6379
6380
6381
# File 'lib/google/apis/clouddeploy_v1/classes.rb', line 6379

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



6346
6347
6348
# File 'lib/google/apis/clouddeploy_v1/classes.rb', line 6346

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)


6352
6353
6354
# File 'lib/google/apis/clouddeploy_v1/classes.rb', line 6352

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)


6360
6361
6362
# File 'lib/google/apis/clouddeploy_v1/classes.rb', line 6360

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)


6366
6367
6368
# File 'lib/google/apis/clouddeploy_v1/classes.rb', line 6366

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)


6371
6372
6373
# File 'lib/google/apis/clouddeploy_v1/classes.rb', line 6371

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)


6377
6378
6379
# File 'lib/google/apis/clouddeploy_v1/classes.rb', line 6377

def time_zone
  @time_zone
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



6384
6385
6386
6387
6388
6389
6390
6391
# File 'lib/google/apis/clouddeploy_v1/classes.rb', line 6384

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