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.



7104
7105
7106
# File 'lib/google/apis/clouddeploy_v1/classes.rb', line 7104

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



7071
7072
7073
# File 'lib/google/apis/clouddeploy_v1/classes.rb', line 7071

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)


7077
7078
7079
# File 'lib/google/apis/clouddeploy_v1/classes.rb', line 7077

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)


7085
7086
7087
# File 'lib/google/apis/clouddeploy_v1/classes.rb', line 7085

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)


7091
7092
7093
# File 'lib/google/apis/clouddeploy_v1/classes.rb', line 7091

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)


7096
7097
7098
# File 'lib/google/apis/clouddeploy_v1/classes.rb', line 7096

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)


7102
7103
7104
# File 'lib/google/apis/clouddeploy_v1/classes.rb', line 7102

def time_zone
  @time_zone
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



7109
7110
7111
7112
7113
7114
7115
7116
# File 'lib/google/apis/clouddeploy_v1/classes.rb', line 7109

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