public boolean exists(String manifest) { Map<String, Object> parsedManifest = KubernetesV2Utils.parseManifest(manifest); String kind = (String) parsedManifest.get("kind"); Map<String, Object> metadata = (Map<String, Object>) parsedManifest.getOrDefault("metadata", new HashMap<>()); String name = (String) metadata.get("name"); String namespace = (String) metadata.get("namespace"); return exists(namespace, kind, name); }
KubernetesV2Executor executor = new KubernetesV2Executor(DaemonTaskHandler.getJobExecutor(), account); String namespaceDefinition = service.getNamespaceYaml(resolvedConfiguration); String serviceDefinition = service.getServiceYaml(resolvedConfiguration); if (!executor.exists(namespaceDefinition)) { executor.apply(namespaceDefinition); if (!executor.exists(serviceDefinition)) { executor.apply(serviceDefinition); if (((SpinnakerService) service).getType().equals(Type.REDIS) && executor.exists(resourceDefinition)) { executor.apply(resourceDefinition); while (!executor.isReady(service.getNamespace(settings), service.getServiceName())) { DaemonTaskHandler.safeSleep(TimeUnit.SECONDS.toMillis(5));
@Override public RemoteAction clean(AccountDeploymentDetails<KubernetesAccount> details, SpinnakerRuntimeSettings runtimeSettings) { DaemonTaskHandler.newStage("Invoking kubectl"); DaemonTaskHandler.message("Deleting all 'svc,deploy,secret' resources with label 'app=spin'..."); KubernetesSharedServiceSettings kubernetesSharedServiceSettings = new KubernetesSharedServiceSettings(details.getDeploymentConfiguration()); new KubernetesV2Executor(DaemonTaskHandler.getJobExecutor(), details.getAccount()).deleteSpinnaker(kubernetesSharedServiceSettings.getDeployLocation()); return new RemoteAction(); }
KubernetesV2Executor executor = new KubernetesV2Executor(DaemonTaskHandler.getJobExecutor(), account); executor.delete(service.getNamespace(settings), service.getServiceName()); });