From d15096c19c7f380a87acf471435c9a8eadc2208a Mon Sep 17 00:00:00 2001 From: Dmitriy Kononov Date: Mon, 24 Sep 2018 10:57:07 +0600 Subject: [PATCH 1/3] updating kubernetes-client version --- pom.xml | 2 +- src/main/java/org/microbean/helm/TillerInstaller.java | 6 +++--- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/pom.xml b/pom.xml index 048dd04b..656610ab 100644 --- a/pom.xml +++ b/pom.xml @@ -92,7 +92,7 @@ io.fabric8 kubernetes-client - 3.1.8 + 4.0.4 jar diff --git a/src/main/java/org/microbean/helm/TillerInstaller.java b/src/main/java/org/microbean/helm/TillerInstaller.java index 767d3318..50ddac0b 100644 --- a/src/main/java/org/microbean/helm/TillerInstaller.java +++ b/src/main/java/org/microbean/helm/TillerInstaller.java @@ -65,9 +65,9 @@ import io.fabric8.kubernetes.api.model.Volume; import io.fabric8.kubernetes.api.model.VolumeMount; -import io.fabric8.kubernetes.api.model.extensions.Deployment; -import io.fabric8.kubernetes.api.model.extensions.DeploymentSpec; -import io.fabric8.kubernetes.api.model.extensions.DoneableDeployment; +import io.fabric8.kubernetes.api.model.apps.Deployment; +import io.fabric8.kubernetes.api.model.apps.DeploymentSpec; +import io.fabric8.kubernetes.api.model.apps.DoneableDeployment; import io.grpc.health.v1.HealthCheckRequest; import io.grpc.health.v1.HealthCheckResponse.ServingStatus; From 68ef79be827478f5ca8193322dcdb331e88eac7b Mon Sep 17 00:00:00 2001 From: Dmitriy Kononov Date: Mon, 24 Sep 2018 13:16:19 +0600 Subject: [PATCH 2/3] fixing TillerInstaller --- .../org/microbean/helm/TillerInstaller.java | 29 +++++-------------- 1 file changed, 7 insertions(+), 22 deletions(-) diff --git a/src/main/java/org/microbean/helm/TillerInstaller.java b/src/main/java/org/microbean/helm/TillerInstaller.java index 50ddac0b..3defe5a6 100644 --- a/src/main/java/org/microbean/helm/TillerInstaller.java +++ b/src/main/java/org/microbean/helm/TillerInstaller.java @@ -38,6 +38,7 @@ import com.github.zafarkhaja.semver.Version; +import io.fabric8.kubernetes.api.model.*; import io.fabric8.kubernetes.client.DefaultKubernetesClient; import io.fabric8.kubernetes.client.HttpClientAware; import io.fabric8.kubernetes.client.KubernetesClient; @@ -46,25 +47,6 @@ import io.fabric8.kubernetes.client.dsl.Listable; import io.fabric8.kubernetes.client.dsl.Resource; -import io.fabric8.kubernetes.api.model.Container; -import io.fabric8.kubernetes.api.model.ContainerPort; -import io.fabric8.kubernetes.api.model.EnvVar; -import io.fabric8.kubernetes.api.model.HTTPGetAction; -import io.fabric8.kubernetes.api.model.IntOrString; -import io.fabric8.kubernetes.api.model.ObjectMeta; -import io.fabric8.kubernetes.api.model.PodList; -import io.fabric8.kubernetes.api.model.PodSpec; -import io.fabric8.kubernetes.api.model.PodTemplateSpec; -import io.fabric8.kubernetes.api.model.Probe; -import io.fabric8.kubernetes.api.model.Secret; -import io.fabric8.kubernetes.api.model.SecretVolumeSource; -import io.fabric8.kubernetes.api.model.Service; -import io.fabric8.kubernetes.api.model.ServicePort; -import io.fabric8.kubernetes.api.model.ServiceSpec; -import io.fabric8.kubernetes.api.model.Status; -import io.fabric8.kubernetes.api.model.Volume; -import io.fabric8.kubernetes.api.model.VolumeMount; - import io.fabric8.kubernetes.api.model.apps.Deployment; import io.fabric8.kubernetes.api.model.apps.DeploymentSpec; import io.fabric8.kubernetes.api.model.apps.DoneableDeployment; @@ -578,7 +560,7 @@ public void install(String namespace, tls, verifyTls); - this.kubernetesClient.extensions().deployments().inNamespace(namespace).create(deployment); + this.kubernetesClient.apps().deployments().inNamespace(namespace).create(deployment); final Service service = this.createService(namespace, normalizeServiceName(serviceName), labels); this.kubernetesClient.services().inNamespace(namespace).create(service); @@ -627,7 +609,7 @@ public void upgrade(String namespace, namespace = normalizeNamespace(namespace); serviceName = normalizeServiceName(serviceName); - final Resource resource = this.kubernetesClient.extensions() + final Resource resource = this.kubernetesClient.apps() .deployments() .inNamespace(namespace) .withName(normalizeDeploymentName(deploymentName)); @@ -836,7 +818,10 @@ protected DeploymentSpec createDeploymentSpec(final Map labels, podSpec.setVolumes(Arrays.asList(volume)); } podTemplateSpec.setSpec(podSpec); - deploymentSpec.setTemplate(podTemplateSpec); + deploymentSpec.setTemplate(podTemplateSpec); + LabelSelector selector = new LabelSelector(); + selector.setMatchLabels(labels); + deploymentSpec.setSelector(selector); return deploymentSpec; } From bb3e996394eeb067827e1d4a870c5a0d48c94e45 Mon Sep 17 00:00:00 2001 From: Dmitriy Kononov Date: Mon, 24 Sep 2018 14:25:36 +0600 Subject: [PATCH 3/3] adding import for each api model --- .../org/microbean/helm/TillerInstaller.java | 27 +++++++++++++++---- 1 file changed, 22 insertions(+), 5 deletions(-) diff --git a/src/main/java/org/microbean/helm/TillerInstaller.java b/src/main/java/org/microbean/helm/TillerInstaller.java index 3defe5a6..886788c7 100644 --- a/src/main/java/org/microbean/helm/TillerInstaller.java +++ b/src/main/java/org/microbean/helm/TillerInstaller.java @@ -37,8 +37,29 @@ import java.util.regex.Pattern; import com.github.zafarkhaja.semver.Version; +import io.fabric8.kubernetes.api.model.Container; +import io.fabric8.kubernetes.api.model.ContainerPort; +import io.fabric8.kubernetes.api.model.EnvVar; +import io.fabric8.kubernetes.api.model.HTTPGetAction; +import io.fabric8.kubernetes.api.model.IntOrString; +import io.fabric8.kubernetes.api.model.ObjectMeta; +import io.fabric8.kubernetes.api.model.PodList; +import io.fabric8.kubernetes.api.model.PodSpec; +import io.fabric8.kubernetes.api.model.PodTemplateSpec; +import io.fabric8.kubernetes.api.model.Probe; +import io.fabric8.kubernetes.api.model.Secret; +import io.fabric8.kubernetes.api.model.SecretVolumeSource; +import io.fabric8.kubernetes.api.model.Service; +import io.fabric8.kubernetes.api.model.ServicePort; +import io.fabric8.kubernetes.api.model.ServiceSpec; +import io.fabric8.kubernetes.api.model.Status; +import io.fabric8.kubernetes.api.model.Volume; +import io.fabric8.kubernetes.api.model.VolumeMount; +import io.fabric8.kubernetes.api.model.LabelSelector; +import io.fabric8.kubernetes.api.model.apps.Deployment; +import io.fabric8.kubernetes.api.model.apps.DeploymentSpec; +import io.fabric8.kubernetes.api.model.apps.DoneableDeployment; -import io.fabric8.kubernetes.api.model.*; import io.fabric8.kubernetes.client.DefaultKubernetesClient; import io.fabric8.kubernetes.client.HttpClientAware; import io.fabric8.kubernetes.client.KubernetesClient; @@ -47,10 +68,6 @@ import io.fabric8.kubernetes.client.dsl.Listable; import io.fabric8.kubernetes.client.dsl.Resource; -import io.fabric8.kubernetes.api.model.apps.Deployment; -import io.fabric8.kubernetes.api.model.apps.DeploymentSpec; -import io.fabric8.kubernetes.api.model.apps.DoneableDeployment; - import io.grpc.health.v1.HealthCheckRequest; import io.grpc.health.v1.HealthCheckResponse.ServingStatus; import io.grpc.health.v1.HealthCheckResponseOrBuilder;