Added k8s stuffs
This commit is contained in:
parent
ee28ef4637
commit
8f6328eb98
@ -1,6 +1,39 @@
|
|||||||
#!/usr/bin/env python3
|
#!/usr/bin/env python3
|
||||||
import kubernetes
|
import logging
|
||||||
|
import time
|
||||||
|
|
||||||
|
from kubernetes import config, client
|
||||||
|
from kubernetes.client.rest import ApiException
|
||||||
|
|
||||||
|
config.load_incluster_config()
|
||||||
|
|
||||||
|
|
||||||
def ensure_running_pod_on_site(site: str):
|
def ensure_running_pod_on_site(site: str):
|
||||||
pass
|
# Configs can be set in Configuration class directly or using helper utility
|
||||||
|
logger = logging.getLogger("k8s")
|
||||||
|
|
||||||
|
with client.ApiClient() as api_client:
|
||||||
|
# Create an instance of the API class
|
||||||
|
api_instance = client.CustomObjectsApi(api_client)
|
||||||
|
group = 'types.kubefed.io' # str | the custom resource's group
|
||||||
|
version = 'v1beta1' # str | the custom resource's version
|
||||||
|
namespace = 'birbnetes' # str | The custom resource's namespace
|
||||||
|
plural = 'federateddeployments' # str | the custom resource's plural name. For TPRs this would be lowercase plural kind.
|
||||||
|
name = f'svm-prefilter-service-{site}' # str | the custom object's name
|
||||||
|
|
||||||
|
try:
|
||||||
|
api_response = api_instance.get_namespaced_custom_object(group, version, namespace, plural, name)
|
||||||
|
except ApiException as e:
|
||||||
|
logger.error("Exception when calling CustomObjectsApi->get_namespaced_custom_object: %s\n" % e)
|
||||||
|
raise
|
||||||
|
|
||||||
|
if api_response['spec']['template']['spec']['replicas'] != 0:
|
||||||
|
logging.debug("It seems like that this site have working replicas")
|
||||||
|
return
|
||||||
|
|
||||||
|
api_response['spec']['template']['spec']['replicas'] = 1
|
||||||
|
|
||||||
|
api_instance.patch_namespaced_custom_object(group, version, namespace, plural, name, api_response)
|
||||||
|
|
||||||
|
# TODO: Wait for pod to start up
|
||||||
|
time.sleep(7) # close enough
|
||||||
|
Loading…
Reference in New Issue
Block a user