def cluster(cmd_proc, operation, cluster_name, cluster_id, node_count, vdc, network_name): """Operations with Container Service Extension""" result = cmd_proc.re_login() if not result: utils.print_error('Not logged in', cmd_proc) sys.exit(1) if vdc is None: vdc = cmd_proc.vdc_name the_vdc = cmd_proc.vca.get_vdc(vdc) if the_vdc is None: utils.print_error("VDC not found '%s'" % vdc, cmd_proc) sys.exit(1) if cmd_proc.vca.vcloud_session and \ cmd_proc.vca.vcloud_session.organization: cse = Cluster(session=cmd_proc.vca.vcloud_session, verify=cmd_proc.verify, log=cmd_proc.vca.log) if 'list' == operation: headers = ['Name', 'Id', 'Status', 'Leader IP', 'Masters', 'Nodes'] table1 = [] try: clusters = cse.get_clusters() except Exception: utils.print_error("can't get list of clusters", cmd_proc, cse) sys.exit(1) n = 1 for cluster in clusters: cluster['name'] = 'k8s-cluster-%s' % n n += 1 table1.append([ cluster['name'], cluster['cluster_id'], cluster['status'], cluster['leader_endpoint'], len(cluster['master_nodes']), len(cluster['nodes']), ]) table = sorted(table1, key=operator.itemgetter(0), reverse=False) utils.print_table( "Available clusters in VDC '%s', profile '%s':" % (vdc, cmd_proc.profile), headers, table, cmd_proc) elif 'create' == operation: utils.print_message("creating cluster '%s'" % (cluster_name)) try: r = cse.create_cluster(vdc, network_name, cluster_name, node_count) t = Task(session=cmd_proc.vca.vcloud_session, verify=cmd_proc.verify, log=cmd_proc.vca.log) task = t.get_task(r['task_id']) utils.display_progress( task, cmd_proc, cmd_proc.vca.vcloud_session.get_vcloud_headers()) except Exception: utils.print_error("can't create cluster", cmd_proc, cse) sys.exit(1) elif 'delete' == operation: utils.print_message("deleting cluster with id '%s'" % (cluster_id)) try: r = cse.delete_cluster(cluster_id) t = Task(session=cmd_proc.vca.vcloud_session, verify=cmd_proc.verify, log=cmd_proc.vca.log) task = t.get_task(r['task_id']) utils.display_progress( task, cmd_proc, cmd_proc.vca.vcloud_session.get_vcloud_headers()) except Exception: utils.print_error("can't delete cluster", cmd_proc, cse) sys.exit(1) else: utils.print_error('not implemented', cmd_proc) sys.exit(1) cmd_proc.save_current_config()
for t in tasks.get_Task(): print('%s, %s, %s, %s, %s, %s->%s' % (t.get_id().split(':')[-1], t.get_operation(), t.get_Owner().get_name(), t.get_status(), t.get_Progress(), str(t.get_startTime()).split('.')[0], str( t.get_endTime()).split('.')[0])) task_ids.append(t.get_id().split(':')[-1]) # task_ids = [] # task_ids.append('b4dca9a2-ee70-4cb8-a48d-a32d80b65c05') # task_ids.append('0333d74f-4fe6-48b4-9154-d77ae97f7870') # task_ids.append('229e39c6-ce4e-426f-95ee-e6c7d81259c7') task = Task(session=vca_system.vcloud_session, verify=verify, log=log) for task_id in task_ids: t = task.get_task(task_id) if t is None: print('task %s not found' % task_id) else: namespace = t.get_serviceNamespace() operation_name = t.get_operationName() operation_description = t.get_operation() org_id = vca_tenant.vcloud_session.organization.get_id().split(':')[-1] org_name = vca_tenant.vcloud_session.organization.get_name() print('%s, %s, %s, %s, %s, %s->%s' % (t.get_id().split(':')[-1], t.get_operation(), t.get_Owner().get_name(), t.get_status(), t.get_Progress(), str(t.get_startTime()).split('.')[0], str( t.get_endTime()).split('.')[0])) if t.get_status() == 'running':