Class: Google::Apis::ComputeV1::AutoscalingPolicyScalingSchedule

Inherits:
Object
  • Object
show all
Includes:
Google::Apis::Core::Hashable, Google::Apis::Core::JsonObjectSupport
Defined in:
lib/google/apis/compute_v1/classes.rb,
lib/google/apis/compute_v1/representations.rb,
lib/google/apis/compute_v1/representations.rb

Overview

Scaling based on user-defined schedule. The message describes a single scaling schedule. A scaling schedule changes the minimum number of VM instances an autoscaler can recommend, which can trigger scaling out.

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(**args) ⇒ AutoscalingPolicyScalingSchedule

Returns a new instance of AutoscalingPolicyScalingSchedule.



2728
2729
2730
# File 'lib/google/apis/compute_v1/classes.rb', line 2728

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

Instance Attribute Details

#descriptionString

A description of a scaling schedule. Corresponds to the JSON property description

Returns:

  • (String)


2688
2689
2690
# File 'lib/google/apis/compute_v1/classes.rb', line 2688

def description
  @description
end

#disabledBoolean Also known as: disabled?

A boolean value that specifies whether a scaling schedule can influence autoscaler recommendations. If set to true, then a scaling schedule has no effect. This field is optional, and its value is false by default. Corresponds to the JSON property disabled

Returns:

  • (Boolean)


2695
2696
2697
# File 'lib/google/apis/compute_v1/classes.rb', line 2695

def disabled
  @disabled
end

#duration_secFixnum

The duration of time intervals, in seconds, for which this scaling schedule is to run. The minimum allowed value is 300. This field is required. Corresponds to the JSON property durationSec

Returns:

  • (Fixnum)


2702
2703
2704
# File 'lib/google/apis/compute_v1/classes.rb', line 2702

def duration_sec
  @duration_sec
end

#min_required_replicasFixnum

The minimum number of VM instances that the autoscaler will recommend in time intervals starting according to schedule. This field is required. Corresponds to the JSON property minRequiredReplicas

Returns:

  • (Fixnum)


2708
2709
2710
# File 'lib/google/apis/compute_v1/classes.rb', line 2708

def min_required_replicas
  @min_required_replicas
end

#scheduleString

The start timestamps of time intervals when this scaling schedule is to provide a scaling signal. This field uses the extended cron format (with an optional year field). The expression can describe a single timestamp if the optional year is set, in which case the scaling schedule runs once. The schedule is interpreted with respect to time_zone. This field is required. Note: These timestamps only describe when autoscaler starts providing the scaling signal. The VMs need additional time to become serving. Corresponds to the JSON property schedule

Returns:

  • (String)


2719
2720
2721
# File 'lib/google/apis/compute_v1/classes.rb', line 2719

def schedule
  @schedule
end

#time_zoneString

The time zone to use when interpreting the schedule. The value of this field must be a time zone name from the tz database: https://en.wikipedia.org/wiki/ Tz_database. This field is assigned a default value of "UTC" if left empty. Corresponds to the JSON property timeZone

Returns:

  • (String)


2726
2727
2728
# File 'lib/google/apis/compute_v1/classes.rb', line 2726

def time_zone
  @time_zone
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



2733
2734
2735
2736
2737
2738
2739
2740
# File 'lib/google/apis/compute_v1/classes.rb', line 2733

def update!(**args)
  @description = args[:description] if args.key?(:description)
  @disabled = args[:disabled] if args.key?(:disabled)
  @duration_sec = args[:duration_sec] if args.key?(:duration_sec)
  @min_required_replicas = args[:min_required_replicas] if args.key?(:min_required_replicas)
  @schedule = args[:schedule] if args.key?(:schedule)
  @time_zone = args[:time_zone] if args.key?(:time_zone)
end