Ejemplo n.º 1
0
def k8s_scale_pod(pod_name,
                  number_of_replicas,
                  rest_prefix="apis",
                  api_version="extensions/v1beta1"):
    """PUT /apis/extensions/v1beta1/namespaces/{namespace}/deployments/{name}/scale"""
    body = {
        "metadata": {
            "name": pod_name,
            "namespace": DEFAULT_NAMESPACE
        },
        "spec": {
            "replicas": number_of_replicas
        }
    }

    client = HttpClientFactory.get(
        KubernetesConfigurationProvider.get(rest_prefix, api_version))
    return client.request(
        method=HttpMethod.PUT,
        body=body,
        path="namespaces/{DEFAULT_NAMESPACE}/deployments/{pod_name}/scale",
        path_params={
            'DEFAULT_NAMESPACE': DEFAULT_NAMESPACE,
            'pod_name': pod_name
        },
        msg="POD {} scaled to {} replicas".format(pod_name,
                                                  number_of_replicas))
Ejemplo n.º 2
0
def k8s_get_services(*, namespace=DEFAULT_NAMESPACE):
    """GET /namespaces/{namespace}/services"""
    return HttpClientFactory.get(
        KubernetesConfigurationProvider.get()).request(
            method=HttpMethod.GET,
            path="namespaces/{namespace}/services",
            path_params={'namespace': namespace},
            msg="KUBERNETES: get services")
Ejemplo n.º 3
0
def k8s_get_pods():
    """GET /namespaces/{namespace}/pods"""
    return HttpClientFactory.get(
        KubernetesConfigurationProvider.get()).request(
            method=HttpMethod.GET,
            path="namespaces/{DEFAULT_NAMESPACE}/pods",
            path_params={'DEFAULT_NAMESPACE': DEFAULT_NAMESPACE},
            msg="KUBERNETES: get pods")
Ejemplo n.º 4
0
def k8s_get_ingresses(rest_prefix="apis", api_version="extensions/v1beta1"):
    """PUT /apis/extensions/v1beta1/namespaces/{namespace}/ingresses"""
    client = HttpClientFactory.get(
        KubernetesConfigurationProvider.get(rest_prefix, api_version))
    return client.request(method=HttpMethod.GET,
                          path="namespaces/{DEFAULT_NAMESPACE}/ingresses",
                          path_params={'DEFAULT_NAMESPACE': DEFAULT_NAMESPACE},
                          msg="KUBERNETES: get ingresses")
Ejemplo n.º 5
0
def k8s_get_configmap(configmap_name):
    """GET /namespaces/{namespace}/configmaps/{configmap_name}"""
    return HttpClientFactory.get(
        KubernetesConfigurationProvider.get()).request(
            method=HttpMethod.GET,
            path="namespaces/{DEFAULT_NAMESPACE}/configmaps/{configmap_name}",
            path_params={
                'DEFAULT_NAMESPACE': DEFAULT_NAMESPACE,
                'configmap_name': configmap_name
            },
            msg="KUBERNETES: get configmap {}".format(configmap_name))
Ejemplo n.º 6
0
def k8s_logs(application_name, params):
    """GET /namespaces/{namespace}/pods/{application_name}/log"""
    return HttpClientFactory.get(
        KubernetesConfigurationProvider.get()).request(
            method=HttpMethod.GET,
            path="namespaces/{DEFAULT_NAMESPACE}/pods/{application_name}/log",
            path_params={
                'DEFAULT_NAMESPACE': DEFAULT_NAMESPACE,
                'application_name': application_name
            },
            params=params,
            msg="KUBERNETES: get logs {}".format(application_name))
 def test_get_certificate(self):
     test_kube_dir_path = "/test/path"
     test_cert = KubernetesConfigurationProvider._get_certificates(test_kube_dir_path, self.EXAMPLE_CUBE_CONFIG_PATH)
     assert test_cert[0] == os.path.join(test_kube_dir_path, self.TEST_CERT_FILE_NAME)
     assert test_cert[1] == os.path.join(test_kube_dir_path, self.TEST_KEY_FILE_NAME)
 def test_get_api_version(self):
     test_api_version = KubernetesConfigurationProvider._get_api_version(self.EXAMPLE_CUBE_CONFIG_PATH)
     assert test_api_version == self.TEST_API_VERSION
 def test_get_url(self):
     test_url = KubernetesConfigurationProvider._get_url(self.EXAMPLE_CUBE_CONFIG_PATH)
     assert test_url == self.TEST_URL
Ejemplo n.º 10
0
def k8s_get_nodes():
    """GET /nodes"""
    return HttpClientFactory.get(
        KubernetesConfigurationProvider.get()).request(
            method=HttpMethod.GET, path="nodes", msg="KUBERNETES: get nodes")