def scale_down(k8s_host, **kwargs):
"""
Scale down number of replicas to 0
"""
pass_headers = {}
if 'k8s_api_headers' in kwargs:
headers = kwargs.pop('k8s_api_headers')
pass_headers.update(headers)
pass_headers.update({
'Content-Type': 'application/strategic-merge-patch+json'
})
payload = {
'spec': {
'replicas': 0
}
}
api_path = K8S_API['deployments']
namespace = kwargs['namespace']
specs = kwargs['objects']['deployments']['specification']
if specs['kind'] == 'List':
deployments = specs['items']
else:
deployments = [specs]
for deployment in deployments:
deployment_name = deployment['metadata']['name']
url = '{}/{}/namespaces/{}/deployments/{}'.format(
k8s_host, api_path,
namespace,
deployment_name
)
req('PATCH', url, pass_headers, payload)
评论列表
文章目录