Compare commits
1 Commits
rc-5.2.5
...
rc-5.2.5.1
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
9222fdd866 |
@@ -80,13 +80,13 @@ class decort_k8s(DecortController):
|
||||
self.result['failed'] = True
|
||||
self.result['changed'] = False
|
||||
self.result['msg'] = "At least one worker group must be present"
|
||||
self.fail_json(**self.result)
|
||||
self.amodule.fail_json(**self.result)
|
||||
|
||||
if arg_amodule.params['name'] == "" and arg_amodule.params['id'] == 0:
|
||||
self.result['failed'] = True
|
||||
self.result['changed'] = False
|
||||
self.result['msg'] = "Cannot manage k8s cluster when its ID is 0 and name is empty."
|
||||
self.fail_json(**self.result)
|
||||
self.amodule.fail_json(**self.result)
|
||||
|
||||
|
||||
if not arg_amodule.params['id']:
|
||||
@@ -99,17 +99,17 @@ class decort_k8s(DecortController):
|
||||
self.result['msg'] = ("Current user does not have access to the account ID {} / "
|
||||
"name '{}' or non-existent account specified.").format(arg_amodule.params['account_id'],
|
||||
arg_amodule.params['account_name'])
|
||||
self.fail_json(**self.result)
|
||||
self.amodule.fail_json(**self.result)
|
||||
# fail the module -> exit
|
||||
# now validate RG
|
||||
validated_rg_id, validated_rg_facts = self.rg_find(validated_acc_id,
|
||||
arg_amodule.params['rg_id'],)
|
||||
arg_amodule.params['rg_id'],)
|
||||
if not validated_rg_id:
|
||||
self.result['failed'] = True
|
||||
self.result['changed'] = False
|
||||
self.result['msg'] = "Cannot find RG ID {} / name '{}'.".format(arg_amodule.params['rg_id'],
|
||||
arg_amodule.params['rg_name'])
|
||||
self.fail_json(**self.result)
|
||||
self.amodule.fail_json(**self.result)
|
||||
# fail the module - exit
|
||||
|
||||
|
||||
@@ -120,7 +120,7 @@ class decort_k8s(DecortController):
|
||||
self.result['failed'] = True
|
||||
self.result['changed'] = False
|
||||
self.result['msg'] = "Cannot find K8CI ID {}.".format(arg_amodule.params['k8ci_id'])
|
||||
self.fail_json(**self.result)
|
||||
self.amodule.fail_json(**self.result)
|
||||
|
||||
self.rg_id = validated_rg_id
|
||||
arg_amodule.params['rg_id'] = validated_rg_id
|
||||
@@ -203,7 +203,7 @@ class decort_k8s(DecortController):
|
||||
return
|
||||
|
||||
def create(self):
|
||||
self.k8s_provision(self.amodule.params['name'],
|
||||
k8s_id = self.k8s_provision(self.amodule.params['name'],
|
||||
self.amodule.params['k8ci_id'],
|
||||
self.amodule.params['rg_id'],
|
||||
self.amodule.params['network_plugin'],
|
||||
@@ -211,12 +211,18 @@ class decort_k8s(DecortController):
|
||||
self.amodule.params['master_cpu'],
|
||||
self.amodule.params['master_ram'],
|
||||
self.amodule.params['master_disk'],
|
||||
self.amodule.params['master_sepid'],
|
||||
self.amodule.params['master_pool'],
|
||||
self.amodule.params['workers'][0],
|
||||
self.amodule.params['extnet_id'],
|
||||
self.amodule.params['with_lb'],
|
||||
self.amodule.params['description'],)
|
||||
|
||||
self.k8s_id,self.k8s_info = self.k8s_find(k8s_id=self.amodule.params['id'],
|
||||
if not k8s_id:
|
||||
self.result['failed'] = True
|
||||
self.amodule.fail_json(**self.result)
|
||||
|
||||
self.k8s_id,self.k8s_info = self.k8s_find(k8s_id=k8s_id,
|
||||
k8s_name=self.amodule.params['name'],
|
||||
rg_id=self.rg_id,
|
||||
check_state=False)
|
||||
@@ -284,7 +290,7 @@ class decort_k8s(DecortController):
|
||||
user=dict(type='str',
|
||||
required=False,
|
||||
fallback=(env_fallback, ['DECORT_USER'])),
|
||||
name=dict(type='str', required=True),
|
||||
name=dict(type='str', required=False, default=""),
|
||||
id=dict(type='int', required=False, default=0),
|
||||
getConfig=dict(type='bool',required=False, default=False),
|
||||
rg_id=dict(type='int', default=0),
|
||||
@@ -296,6 +302,8 @@ class decort_k8s(DecortController):
|
||||
master_cpu=dict(type='int', default=2),
|
||||
master_ram=dict(type='int', default=2048),
|
||||
master_disk=dict(type='int', default=10),
|
||||
master_sepid=dict(type='int', required=False, default=None),
|
||||
master_pool=dict(type='str', required=False, default=None),
|
||||
worker_count=dict(type='int', default=1),
|
||||
worker_cpu=dict(type='int', default=1),
|
||||
worker_ram_mb=dict(type='int', default=1024),
|
||||
|
||||
@@ -1367,7 +1367,7 @@ class DecortController(object):
|
||||
api_resp = self.decort_api_call(requests.post, "/restmachine/cloudapi/image/list", api_params)
|
||||
# On success the above call will return here. On error it will abort execution by calling fail_json.
|
||||
images_list = json.loads(api_resp.content.decode('utf8'))
|
||||
for image_record in images_list:
|
||||
for image_record in images_list['data']:
|
||||
if image_record['name'] == image_name and image_record['status'] == "CREATED":
|
||||
if sepid == 0 and pool == "":
|
||||
# if no filtering by SEP ID or pool name is requested, return the first match
|
||||
@@ -3414,10 +3414,18 @@ class DecortController(object):
|
||||
return
|
||||
|
||||
def k8s_provision(self, k8s_name,
|
||||
k8ci_id,rg_id,plugin,master_count,
|
||||
master_cpu, master_ram,
|
||||
master_disk, default_worker, extnet_id,
|
||||
with_lb, annotation, ):
|
||||
k8ci_id,rg_id,
|
||||
plugin,
|
||||
master_count,
|
||||
master_cpu,
|
||||
master_ram,
|
||||
master_disk,
|
||||
master_sepid,
|
||||
master_pool,
|
||||
default_worker,
|
||||
extnet_id,
|
||||
with_lb,
|
||||
annotation, ):
|
||||
|
||||
self.result['waypoints'] = "{} -> {}".format(self.result['waypoints'], "k8s_provision")
|
||||
|
||||
@@ -3431,6 +3439,8 @@ class DecortController(object):
|
||||
def_wg_cpu = default_worker['cpu']
|
||||
def_wg_ram = default_worker['ram']
|
||||
def_wg_disk = default_worker['disk']
|
||||
def_wg_sepid = default_worker['sep_id']
|
||||
def_wg_pool = default_worker['pool']
|
||||
def_wg_lab = default_worker['labels'] if "labels" in default_worker else None
|
||||
def_wg_taints = default_worker['taints'] if "taints" in default_worker else None
|
||||
def_wg_ann = default_worker['annotations'] if "annotations" in default_worker else None
|
||||
@@ -3445,10 +3455,14 @@ class DecortController(object):
|
||||
masterCpu=master_cpu,
|
||||
masterRam=master_ram,
|
||||
masterDisk=master_disk,
|
||||
masterSepId=master_sepid,
|
||||
masterSepPool=master_pool,
|
||||
workerNum=def_wg_count,
|
||||
workerCpu=def_wg_cpu,
|
||||
workerRam=def_wg_ram,
|
||||
workerDisk=def_wg_disk,
|
||||
workerSepId=def_wg_sepid,
|
||||
workerSepPool=def_wg_pool,
|
||||
labels=def_wg_lab,
|
||||
taints=def_wg_taints,
|
||||
annotations=def_wg_ann,
|
||||
@@ -3472,8 +3486,8 @@ class DecortController(object):
|
||||
self.result['failed'] = False
|
||||
time.sleep(30)
|
||||
elif ret_info['status'] == "ERROR":
|
||||
self.result['msg'] = ("k8s_provision(): Can't create cluster")
|
||||
self.result['failed'] = True
|
||||
self.result['msg'] = f"k8s_provision(): {ret_info['error']}"
|
||||
self.result['changed'] = False
|
||||
return
|
||||
elif ret_info['status'] == "OK":
|
||||
k8s_id = ret_info['result']
|
||||
@@ -3493,7 +3507,6 @@ class DecortController(object):
|
||||
self.result['failed'] = True
|
||||
|
||||
self.result['changed'] = False
|
||||
self.fail_json(**self.result)
|
||||
return
|
||||
|
||||
def k8s_workers_modify(self,arg_k8swg,arg_modwg):
|
||||
@@ -3546,6 +3559,8 @@ class DecortController(object):
|
||||
workerCpu=wg['cpu'],
|
||||
workerRam=wg['ram'],
|
||||
workerDisk=wg['disk'],
|
||||
workerSepId=wg['sep_id'] if "sep_id" in wg else None,
|
||||
workerSepPool=wg['pool'] if "pool" in wg else None,
|
||||
labels=wg['labels'] if "labels" in wg else None,
|
||||
taints=wg['taints'] if "taints" in wg else None,
|
||||
annotations=wg['annotations'] if "annotations" in wg else None,
|
||||
|
||||
Reference in New Issue
Block a user