k8s-deployer.py 文件源码

python
阅读 19 收藏 0 点赞 0 评论 0

项目:k8s-deployer 作者: psyhomb 项目源码 文件源码
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)
评论列表
文章目录


问题


面经


文章

微信
公众号

扫码关注公众号