mirror of
https://github.com/ansible-collections/google.cloud.git
synced 2025-04-08 20:00:29 -07:00
Signed-off-by: Modular Magician <magic-modules@google.com>
This commit is contained in:
parent
85401c2cb3
commit
fef0dd2df0
4 changed files with 284 additions and 0 deletions
|
@ -111,6 +111,37 @@ options:
|
||||||
required: false
|
required: false
|
||||||
default: 'ON'
|
default: 'ON'
|
||||||
type: str
|
type: str
|
||||||
|
scale_in_control:
|
||||||
|
description:
|
||||||
|
- Defines scale in controls to reduce the risk of response latency and outages
|
||||||
|
due to abrupt scale-in events .
|
||||||
|
required: false
|
||||||
|
type: dict
|
||||||
|
suboptions:
|
||||||
|
max_scaled_in_replicas:
|
||||||
|
description:
|
||||||
|
- A nested object resource.
|
||||||
|
required: false
|
||||||
|
type: dict
|
||||||
|
suboptions:
|
||||||
|
fixed:
|
||||||
|
description:
|
||||||
|
- Specifies a fixed number of VM instances. This must be a positive
|
||||||
|
integer.
|
||||||
|
required: false
|
||||||
|
type: int
|
||||||
|
percent:
|
||||||
|
description:
|
||||||
|
- Specifies a percentage of instances between 0 to 100%, inclusive.
|
||||||
|
- For example, specify 80 for 80%.
|
||||||
|
required: false
|
||||||
|
type: int
|
||||||
|
time_window_sec:
|
||||||
|
description:
|
||||||
|
- How long back autoscaling should look when computing recommendations
|
||||||
|
to include directives regarding slower scale down, as described above.
|
||||||
|
required: false
|
||||||
|
type: int
|
||||||
cpu_utilization:
|
cpu_utilization:
|
||||||
description:
|
description:
|
||||||
- Defines the CPU utilization policy that allows the autoscaler to scale based
|
- Defines the CPU utilization policy that allows the autoscaler to scale based
|
||||||
|
@ -393,6 +424,37 @@ autoscalingPolicy:
|
||||||
- Defines operating mode for this policy.
|
- Defines operating mode for this policy.
|
||||||
returned: success
|
returned: success
|
||||||
type: str
|
type: str
|
||||||
|
scaleInControl:
|
||||||
|
description:
|
||||||
|
- Defines scale in controls to reduce the risk of response latency and outages
|
||||||
|
due to abrupt scale-in events .
|
||||||
|
returned: success
|
||||||
|
type: complex
|
||||||
|
contains:
|
||||||
|
maxScaledInReplicas:
|
||||||
|
description:
|
||||||
|
- A nested object resource.
|
||||||
|
returned: success
|
||||||
|
type: complex
|
||||||
|
contains:
|
||||||
|
fixed:
|
||||||
|
description:
|
||||||
|
- Specifies a fixed number of VM instances. This must be a positive
|
||||||
|
integer.
|
||||||
|
returned: success
|
||||||
|
type: int
|
||||||
|
percent:
|
||||||
|
description:
|
||||||
|
- Specifies a percentage of instances between 0 to 100%, inclusive.
|
||||||
|
- For example, specify 80 for 80%.
|
||||||
|
returned: success
|
||||||
|
type: int
|
||||||
|
timeWindowSec:
|
||||||
|
description:
|
||||||
|
- How long back autoscaling should look when computing recommendations to
|
||||||
|
include directives regarding slower scale down, as described above.
|
||||||
|
returned: success
|
||||||
|
type: int
|
||||||
cpuUtilization:
|
cpuUtilization:
|
||||||
description:
|
description:
|
||||||
- Defines the CPU utilization policy that allows the autoscaler to scale based
|
- Defines the CPU utilization policy that allows the autoscaler to scale based
|
||||||
|
@ -503,6 +565,13 @@ def main():
|
||||||
max_num_replicas=dict(required=True, type='int', aliases=['maxReplicas']),
|
max_num_replicas=dict(required=True, type='int', aliases=['maxReplicas']),
|
||||||
cool_down_period_sec=dict(default=60, type='int', aliases=['cooldownPeriod']),
|
cool_down_period_sec=dict(default=60, type='int', aliases=['cooldownPeriod']),
|
||||||
mode=dict(default='ON', type='str'),
|
mode=dict(default='ON', type='str'),
|
||||||
|
scale_in_control=dict(
|
||||||
|
type='dict',
|
||||||
|
options=dict(
|
||||||
|
max_scaled_in_replicas=dict(type='dict', options=dict(fixed=dict(type='int'), percent=dict(type='int'))),
|
||||||
|
time_window_sec=dict(type='int'),
|
||||||
|
),
|
||||||
|
),
|
||||||
cpu_utilization=dict(type='dict', options=dict(utilization_target=dict(type='str', aliases=['target']))),
|
cpu_utilization=dict(type='dict', options=dict(utilization_target=dict(type='str', aliases=['target']))),
|
||||||
custom_metric_utilizations=dict(
|
custom_metric_utilizations=dict(
|
||||||
type='list',
|
type='list',
|
||||||
|
@ -700,6 +769,7 @@ class AutoscalerAutoscalingpolicy(object):
|
||||||
u'maxNumReplicas': self.request.get('max_num_replicas'),
|
u'maxNumReplicas': self.request.get('max_num_replicas'),
|
||||||
u'coolDownPeriodSec': self.request.get('cool_down_period_sec'),
|
u'coolDownPeriodSec': self.request.get('cool_down_period_sec'),
|
||||||
u'mode': self.request.get('mode'),
|
u'mode': self.request.get('mode'),
|
||||||
|
u'scaleInControl': AutoscalerScaleincontrol(self.request.get('scale_in_control', {}), self.module).to_request(),
|
||||||
u'cpuUtilization': AutoscalerCpuutilization(self.request.get('cpu_utilization', {}), self.module).to_request(),
|
u'cpuUtilization': AutoscalerCpuutilization(self.request.get('cpu_utilization', {}), self.module).to_request(),
|
||||||
u'customMetricUtilizations': AutoscalerCustommetricutilizationsArray(
|
u'customMetricUtilizations': AutoscalerCustommetricutilizationsArray(
|
||||||
self.request.get('custom_metric_utilizations', []), self.module
|
self.request.get('custom_metric_utilizations', []), self.module
|
||||||
|
@ -715,6 +785,7 @@ class AutoscalerAutoscalingpolicy(object):
|
||||||
u'maxNumReplicas': self.request.get(u'maxNumReplicas'),
|
u'maxNumReplicas': self.request.get(u'maxNumReplicas'),
|
||||||
u'coolDownPeriodSec': self.request.get(u'coolDownPeriodSec'),
|
u'coolDownPeriodSec': self.request.get(u'coolDownPeriodSec'),
|
||||||
u'mode': self.request.get(u'mode'),
|
u'mode': self.request.get(u'mode'),
|
||||||
|
u'scaleInControl': AutoscalerScaleincontrol(self.request.get(u'scaleInControl', {}), self.module).from_response(),
|
||||||
u'cpuUtilization': AutoscalerCpuutilization(self.request.get(u'cpuUtilization', {}), self.module).from_response(),
|
u'cpuUtilization': AutoscalerCpuutilization(self.request.get(u'cpuUtilization', {}), self.module).from_response(),
|
||||||
u'customMetricUtilizations': AutoscalerCustommetricutilizationsArray(
|
u'customMetricUtilizations': AutoscalerCustommetricutilizationsArray(
|
||||||
self.request.get(u'customMetricUtilizations', []), self.module
|
self.request.get(u'customMetricUtilizations', []), self.module
|
||||||
|
@ -724,6 +795,46 @@ class AutoscalerAutoscalingpolicy(object):
|
||||||
)
|
)
|
||||||
|
|
||||||
|
|
||||||
|
class AutoscalerScaleincontrol(object):
|
||||||
|
def __init__(self, request, module):
|
||||||
|
self.module = module
|
||||||
|
if request:
|
||||||
|
self.request = request
|
||||||
|
else:
|
||||||
|
self.request = {}
|
||||||
|
|
||||||
|
def to_request(self):
|
||||||
|
return remove_nones_from_dict(
|
||||||
|
{
|
||||||
|
u'maxScaledInReplicas': AutoscalerMaxscaledinreplicas(self.request.get('max_scaled_in_replicas', {}), self.module).to_request(),
|
||||||
|
u'timeWindowSec': self.request.get('time_window_sec'),
|
||||||
|
}
|
||||||
|
)
|
||||||
|
|
||||||
|
def from_response(self):
|
||||||
|
return remove_nones_from_dict(
|
||||||
|
{
|
||||||
|
u'maxScaledInReplicas': AutoscalerMaxscaledinreplicas(self.request.get(u'maxScaledInReplicas', {}), self.module).from_response(),
|
||||||
|
u'timeWindowSec': self.request.get(u'timeWindowSec'),
|
||||||
|
}
|
||||||
|
)
|
||||||
|
|
||||||
|
|
||||||
|
class AutoscalerMaxscaledinreplicas(object):
|
||||||
|
def __init__(self, request, module):
|
||||||
|
self.module = module
|
||||||
|
if request:
|
||||||
|
self.request = request
|
||||||
|
else:
|
||||||
|
self.request = {}
|
||||||
|
|
||||||
|
def to_request(self):
|
||||||
|
return remove_nones_from_dict({u'fixed': self.request.get('fixed'), u'percent': self.request.get('percent')})
|
||||||
|
|
||||||
|
def from_response(self):
|
||||||
|
return remove_nones_from_dict({u'fixed': self.request.get(u'fixed'), u'percent': self.request.get(u'percent')})
|
||||||
|
|
||||||
|
|
||||||
class AutoscalerCpuutilization(object):
|
class AutoscalerCpuutilization(object):
|
||||||
def __init__(self, request, module):
|
def __init__(self, request, module):
|
||||||
self.module = module
|
self.module = module
|
||||||
|
|
|
@ -183,6 +183,37 @@ resources:
|
||||||
- Defines operating mode for this policy.
|
- Defines operating mode for this policy.
|
||||||
returned: success
|
returned: success
|
||||||
type: str
|
type: str
|
||||||
|
scaleInControl:
|
||||||
|
description:
|
||||||
|
- Defines scale in controls to reduce the risk of response latency and outages
|
||||||
|
due to abrupt scale-in events .
|
||||||
|
returned: success
|
||||||
|
type: complex
|
||||||
|
contains:
|
||||||
|
maxScaledInReplicas:
|
||||||
|
description:
|
||||||
|
- A nested object resource.
|
||||||
|
returned: success
|
||||||
|
type: complex
|
||||||
|
contains:
|
||||||
|
fixed:
|
||||||
|
description:
|
||||||
|
- Specifies a fixed number of VM instances. This must be a positive
|
||||||
|
integer.
|
||||||
|
returned: success
|
||||||
|
type: int
|
||||||
|
percent:
|
||||||
|
description:
|
||||||
|
- Specifies a percentage of instances between 0 to 100%, inclusive.
|
||||||
|
- For example, specify 80 for 80%.
|
||||||
|
returned: success
|
||||||
|
type: int
|
||||||
|
timeWindowSec:
|
||||||
|
description:
|
||||||
|
- How long back autoscaling should look when computing recommendations
|
||||||
|
to include directives regarding slower scale down, as described above.
|
||||||
|
returned: success
|
||||||
|
type: int
|
||||||
cpuUtilization:
|
cpuUtilization:
|
||||||
description:
|
description:
|
||||||
- Defines the CPU utilization policy that allows the autoscaler to scale
|
- Defines the CPU utilization policy that allows the autoscaler to scale
|
||||||
|
|
|
@ -105,6 +105,37 @@ options:
|
||||||
required: false
|
required: false
|
||||||
default: 'ON'
|
default: 'ON'
|
||||||
type: str
|
type: str
|
||||||
|
scale_in_control:
|
||||||
|
description:
|
||||||
|
- Defines scale in controls to reduce the risk of response latency and outages
|
||||||
|
due to abrupt scale-in events .
|
||||||
|
required: false
|
||||||
|
type: dict
|
||||||
|
suboptions:
|
||||||
|
max_scaled_in_replicas:
|
||||||
|
description:
|
||||||
|
- A nested object resource.
|
||||||
|
required: false
|
||||||
|
type: dict
|
||||||
|
suboptions:
|
||||||
|
fixed:
|
||||||
|
description:
|
||||||
|
- Specifies a fixed number of VM instances. This must be a positive
|
||||||
|
integer.
|
||||||
|
required: false
|
||||||
|
type: int
|
||||||
|
percent:
|
||||||
|
description:
|
||||||
|
- Specifies a percentage of instances between 0 to 100%, inclusive.
|
||||||
|
- For example, specify 80 for 80%.
|
||||||
|
required: false
|
||||||
|
type: int
|
||||||
|
time_window_sec:
|
||||||
|
description:
|
||||||
|
- How long back autoscaling should look when computing recommendations
|
||||||
|
to include directives regarding slower scale down, as described above.
|
||||||
|
required: false
|
||||||
|
type: int
|
||||||
cpu_utilization:
|
cpu_utilization:
|
||||||
description:
|
description:
|
||||||
- Defines the CPU utilization policy that allows the autoscaler to scale based
|
- Defines the CPU utilization policy that allows the autoscaler to scale based
|
||||||
|
@ -370,6 +401,37 @@ autoscalingPolicy:
|
||||||
- Defines operating mode for this policy.
|
- Defines operating mode for this policy.
|
||||||
returned: success
|
returned: success
|
||||||
type: str
|
type: str
|
||||||
|
scaleInControl:
|
||||||
|
description:
|
||||||
|
- Defines scale in controls to reduce the risk of response latency and outages
|
||||||
|
due to abrupt scale-in events .
|
||||||
|
returned: success
|
||||||
|
type: complex
|
||||||
|
contains:
|
||||||
|
maxScaledInReplicas:
|
||||||
|
description:
|
||||||
|
- A nested object resource.
|
||||||
|
returned: success
|
||||||
|
type: complex
|
||||||
|
contains:
|
||||||
|
fixed:
|
||||||
|
description:
|
||||||
|
- Specifies a fixed number of VM instances. This must be a positive
|
||||||
|
integer.
|
||||||
|
returned: success
|
||||||
|
type: int
|
||||||
|
percent:
|
||||||
|
description:
|
||||||
|
- Specifies a percentage of instances between 0 to 100%, inclusive.
|
||||||
|
- For example, specify 80 for 80%.
|
||||||
|
returned: success
|
||||||
|
type: int
|
||||||
|
timeWindowSec:
|
||||||
|
description:
|
||||||
|
- How long back autoscaling should look when computing recommendations to
|
||||||
|
include directives regarding slower scale down, as described above.
|
||||||
|
returned: success
|
||||||
|
type: int
|
||||||
cpuUtilization:
|
cpuUtilization:
|
||||||
description:
|
description:
|
||||||
- Defines the CPU utilization policy that allows the autoscaler to scale based
|
- Defines the CPU utilization policy that allows the autoscaler to scale based
|
||||||
|
@ -480,6 +542,13 @@ def main():
|
||||||
max_num_replicas=dict(required=True, type='int'),
|
max_num_replicas=dict(required=True, type='int'),
|
||||||
cool_down_period_sec=dict(default=60, type='int'),
|
cool_down_period_sec=dict(default=60, type='int'),
|
||||||
mode=dict(default='ON', type='str'),
|
mode=dict(default='ON', type='str'),
|
||||||
|
scale_in_control=dict(
|
||||||
|
type='dict',
|
||||||
|
options=dict(
|
||||||
|
max_scaled_in_replicas=dict(type='dict', options=dict(fixed=dict(type='int'), percent=dict(type='int'))),
|
||||||
|
time_window_sec=dict(type='int'),
|
||||||
|
),
|
||||||
|
),
|
||||||
cpu_utilization=dict(type='dict', options=dict(utilization_target=dict(type='str'))),
|
cpu_utilization=dict(type='dict', options=dict(utilization_target=dict(type='str'))),
|
||||||
custom_metric_utilizations=dict(
|
custom_metric_utilizations=dict(
|
||||||
type='list',
|
type='list',
|
||||||
|
@ -672,6 +741,7 @@ class RegionAutoscalerAutoscalingpolicy(object):
|
||||||
u'maxNumReplicas': self.request.get('max_num_replicas'),
|
u'maxNumReplicas': self.request.get('max_num_replicas'),
|
||||||
u'coolDownPeriodSec': self.request.get('cool_down_period_sec'),
|
u'coolDownPeriodSec': self.request.get('cool_down_period_sec'),
|
||||||
u'mode': self.request.get('mode'),
|
u'mode': self.request.get('mode'),
|
||||||
|
u'scaleInControl': RegionAutoscalerScaleincontrol(self.request.get('scale_in_control', {}), self.module).to_request(),
|
||||||
u'cpuUtilization': RegionAutoscalerCpuutilization(self.request.get('cpu_utilization', {}), self.module).to_request(),
|
u'cpuUtilization': RegionAutoscalerCpuutilization(self.request.get('cpu_utilization', {}), self.module).to_request(),
|
||||||
u'customMetricUtilizations': RegionAutoscalerCustommetricutilizationsArray(
|
u'customMetricUtilizations': RegionAutoscalerCustommetricutilizationsArray(
|
||||||
self.request.get('custom_metric_utilizations', []), self.module
|
self.request.get('custom_metric_utilizations', []), self.module
|
||||||
|
@ -689,6 +759,7 @@ class RegionAutoscalerAutoscalingpolicy(object):
|
||||||
u'maxNumReplicas': self.request.get(u'maxNumReplicas'),
|
u'maxNumReplicas': self.request.get(u'maxNumReplicas'),
|
||||||
u'coolDownPeriodSec': self.request.get(u'coolDownPeriodSec'),
|
u'coolDownPeriodSec': self.request.get(u'coolDownPeriodSec'),
|
||||||
u'mode': self.request.get(u'mode'),
|
u'mode': self.request.get(u'mode'),
|
||||||
|
u'scaleInControl': RegionAutoscalerScaleincontrol(self.request.get(u'scaleInControl', {}), self.module).from_response(),
|
||||||
u'cpuUtilization': RegionAutoscalerCpuutilization(self.request.get(u'cpuUtilization', {}), self.module).from_response(),
|
u'cpuUtilization': RegionAutoscalerCpuutilization(self.request.get(u'cpuUtilization', {}), self.module).from_response(),
|
||||||
u'customMetricUtilizations': RegionAutoscalerCustommetricutilizationsArray(
|
u'customMetricUtilizations': RegionAutoscalerCustommetricutilizationsArray(
|
||||||
self.request.get(u'customMetricUtilizations', []), self.module
|
self.request.get(u'customMetricUtilizations', []), self.module
|
||||||
|
@ -700,6 +771,46 @@ class RegionAutoscalerAutoscalingpolicy(object):
|
||||||
)
|
)
|
||||||
|
|
||||||
|
|
||||||
|
class RegionAutoscalerScaleincontrol(object):
|
||||||
|
def __init__(self, request, module):
|
||||||
|
self.module = module
|
||||||
|
if request:
|
||||||
|
self.request = request
|
||||||
|
else:
|
||||||
|
self.request = {}
|
||||||
|
|
||||||
|
def to_request(self):
|
||||||
|
return remove_nones_from_dict(
|
||||||
|
{
|
||||||
|
u'maxScaledInReplicas': RegionAutoscalerMaxscaledinreplicas(self.request.get('max_scaled_in_replicas', {}), self.module).to_request(),
|
||||||
|
u'timeWindowSec': self.request.get('time_window_sec'),
|
||||||
|
}
|
||||||
|
)
|
||||||
|
|
||||||
|
def from_response(self):
|
||||||
|
return remove_nones_from_dict(
|
||||||
|
{
|
||||||
|
u'maxScaledInReplicas': RegionAutoscalerMaxscaledinreplicas(self.request.get(u'maxScaledInReplicas', {}), self.module).from_response(),
|
||||||
|
u'timeWindowSec': self.request.get(u'timeWindowSec'),
|
||||||
|
}
|
||||||
|
)
|
||||||
|
|
||||||
|
|
||||||
|
class RegionAutoscalerMaxscaledinreplicas(object):
|
||||||
|
def __init__(self, request, module):
|
||||||
|
self.module = module
|
||||||
|
if request:
|
||||||
|
self.request = request
|
||||||
|
else:
|
||||||
|
self.request = {}
|
||||||
|
|
||||||
|
def to_request(self):
|
||||||
|
return remove_nones_from_dict({u'fixed': self.request.get('fixed'), u'percent': self.request.get('percent')})
|
||||||
|
|
||||||
|
def from_response(self):
|
||||||
|
return remove_nones_from_dict({u'fixed': self.request.get(u'fixed'), u'percent': self.request.get(u'percent')})
|
||||||
|
|
||||||
|
|
||||||
class RegionAutoscalerCpuutilization(object):
|
class RegionAutoscalerCpuutilization(object):
|
||||||
def __init__(self, request, module):
|
def __init__(self, request, module):
|
||||||
self.module = module
|
self.module = module
|
||||||
|
|
|
@ -183,6 +183,37 @@ resources:
|
||||||
- Defines operating mode for this policy.
|
- Defines operating mode for this policy.
|
||||||
returned: success
|
returned: success
|
||||||
type: str
|
type: str
|
||||||
|
scaleInControl:
|
||||||
|
description:
|
||||||
|
- Defines scale in controls to reduce the risk of response latency and outages
|
||||||
|
due to abrupt scale-in events .
|
||||||
|
returned: success
|
||||||
|
type: complex
|
||||||
|
contains:
|
||||||
|
maxScaledInReplicas:
|
||||||
|
description:
|
||||||
|
- A nested object resource.
|
||||||
|
returned: success
|
||||||
|
type: complex
|
||||||
|
contains:
|
||||||
|
fixed:
|
||||||
|
description:
|
||||||
|
- Specifies a fixed number of VM instances. This must be a positive
|
||||||
|
integer.
|
||||||
|
returned: success
|
||||||
|
type: int
|
||||||
|
percent:
|
||||||
|
description:
|
||||||
|
- Specifies a percentage of instances between 0 to 100%, inclusive.
|
||||||
|
- For example, specify 80 for 80%.
|
||||||
|
returned: success
|
||||||
|
type: int
|
||||||
|
timeWindowSec:
|
||||||
|
description:
|
||||||
|
- How long back autoscaling should look when computing recommendations
|
||||||
|
to include directives regarding slower scale down, as described above.
|
||||||
|
returned: success
|
||||||
|
type: int
|
||||||
cpuUtilization:
|
cpuUtilization:
|
||||||
description:
|
description:
|
||||||
- Defines the CPU utilization policy that allows the autoscaler to scale
|
- Defines the CPU utilization policy that allows the autoscaler to scale
|
||||||
|
|
Loading…
Add table
Reference in a new issue