Skip to content

Commit

Permalink
chore(kubernetes): bump kubernetes java client for v2
Browse files Browse the repository at this point in the history
  • Loading branch information
maggieneterval committed Jan 13, 2020
1 parent 754118a commit a7e766f
Show file tree
Hide file tree
Showing 30 changed files with 84 additions and 80 deletions.
2 changes: 1 addition & 1 deletion clouddriver-kubernetes-v2/clouddriver-kubernetes-v2.gradle
Expand Up @@ -19,7 +19,7 @@ dependencies {
implementation "com.netflix.spinnaker.kork:kork-artifacts"
implementation "com.netflix.spinnaker.kork:kork-config"
implementation "com.netflix.spinnaker.moniker:moniker"
implementation "io.kubernetes:client-java:5.0.0"
implementation "io.kubernetes:client-java:7.0.0"
implementation "org.springframework.boot:spring-boot-actuator"
implementation "org.springframework.boot:spring-boot-starter-web"
implementation 'com.jayway.jsonpath:json-path:2.3.0'
Expand Down
Expand Up @@ -40,7 +40,7 @@
import com.netflix.spinnaker.kork.artifacts.model.Artifact;
import com.netflix.spinnaker.moniker.Moniker;
import com.netflix.spinnaker.moniker.Namer;
import io.kubernetes.client.JSON;
import io.kubernetes.client.openapi.JSON;
import java.util.*;
import java.util.concurrent.TimeUnit;
import java.util.function.Supplier;
Expand Down
Expand Up @@ -20,8 +20,8 @@
import com.google.common.collect.ImmutableMap;
import com.netflix.spinnaker.clouddriver.model.Health;
import com.netflix.spinnaker.clouddriver.model.HealthState;
import io.kubernetes.client.models.V1ContainerStatus;
import io.kubernetes.client.models.V1PodStatus;
import io.kubernetes.client.openapi.models.V1ContainerStatus;
import io.kubernetes.client.openapi.models.V1PodStatus;
import java.util.Map;
import lombok.Data;

Expand Down Expand Up @@ -52,7 +52,7 @@ public KubernetesV2Health(V1ContainerStatus status) {
this.source = "Container " + status.getName();
this.type = "kuberentes/container";

if (!status.isReady()) {
if (!status.getReady()) {
state = HealthState.Down;
} else {
state = HealthState.Up;
Expand Down
Expand Up @@ -25,7 +25,7 @@
import com.netflix.spinnaker.clouddriver.model.HealthState;
import com.netflix.spinnaker.clouddriver.model.Instance;
import com.netflix.spinnaker.clouddriver.model.LoadBalancerInstance;
import io.kubernetes.client.models.V1PodStatus;
import io.kubernetes.client.openapi.models.V1PodStatus;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
Expand Down
Expand Up @@ -32,10 +32,10 @@
import com.netflix.spinnaker.clouddriver.model.SecurityGroupSummary;
import com.netflix.spinnaker.clouddriver.model.securitygroups.Rule;
import io.kubernetes.client.custom.IntOrString;
import io.kubernetes.client.models.V1NetworkPolicy;
import io.kubernetes.client.models.V1NetworkPolicyEgressRule;
import io.kubernetes.client.models.V1NetworkPolicyIngressRule;
import io.kubernetes.client.models.V1NetworkPolicyPort;
import io.kubernetes.client.openapi.models.V1NetworkPolicy;
import io.kubernetes.client.openapi.models.V1NetworkPolicyEgressRule;
import io.kubernetes.client.openapi.models.V1NetworkPolicyIngressRule;
import io.kubernetes.client.openapi.models.V1NetworkPolicyPort;
import java.util.Collection;
import java.util.Collections;
import java.util.HashSet;
Expand Down
Expand Up @@ -29,9 +29,9 @@
import com.netflix.spinnaker.clouddriver.kubernetes.v2.op.job.KubectlJobExecutor;
import com.netflix.spinnaker.clouddriver.kubernetes.v2.security.KubernetesV2Credentials;
import com.netflix.spinnaker.clouddriver.model.InstanceProvider;
import io.kubernetes.client.models.V1Container;
import io.kubernetes.client.models.V1ObjectMeta;
import io.kubernetes.client.models.V1Pod;
import io.kubernetes.client.openapi.models.V1Container;
import io.kubernetes.client.openapi.models.V1ObjectMeta;
import io.kubernetes.client.openapi.models.V1Pod;
import java.util.Collections;
import java.util.List;
import java.util.Optional;
Expand Down
Expand Up @@ -17,7 +17,7 @@

package com.netflix.spinnaker.clouddriver.kubernetes.v2.description.manifest;

import io.kubernetes.client.models.V1DeleteOptions;
import io.kubernetes.client.openapi.models.V1DeleteOptions;
import lombok.Data;
import lombok.EqualsAndHashCode;

Expand Down
Expand Up @@ -19,7 +19,7 @@

import com.fasterxml.jackson.annotation.JsonCreator;
import com.fasterxml.jackson.annotation.JsonValue;
import io.kubernetes.client.models.V1beta1CustomResourceDefinition;
import io.kubernetes.client.openapi.models.V1beta1CustomResourceDefinition;
import java.util.Map;
import java.util.concurrent.ConcurrentHashMap;
import javax.annotation.Nonnull;
Expand Down
Expand Up @@ -17,7 +17,7 @@
package com.netflix.spinnaker.clouddriver.kubernetes.v2.description.manifest;

import com.google.common.collect.ImmutableList;
import io.kubernetes.client.models.V1beta1CustomResourceDefinition;
import io.kubernetes.client.openapi.models.V1beta1CustomResourceDefinition;
import java.util.List;
import javax.annotation.Nonnull;
import javax.annotation.ParametersAreNonnullByDefault;
Expand Down
Expand Up @@ -20,12 +20,12 @@
import com.netflix.spinnaker.clouddriver.kubernetes.provider.KubernetesModelUtil;
import com.netflix.spinnaker.clouddriver.model.JobState;
import com.netflix.spinnaker.clouddriver.model.JobStatus;
import io.kubernetes.client.models.V1Job;
import io.kubernetes.client.models.V1JobCondition;
import io.kubernetes.client.models.V1JobSpec;
import io.kubernetes.client.models.V1JobStatus;
import io.kubernetes.client.models.V1Pod;
import io.kubernetes.client.models.V1PodStatus;
import io.kubernetes.client.openapi.models.V1Job;
import io.kubernetes.client.openapi.models.V1JobCondition;
import io.kubernetes.client.openapi.models.V1JobSpec;
import io.kubernetes.client.openapi.models.V1JobStatus;
import io.kubernetes.client.openapi.models.V1Pod;
import io.kubernetes.client.openapi.models.V1PodStatus;
import java.io.Serializable;
import java.util.*;
import lombok.Data;
Expand Down
Expand Up @@ -31,7 +31,7 @@
import com.netflix.spinnaker.clouddriver.model.ArtifactProvider;
import com.netflix.spinnaker.clouddriver.orchestration.AtomicOperation;
import com.netflix.spinnaker.kork.artifacts.model.Artifact;
import io.kubernetes.client.models.V1DeleteOptions;
import io.kubernetes.client.openapi.models.V1DeleteOptions;
import java.util.ArrayList;
import java.util.Collection;
import java.util.List;
Expand Down
Expand Up @@ -22,7 +22,7 @@
import com.netflix.spinnaker.clouddriver.kubernetes.v2.op.OperationResult;
import com.netflix.spinnaker.clouddriver.kubernetes.v2.security.KubernetesSelectorList;
import com.netflix.spinnaker.clouddriver.kubernetes.v2.security.KubernetesV2Credentials;
import io.kubernetes.client.models.V1DeleteOptions;
import io.kubernetes.client.openapi.models.V1DeleteOptions;
import java.util.Collections;
import java.util.HashMap;
import java.util.List;
Expand Down
Expand Up @@ -22,7 +22,7 @@
import com.netflix.spinnaker.clouddriver.kubernetes.v2.op.job.KubectlJobExecutor;
import com.netflix.spinnaker.clouddriver.kubernetes.v2.security.KubernetesSelectorList;
import com.netflix.spinnaker.clouddriver.kubernetes.v2.security.KubernetesV2Credentials;
import io.kubernetes.client.models.V1DeleteOptions;
import io.kubernetes.client.openapi.models.V1DeleteOptions;

public interface CanDeploy {
default OperationResult deploy(
Expand Down
Expand Up @@ -28,8 +28,8 @@
import com.netflix.spinnaker.clouddriver.kubernetes.v2.description.manifest.KubernetesKind;
import com.netflix.spinnaker.clouddriver.kubernetes.v2.description.manifest.KubernetesManifest;
import com.netflix.spinnaker.clouddriver.kubernetes.v2.model.Manifest.Status;
import io.kubernetes.client.models.V2alpha1CronJob;
import io.kubernetes.client.models.V2alpha1CronJobStatus;
import io.kubernetes.client.openapi.models.V2alpha1CronJob;
import io.kubernetes.client.openapi.models.V2alpha1CronJobStatus;
import javax.annotation.Nonnull;
import org.springframework.stereotype.Component;

Expand Down
Expand Up @@ -30,8 +30,8 @@
import com.netflix.spinnaker.clouddriver.kubernetes.v2.description.manifest.KubernetesKind;
import com.netflix.spinnaker.clouddriver.kubernetes.v2.description.manifest.KubernetesManifest;
import com.netflix.spinnaker.clouddriver.kubernetes.v2.model.Manifest.Status;
import io.kubernetes.client.models.V1beta2DaemonSet;
import io.kubernetes.client.models.V1beta2DaemonSetStatus;
import io.kubernetes.client.openapi.models.V1beta2DaemonSet;
import io.kubernetes.client.openapi.models.V1beta2DaemonSetStatus;
import java.util.Map;
import javax.annotation.Nonnull;
import javax.annotation.Nullable;
Expand Down
Expand Up @@ -34,9 +34,9 @@
import com.netflix.spinnaker.clouddriver.kubernetes.v2.description.manifest.KubernetesKind;
import com.netflix.spinnaker.clouddriver.kubernetes.v2.description.manifest.KubernetesManifest;
import com.netflix.spinnaker.clouddriver.kubernetes.v2.model.Manifest.Status;
import io.kubernetes.client.models.V1Deployment;
import io.kubernetes.client.models.V1DeploymentCondition;
import io.kubernetes.client.models.V1DeploymentStatus;
import io.kubernetes.client.openapi.models.V1Deployment;
import io.kubernetes.client.openapi.models.V1DeploymentCondition;
import io.kubernetes.client.openapi.models.V1DeploymentStatus;
import javax.annotation.Nonnull;
import org.springframework.stereotype.Component;

Expand Down
Expand Up @@ -27,8 +27,8 @@
import com.netflix.spinnaker.clouddriver.kubernetes.v2.description.manifest.KubernetesKind;
import com.netflix.spinnaker.clouddriver.kubernetes.v2.description.manifest.KubernetesManifest;
import com.netflix.spinnaker.clouddriver.kubernetes.v2.model.Manifest;
import io.kubernetes.client.models.V1Event;
import io.kubernetes.client.models.V1ObjectReference;
import io.kubernetes.client.openapi.models.V1Event;
import io.kubernetes.client.openapi.models.V1ObjectReference;
import java.util.ArrayList;
import java.util.Collections;
import java.util.HashMap;
Expand Down
Expand Up @@ -34,7 +34,11 @@
import com.netflix.spinnaker.clouddriver.kubernetes.v2.description.manifest.KubernetesKind;
import com.netflix.spinnaker.clouddriver.kubernetes.v2.description.manifest.KubernetesManifest;
import com.netflix.spinnaker.clouddriver.kubernetes.v2.model.Manifest.Status;
import io.kubernetes.client.models.*;
import io.kubernetes.client.openapi.models.NetworkingV1beta1HTTPIngressPath;
import io.kubernetes.client.openapi.models.NetworkingV1beta1HTTPIngressRuleValue;
import io.kubernetes.client.openapi.models.NetworkingV1beta1Ingress;
import io.kubernetes.client.openapi.models.NetworkingV1beta1IngressBackend;
import io.kubernetes.client.openapi.models.NetworkingV1beta1IngressRule;
import java.util.ArrayList;
import java.util.HashSet;
import java.util.List;
Expand Down Expand Up @@ -119,24 +123,24 @@ private static List<String> attachedServices(KubernetesManifest manifest) {
if (!SUPPORTED_API_VERSIONS.contains(manifest.getApiVersion())) {
throw new UnsupportedVersionException(manifest);
}
V1beta1Ingress v1beta1Ingress =
KubernetesCacheDataConverter.getResource(manifest, V1beta1Ingress.class);
NetworkingV1beta1Ingress v1beta1Ingress =
KubernetesCacheDataConverter.getResource(manifest, NetworkingV1beta1Ingress.class);
return attachedServices(v1beta1Ingress);
}

private static List<String> attachedServices(V1beta1Ingress ingress) {
private static List<String> attachedServices(NetworkingV1beta1Ingress ingress) {
Set<String> result = new HashSet<>();
V1beta1IngressBackend backend = ingress.getSpec().getBackend();
NetworkingV1beta1IngressBackend backend = ingress.getSpec().getBackend();
if (backend != null) {
result.add(backend.getServiceName());
}

List<V1beta1IngressRule> rules = ingress.getSpec().getRules();
List<NetworkingV1beta1IngressRule> rules = ingress.getSpec().getRules();
rules = rules == null ? new ArrayList<>() : rules;
for (V1beta1IngressRule rule : rules) {
V1beta1HTTPIngressRuleValue http = rule.getHttp();
for (NetworkingV1beta1IngressRule rule : rules) {
NetworkingV1beta1HTTPIngressRuleValue http = rule.getHttp();
if (http != null) {
for (V1beta1HTTPIngressPath path : http.getPaths()) {
for (NetworkingV1beta1HTTPIngressPath path : http.getPaths()) {
backend = path.getBackend();
if (backend != null) {
result.add(backend.getServiceName());
Expand Down
Expand Up @@ -28,10 +28,10 @@
import com.netflix.spinnaker.clouddriver.kubernetes.v2.description.manifest.KubernetesKind;
import com.netflix.spinnaker.clouddriver.kubernetes.v2.description.manifest.KubernetesManifest;
import com.netflix.spinnaker.clouddriver.kubernetes.v2.model.Manifest.Status;
import io.kubernetes.client.models.V1Job;
import io.kubernetes.client.models.V1JobCondition;
import io.kubernetes.client.models.V1JobSpec;
import io.kubernetes.client.models.V1JobStatus;
import io.kubernetes.client.openapi.models.V1Job;
import io.kubernetes.client.openapi.models.V1JobCondition;
import io.kubernetes.client.openapi.models.V1JobSpec;
import io.kubernetes.client.openapi.models.V1JobStatus;
import java.util.Collections;
import java.util.List;
import java.util.Optional;
Expand Down
Expand Up @@ -30,8 +30,8 @@
import com.netflix.spinnaker.clouddriver.kubernetes.v2.description.manifest.KubernetesKind;
import com.netflix.spinnaker.clouddriver.kubernetes.v2.description.manifest.KubernetesManifest;
import com.netflix.spinnaker.clouddriver.kubernetes.v2.model.Manifest.Status;
import io.kubernetes.client.models.V1Pod;
import io.kubernetes.client.models.V1PodStatus;
import io.kubernetes.client.openapi.models.V1Pod;
import io.kubernetes.client.openapi.models.V1PodStatus;
import java.util.Map;
import javax.annotation.Nonnull;
import org.springframework.stereotype.Component;
Expand Down
Expand Up @@ -37,10 +37,10 @@
import com.netflix.spinnaker.clouddriver.kubernetes.v2.description.manifest.KubernetesManifestSelector;
import com.netflix.spinnaker.clouddriver.kubernetes.v2.model.Manifest.Status;
import com.netflix.spinnaker.clouddriver.kubernetes.v2.security.KubernetesV2Credentials;
import io.kubernetes.client.models.V1ReplicaSet;
import io.kubernetes.client.models.V1ReplicaSetStatus;
import io.kubernetes.client.models.V1beta1ReplicaSet;
import io.kubernetes.client.models.V1beta2ReplicaSet;
import io.kubernetes.client.openapi.models.V1ReplicaSet;
import io.kubernetes.client.openapi.models.V1ReplicaSetStatus;
import io.kubernetes.client.openapi.models.V1beta1ReplicaSet;
import io.kubernetes.client.openapi.models.V1beta2ReplicaSet;
import java.util.List;
import java.util.Map;
import java.util.Optional;
Expand Down
Expand Up @@ -34,7 +34,7 @@
import com.netflix.spinnaker.clouddriver.kubernetes.v2.description.manifest.KubernetesKind;
import com.netflix.spinnaker.clouddriver.kubernetes.v2.description.manifest.KubernetesManifest;
import com.netflix.spinnaker.clouddriver.kubernetes.v2.model.Manifest.Status;
import io.kubernetes.client.models.V1Service;
import io.kubernetes.client.openapi.models.V1Service;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.HashSet;
Expand Down
Expand Up @@ -32,9 +32,9 @@
import com.netflix.spinnaker.clouddriver.kubernetes.v2.description.manifest.KubernetesKind;
import com.netflix.spinnaker.clouddriver.kubernetes.v2.description.manifest.KubernetesManifest;
import com.netflix.spinnaker.clouddriver.kubernetes.v2.model.Manifest.Status;
import io.kubernetes.client.models.V1beta2RollingUpdateStatefulSetStrategy;
import io.kubernetes.client.models.V1beta2StatefulSet;
import io.kubernetes.client.models.V1beta2StatefulSetStatus;
import io.kubernetes.client.openapi.models.V1beta2RollingUpdateStatefulSetStrategy;
import io.kubernetes.client.openapi.models.V1beta2StatefulSet;
import io.kubernetes.client.openapi.models.V1beta2StatefulSetStatus;
import java.util.ArrayList;
import java.util.Collections;
import java.util.List;
Expand Down
Expand Up @@ -33,7 +33,7 @@
import com.netflix.spinnaker.clouddriver.kubernetes.v2.description.manifest.KubernetesManifest;
import com.netflix.spinnaker.clouddriver.kubernetes.v2.security.KubernetesSelectorList;
import com.netflix.spinnaker.clouddriver.kubernetes.v2.security.KubernetesV2Credentials;
import io.kubernetes.client.models.V1DeleteOptions;
import io.kubernetes.client.openapi.models.V1DeleteOptions;
import java.io.BufferedReader;
import java.io.ByteArrayInputStream;
import java.io.EOFException;
Expand Down Expand Up @@ -158,8 +158,8 @@ public List<String> delete(
// spinnaker generally accepts deletes of resources that don't exist
command.add("--ignore-not-found=true");

if (deleteOptions.isOrphanDependents() != null) {
command.add("--cascade=" + !deleteOptions.isOrphanDependents());
if (deleteOptions.getOrphanDependents() != null) {
command.add("--cascade=" + !deleteOptions.getOrphanDependents());
}

if (deleteOptions.getGracePeriodSeconds() != null) {
Expand Down
Expand Up @@ -27,8 +27,8 @@
import com.netflix.spinnaker.clouddriver.kubernetes.v2.security.KubernetesV2Credentials;
import com.netflix.spinnaker.clouddriver.model.JobProvider;
import com.netflix.spinnaker.clouddriver.security.AccountCredentialsProvider;
import io.kubernetes.client.models.V1Job;
import io.kubernetes.client.models.V1Pod;
import io.kubernetes.client.openapi.models.V1Job;
import io.kubernetes.client.openapi.models.V1Pod;
import java.util.List;
import java.util.Map;
import java.util.Objects;
Expand Down
Expand Up @@ -55,8 +55,8 @@
import com.netflix.spinnaker.clouddriver.kubernetes.v2.op.job.KubectlJobExecutor.KubectlException;
import com.netflix.spinnaker.clouddriver.names.NamerRegistry;
import com.netflix.spinnaker.kork.configserver.ConfigFileService;
import io.kubernetes.client.models.V1DeleteOptions;
import io.kubernetes.client.models.V1beta1CustomResourceDefinition;
import io.kubernetes.client.openapi.models.V1DeleteOptions;
import io.kubernetes.client.openapi.models.V1beta1CustomResourceDefinition;
import java.io.IOException;
import java.nio.charset.StandardCharsets;
import java.nio.file.Files;
Expand Down
Expand Up @@ -19,10 +19,10 @@ package com.netflix.spinnaker.clouddriver.kubernetes.v2.description.manifest

import com.netflix.spinnaker.clouddriver.kubernetes.v2.description.manifest.KubernetesKind
import com.netflix.spinnaker.clouddriver.kubernetes.v2.description.manifest.KubernetesKindProperties
import io.kubernetes.client.models.V1beta1CustomResourceDefinition
import io.kubernetes.client.models.V1beta1CustomResourceDefinitionBuilder
import io.kubernetes.client.models.V1beta1CustomResourceDefinitionNamesBuilder
import io.kubernetes.client.models.V1beta1CustomResourceDefinitionSpecBuilder
import io.kubernetes.client.openapi.models.V1beta1CustomResourceDefinition
import io.kubernetes.client.openapi.models.V1beta1CustomResourceDefinitionBuilder
import io.kubernetes.client.openapi.models.V1beta1CustomResourceDefinitionNamesBuilder
import io.kubernetes.client.openapi.models.V1beta1CustomResourceDefinitionSpecBuilder
import spock.lang.Specification
import spock.lang.Unroll

Expand Down
Expand Up @@ -19,12 +19,12 @@ package com.netflix.spinnaker.clouddriver.kubernetes.v2.description.manifest
import com.fasterxml.jackson.databind.ObjectMapper
import com.netflix.spinnaker.clouddriver.kubernetes.v2.description.manifest.KubernetesApiGroup
import com.netflix.spinnaker.clouddriver.kubernetes.v2.description.manifest.KubernetesKind
import io.kubernetes.client.models.V1beta1CustomResourceDefinition
import io.kubernetes.client.models.V1beta1CustomResourceDefinitionBuilder
import io.kubernetes.client.models.V1beta1CustomResourceDefinitionNames
import io.kubernetes.client.models.V1beta1CustomResourceDefinitionNamesBuilder
import io.kubernetes.client.models.V1beta1CustomResourceDefinitionSpec
import io.kubernetes.client.models.V1beta1CustomResourceDefinitionSpecBuilder
import io.kubernetes.client.openapi.models.V1beta1CustomResourceDefinition
import io.kubernetes.client.openapi.models.V1beta1CustomResourceDefinitionBuilder
import io.kubernetes.client.openapi.models.V1beta1CustomResourceDefinitionNames
import io.kubernetes.client.openapi.models.V1beta1CustomResourceDefinitionNamesBuilder
import io.kubernetes.client.openapi.models.V1beta1CustomResourceDefinitionSpec
import io.kubernetes.client.openapi.models.V1beta1CustomResourceDefinitionSpecBuilder
import spock.lang.Shared
import spock.lang.Specification
import spock.lang.Unroll
Expand Down
Expand Up @@ -5,7 +5,7 @@ import com.google.gson.Gson
import com.netflix.spinnaker.clouddriver.kubernetes.v2.caching.agent.KubernetesCacheDataConverter
import com.netflix.spinnaker.clouddriver.kubernetes.v2.description.manifest.KubernetesKind
import groovy.text.SimpleTemplateEngine
import io.kubernetes.client.models.V1beta2StatefulSet
import io.kubernetes.client.openapi.models.V1beta2StatefulSet
import spock.lang.Specification


Expand Down

0 comments on commit a7e766f

Please sign in to comment.