def rio_chk_ip(nspc, sname, arraynum): fullName = (f"{nspc}/{sname}:v0") print(fullName) hostname = (f"spec.hostAliases[{arraynum}].ip") inspect = util.rioInspect(fullName, hostname) return inspect
def riotest(): domainId = "rio domain --format '{{.ID}}'" domainId = util.run(domainId) inspect = util.rioInspect(domainId) return inspect['domainName']
def test_rio_scale(service): fullName = (f"{service}:v0") scalefield = "spec.scale" print(f"{fullName}") inspect = util.rioInspect(fullName, scalefield) assert inspect == '1'
def rio_chk(stack, sname): print(sname) fullName = (f"{stack}/{sname}") inspect = util.rioInspect(fullName) return inspect['imagePullPolicy']
def kube_chk(stack, sname): fullName = (f"{stack}/{sname}") id = util.rioInspect(fullName, "id") namespace = id.split(":")[0] obj = util.kubectl(namespace, "deployment", sname) return obj['spec']['template']['spec']['containers'][0]['command']
def kube_chk(stack, sname): fullName = (f"{stack}/{sname}") id = util.rioInspect(fullName, "id") namespace = id.split(":")[0] obj = util.kubectl(namespace, "deployment", sname) return obj['spec']['template']['spec']['dnsConfig']['searches']
def rio_bound(stack, vname): fullVolName = (f"{stack}/{vname}") state = 'bound' util.wait_for_state(fullVolName, state) inspect = util.rioInspect(fullVolName) return inspect['state']
def kube_chk(stack, sname): fullName = (f"{stack}/{sname}") id = util.rioInspect(fullName, "id") namespace = id.split(":")[0] obj = util.kubectl(namespace, "deployment", sname) container = obj['spec']['replicas'] return container
def kube_chk(stack, sname): fullName = (f"{stack}/{sname}") id = util.rioInspect(fullName, "id") namespace = id.split(":")[0] obj = util.kubectl(namespace, "deployment", sname) container = obj['spec']['template']['spec']['containers'][0] return container['resources']['requests']['memory']
def kube_return_scale(stack, service): fullName = "%s/%s" % (stack, service) id = util.rioInspect(fullName, "id") namespace = id.split(":")[0] obj = util.kubectl(namespace, "deployment", service) replicas = obj['status']['replicas'] return replicas
def kubetest(vname): id = util.rioInspect(vname, "id") nspace = id.split(":")[0] obj = util.kubectl(nspace, "pvc", vname) volsize = obj['spec']['resources']['requests']['storage'] return volsize
def kube_capadd_chk(stack, service_name, *capabilities): fullName = "%s/%s" % (stack, service_name) id = util.rioInspect(fullName, "id") namespace = id.split(":")[0] obj = util.kubectl(namespace, "deployment", service_name) container = obj['spec']['template']['spec']['containers'][0] return container['securityContext']['capabilities']['add']
def kubetest(stack, service): fullName = "%s/%s" % (stack, service) id = util.rioInspect(fullName, "id") namespace = id.split(":")[0] obj = util.kubectl(namespace, "deployment", service) results = obj['spec']['template']['spec']['hostNetwork'] return results
def kube_vol_name(stack, sname): fullName = (f"{stack}/{sname}") id = util.rioInspect(fullName, "id") namespace = id.split(":")[0] obj = util.kubectl(namespace, "deployment", sname) obj = obj['spec']['template']['spec']['containers'][0] return obj['volumeMounts'][0]['name']
def kubetest(stack, service): fullName = "%s/%s" % (stack, service) id = util.rioInspect(fullName, "id") namespace = id.split(":")[0] obj = util.kubectl(namespace, "deployment", service) container = obj['spec']['template']['spec']['containers'][0] results = container['securityContext']['privileged'] return results
def kube_chk_tty(stack, service): fullName = "%s/%s" % (stack, service) id = util.rioInspect(fullName, "id") namespace = id.split(":")[0] obj = util.kubectl(namespace, "deployment", service) cnt = obj['spec']['template']['spec']['containers'][0] results = cnt['tty'] return results
def kube_chk(stack, sname, mdata): print(sname) fullName = (f"{stack}/{sname}") id = util.rioInspect(fullName, "id") namespace = id.split(":")[0] obj = util.kubectl(namespace, "deployment", sname) container = obj['spec']['template']['metadata']['annotations'][f"{mdata}"] return container
def kubecmd(stack, service): fullName = "%s/%s" % (stack, service) id = util.rioInspect(fullName, "id") namespace = id.split(":")[0] obj = util.kubectl(namespace, "deployment", service) cnt = obj['spec']['template']['spec']['containers'][0]['livenessProbe'] results = cnt['exec']['command'] return results
def kubesperiod(stack, service): fullName = "%s/%s" % (stack, service) id = util.rioInspect(fullName, "id") namespace = id.split(":")[0] obj = util.kubectl(namespace, "deployment", service) cnt = obj['spec']['template']['spec']['containers'][0]['readinessProbe'] results = cnt['initialDelaySeconds'] return results
def kuberetries(stack, service): fullName = "%s/%s" % (stack, service) id = util.rioInspect(fullName, "id") namespace = id.split(":")[0] obj = util.kubectl(namespace, "deployment", service) cnt = obj['spec']['template']['spec']['containers'][0]['readinessProbe'] results = cnt['successThreshold'] return results
def kube_chk_updateStrategy(stack, service): fullName = "%s/%s" % (stack, service) id = util.rioInspect(fullName, "id") namespace = id.split(":")[0] obj = util.kubectl(namespace, "deployment", service) cnt = obj['spec']['strategy'] results = cnt['type'] return results
def kubeurl(stack, service): fullName = "%s/%s" % (stack, service) id = util.rioInspect(fullName, "id") namespace = id.split(":")[0] obj = util.kubectl(namespace, "deployment", service) cnt = obj['spec']['template']['spec']['containers'][0]['readinessProbe'] results = cnt['httpGet']['httpHeaders'][0]['value'] return results
def kubetest(stack, sname): fullName = (f"{stack}/{sname}") id = util.rioInspect(fullName, "id") namespace = id.split(":")[0] obj = util.kubectl(namespace, "deployment", sname) replicas = obj['metadata']['name'] return replicas
def kube_chk_maxUnavailable(stack, service): fullName = "%s/%s" % (stack, service) id = util.rioInspect(fullName, "id") namespace = id.split(":")[0] obj = util.kubectl(namespace, "deployment", service) cnt = obj['spec']['strategy']['rollingUpdate'] results = cnt['maxUnavailable'] return results
def test_rio_externalservice2(nspc): extsvcName = "extsvc2" dnsrec = "my.domain.com" create_external_service(nspc, extsvcName, dnsrec) fullName = (f"{nspc}/{extsvcName}") result = util.rioInspect(fullName, "spec.fqdn") assert result == dnsrec
def kubetest(stack, vname): fullVolName = (f"{stack}/{vname}") id = util.rioInspect(fullVolName, "id") namespace = id.split(":")[0] print(namespace) obj = util.kubectl(namespace, "pvc", vname) volsize = obj['spec']['resources']['requests']['storage'] return volsize
def kube_return_target(stack, sname): fullName = (f"{stack}/{sname}") id = util.rioInspect(fullName, "id") namespace = id.split(":")[0] obj = util.kubectl(namespace, "deployment", sname) container = obj['spec']['template']['spec']['containers'][0] results = container['ports'][0]['containerPort'] return results
def kuberoletest(stack, sname): fullName = (f"{stack}/{sname}") id = util.rioInspect(fullName, "id") namespace = id.split(":")[0] cmd = (f'rio kubectl get -n {namespace} -o=json role') obj = util.runToJson(cmd) replicas = obj['items'][0]['rules'][0]['verbs'] return replicas
def kuberoletest(stack, sname): fullName = (f"{stack}/{sname}") id = util.rioInspect(fullName, "id") realname = sname + "-" + id.split(":")[0].split("-")[1] cmd = (f'rio kubectl get -n rio-cloud -o=json role {realname}') obj = util.runToJson(cmd) replicas = obj['rules'][0]['verbs'] return replicas
def rio_chk_target(stack, sname): fullName = (f"{stack}/{sname}") inspect = util.rioInspect(fullName) out = [] for item in inspect["secrets"]: out.append(item["target"]) out.sort() return out