public IActionResult Index() { string userName = this.User.FindFirstValue(ClaimTypes.NameIdentifier); var k8SClientConfig = KubernetesClientConfiguration.BuildDefaultConfig(); var client = new Kubernetes(k8SClientConfig); var TemplateId = HttpContext.Session.GetInt32("TemplateId"); var labName = _context.Template.Find(TemplateId).Lab; var list = client.ListNamespacedDeployment(userName, null, null, null, "lab = " + labName); var slist = client.ListNamespacedService(userName, null, null, null, "lab = " + labName); var ilist = client.ListNamespacedIngress1(userName, null, null, null, "lab = " + labName); var nlist = client.ListNamespacedNetworkPolicy(userName, null, null, null, "lab = " + labName); foreach (var item in list.Items) { client.DeleteNamespacedDeployment(item.Metadata.Name, userName); } foreach (var item in slist.Items) { client.DeleteNamespacedService(item.Metadata.Name, userName); } foreach (var item in ilist.Items) { client.DeleteNamespacedIngress1(item.Metadata.Name, userName); } foreach (var item in nlist.Items) { client.DeleteNamespacedNetworkPolicy(item.Metadata.Name, userName); } return(View()); }
public virtual IActionResult ServersDelete(string servername) { try { var config = KubernetesClientConfiguration.BuildConfigFromConfigFile(); IKubernetes client = new Kubernetes(config); var v1Status = client.DeleteNamespacedDeployment(body: new V1DeleteOptions(apiVersion: "apps/v1"), name: servername, namespaceParameter: "default"); return(new ObjectResult(v1Status)); } catch (Exception ex) { return(new ObjectResult(ex)); } }
public static void DeleteCompute([ActivityTrigger] Compute compute, ExecutionContext context, ILogger log) { log.LogInformation($"Deleting compute {compute.Key}"); var name = compute.Key; var homeDirectory = context.FunctionAppDirectory; var config = KubernetesClientConfiguration.BuildConfigFromConfigFile(Path.Combine(homeDirectory, "kubeconfig.json")); var client = new Kubernetes(config); ///TODO: Exception condition handling var deleteStatus = client.DeleteNamespacedDeployment(name, "default"); deleteStatus = client.DeleteNamespacedService(name, "default"); }