Skip to content

Commit 1ce9af5

Browse files
authored
feat(provider/kubernetes): V2 provider groundwork (spinnaker#1798)
1 parent 5379550 commit 1ce9af5

File tree

55 files changed

+767
-612
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

55 files changed

+767
-612
lines changed

clouddriver-docker/src/main/groovy/com/netflix/spinnaker/clouddriver/docker/registry/controllers/DockerRegistryImageLookupController.groovy

-2
Original file line numberDiff line numberDiff line change
@@ -24,8 +24,6 @@ import com.netflix.spinnaker.clouddriver.docker.registry.provider.DockerRegistry
2424
import com.netflix.spinnaker.clouddriver.docker.registry.security.DockerRegistryNamedAccountCredentials
2525
import com.netflix.spinnaker.clouddriver.security.AccountCredentialsProvider
2626
import org.springframework.beans.factory.annotation.Autowired
27-
import org.springframework.beans.factory.annotation.Value
28-
import org.springframework.web.bind.annotation.PathVariable
2927
import org.springframework.web.bind.annotation.RequestMapping
3028
import org.springframework.web.bind.annotation.RequestMethod
3129
import org.springframework.web.bind.annotation.RequestParam

clouddriver-kubernetes/clouddriver-kubernetes.gradle

+3
Original file line numberDiff line numberDiff line change
@@ -5,4 +5,7 @@ dependencies {
55
compile spinnaker.dependency('frigga')
66
compile spinnaker.dependency('bootActuator')
77
compile spinnaker.dependency('bootWeb')
8+
9+
// TODO(lwander) move to spinnaker-dependencies when library stabilizes
10+
compile 'io.kubernetes:client-java-util:0.1'
811
}

clouddriver-kubernetes/src/main/groovy/com/netflix/spinnaker/clouddriver/kubernetes/KubernetesConfiguration.groovy

+2-2
Original file line numberDiff line numberDiff line change
@@ -19,7 +19,7 @@ package com.netflix.spinnaker.clouddriver.kubernetes
1919
import com.netflix.spinnaker.clouddriver.kubernetes.config.KubernetesConfigurationProperties
2020
import com.netflix.spinnaker.clouddriver.kubernetes.deploy.KubernetesUtil
2121
import com.netflix.spinnaker.clouddriver.kubernetes.health.KubernetesHealthIndicator
22-
import com.netflix.spinnaker.clouddriver.kubernetes.security.KubernetesCredentialsInitializer
22+
import com.netflix.spinnaker.clouddriver.kubernetes.security.KubernetesNamedAccountCredentialsInitializer
2323
import org.springframework.beans.factory.config.ConfigurableBeanFactory
2424
import org.springframework.boot.autoconfigure.condition.ConditionalOnProperty
2525
import org.springframework.boot.context.properties.ConfigurationProperties
@@ -32,7 +32,7 @@ import org.springframework.scheduling.annotation.EnableScheduling
3232
@EnableScheduling
3333
@ConditionalOnProperty('kubernetes.enabled')
3434
@ComponentScan(["com.netflix.spinnaker.clouddriver.kubernetes"])
35-
@Import([ KubernetesCredentialsInitializer ])
35+
@Import([ KubernetesNamedAccountCredentialsInitializer ])
3636
class KubernetesConfiguration {
3737
@Scope(ConfigurableBeanFactory.SCOPE_PROTOTYPE)
3838
@Bean

clouddriver-kubernetes/src/main/groovy/com/netflix/spinnaker/clouddriver/kubernetes/config/KubernetesConfigurationProperties.groovy

+5
Original file line numberDiff line numberDiff line change
@@ -24,6 +24,7 @@ class KubernetesConfigurationProperties {
2424
@ToString(includeNames = true)
2525
static class ManagedAccount {
2626
String name
27+
KubernetesProviderVersion providerVersion
2728
String environment
2829
String accountType
2930
String context
@@ -47,3 +48,7 @@ class LinkedDockerRegistryConfiguration {
4748
String accountName
4849
List<String> namespaces
4950
}
51+
52+
enum KubernetesProviderVersion {
53+
v1, v2
54+
}

clouddriver-kubernetes/src/main/groovy/com/netflix/spinnaker/clouddriver/kubernetes/deploy/KubernetesServerGroupNameResolver.groovy

+3-3
Original file line numberDiff line numberDiff line change
@@ -19,7 +19,7 @@ package com.netflix.spinnaker.clouddriver.kubernetes.deploy
1919
import com.netflix.frigga.Names
2020
import com.netflix.spinnaker.clouddriver.helpers.AbstractServerGroupNameResolver
2121
import com.netflix.spinnaker.clouddriver.kubernetes.model.KubernetesModelUtil
22-
import com.netflix.spinnaker.clouddriver.kubernetes.security.KubernetesCredentials
22+
import com.netflix.spinnaker.clouddriver.kubernetes.v1.security.KubernetesV1Credentials
2323
import io.fabric8.kubernetes.api.model.ReplicationController
2424
import io.fabric8.kubernetes.api.model.extensions.ReplicaSet
2525

@@ -28,9 +28,9 @@ class KubernetesServerGroupNameResolver extends AbstractServerGroupNameResolver
2828
private static final String PHASE = "DEPLOY"
2929

3030
private final String namespace
31-
private final KubernetesCredentials credentials
31+
private final KubernetesV1Credentials credentials
3232

33-
KubernetesServerGroupNameResolver(String namespace, KubernetesCredentials credentials) {
33+
KubernetesServerGroupNameResolver(String namespace, KubernetesV1Credentials credentials) {
3434
this.namespace = namespace
3535
this.credentials = credentials
3636
}

clouddriver-kubernetes/src/main/groovy/com/netflix/spinnaker/clouddriver/kubernetes/deploy/KubernetesUtil.groovy

+4-4
Original file line numberDiff line numberDiff line change
@@ -20,10 +20,10 @@ import com.netflix.frigga.NameValidation
2020
import com.netflix.frigga.Names
2121
import com.netflix.spinnaker.clouddriver.kubernetes.deploy.description.servergroup.KubernetesImageDescription
2222
import com.netflix.spinnaker.clouddriver.kubernetes.deploy.exception.KubernetesIllegalArgumentException
23-
import com.netflix.spinnaker.clouddriver.kubernetes.security.KubernetesCredentials
23+
import com.netflix.spinnaker.clouddriver.kubernetes.v1.security.KubernetesV1Credentials
24+
import io.fabric8.kubernetes.api.model.Job
2425
import io.fabric8.kubernetes.api.model.Pod
2526
import io.fabric8.kubernetes.api.model.ReplicationController
26-
import io.fabric8.kubernetes.api.model.Job
2727
import io.fabric8.kubernetes.api.model.extensions.ReplicaSet
2828
import org.springframework.beans.factory.annotation.Value
2929

@@ -40,7 +40,7 @@ class KubernetesUtil {
4040
private static int SECURITY_GROUP_LABEL_PREFIX_LENGTH = SECURITY_GROUP_LABEL_PREFIX.length()
4141
private static int LOAD_BALANCER_LABEL_PREFIX_LENGTH = LOAD_BALANCER_LABEL_PREFIX.length()
4242

43-
static String getNextSequence(String clusterName, String namespace, KubernetesCredentials credentials) {
43+
static String getNextSequence(String clusterName, String namespace, KubernetesV1Credentials credentials) {
4444
def maxSeqNumber = -1
4545
def replicationControllers = credentials.apiAdaptor.getReplicationControllers(namespace)
4646

@@ -120,7 +120,7 @@ class KubernetesUtil {
120120
"$image.repository:$image.tag".toString()
121121
}
122122

123-
static String validateNamespace(KubernetesCredentials credentials, String namespace) {
123+
static String validateNamespace(KubernetesV1Credentials credentials, String namespace) {
124124
def resolvedNamespace = namespace ?: "default"
125125
if (!credentials.isRegisteredNamespace(resolvedNamespace)) {
126126
def error = "Registered namespaces are ${credentials.getNamespaces()}."

clouddriver-kubernetes/src/main/groovy/com/netflix/spinnaker/clouddriver/kubernetes/deploy/description/servergroup/CloneKubernetesAtomicOperationDescription.groovy

+1-1
Original file line numberDiff line numberDiff line change
@@ -15,8 +15,8 @@
1515
*/
1616

1717
package com.netflix.spinnaker.clouddriver.kubernetes.deploy.description.servergroup
18-
import com.netflix.spinnaker.clouddriver.kubernetes.security.KubernetesNamedAccountCredentials
1918

19+
import com.netflix.spinnaker.clouddriver.kubernetes.security.KubernetesNamedAccountCredentials
2020
import groovy.transform.Canonical
2121

2222
class CloneKubernetesAtomicOperationDescription extends DeployKubernetesAtomicOperationDescription {

clouddriver-kubernetes/src/main/groovy/com/netflix/spinnaker/clouddriver/kubernetes/deploy/ops/loadbalancer/UpsertKubernetesLoadBalancerAtomicOperation.groovy

+1-1
Original file line numberDiff line numberDiff line change
@@ -19,8 +19,8 @@ package com.netflix.spinnaker.clouddriver.kubernetes.deploy.ops.loadbalancer
1919
import com.netflix.spinnaker.clouddriver.data.task.Task
2020
import com.netflix.spinnaker.clouddriver.data.task.TaskRepository
2121
import com.netflix.spinnaker.clouddriver.kubernetes.deploy.KubernetesUtil
22-
import com.netflix.spinnaker.clouddriver.kubernetes.deploy.description.loadbalancer.KubernetesNamedServicePort
2322
import com.netflix.spinnaker.clouddriver.kubernetes.deploy.description.loadbalancer.KubernetesLoadBalancerDescription
23+
import com.netflix.spinnaker.clouddriver.kubernetes.deploy.description.loadbalancer.KubernetesNamedServicePort
2424
import com.netflix.spinnaker.clouddriver.orchestration.AtomicOperation
2525
import io.fabric8.kubernetes.api.model.ServiceBuilder
2626
import io.fabric8.kubernetes.api.model.ServicePort

clouddriver-kubernetes/src/main/groovy/com/netflix/spinnaker/clouddriver/kubernetes/deploy/ops/servergroup/CloneKubernetesAtomicOperation.groovy

-2
Original file line numberDiff line numberDiff line change
@@ -25,8 +25,6 @@ import com.netflix.spinnaker.clouddriver.kubernetes.deploy.KubernetesUtil
2525
import com.netflix.spinnaker.clouddriver.kubernetes.deploy.description.servergroup.CloneKubernetesAtomicOperationDescription
2626
import com.netflix.spinnaker.clouddriver.kubernetes.deploy.exception.KubernetesResourceNotFoundException
2727
import com.netflix.spinnaker.clouddriver.orchestration.AtomicOperation
28-
import io.fabric8.kubernetes.api.model.ReplicationController
29-
import io.fabric8.kubernetes.api.model.extensions.ReplicaSet
3028

3129
class CloneKubernetesAtomicOperation implements AtomicOperation<DeploymentResult> {
3230
private static final String BASE_PHASE = "CLONE_SERVER_GROUP"

clouddriver-kubernetes/src/main/groovy/com/netflix/spinnaker/clouddriver/kubernetes/deploy/ops/servergroup/DeployKubernetesAtomicOperation.groovy

-1
Original file line numberDiff line numberDiff line change
@@ -25,7 +25,6 @@ import com.netflix.spinnaker.clouddriver.kubernetes.deploy.KubernetesUtil
2525
import com.netflix.spinnaker.clouddriver.kubernetes.deploy.description.autoscaler.KubernetesAutoscalerDescription
2626
import com.netflix.spinnaker.clouddriver.kubernetes.deploy.description.servergroup.DeployKubernetesAtomicOperationDescription
2727
import com.netflix.spinnaker.clouddriver.orchestration.AtomicOperation
28-
import io.fabric8.kubernetes.api.builder.BaseFluent
2928
import io.fabric8.kubernetes.api.model.HasMetadata
3029
import io.fabric8.kubernetes.api.model.extensions.DeploymentBuilder
3130
import io.fabric8.kubernetes.api.model.extensions.DeploymentFluentImpl

clouddriver-kubernetes/src/main/groovy/com/netflix/spinnaker/clouddriver/kubernetes/deploy/validators/KubernetesContainerValidator.groovy

-1
Original file line numberDiff line numberDiff line change
@@ -19,7 +19,6 @@ package com.netflix.spinnaker.clouddriver.kubernetes.deploy.validators
1919
import com.netflix.spinnaker.clouddriver.kubernetes.deploy.description.servergroup.KubernetesContainerDescription
2020
import com.netflix.spinnaker.clouddriver.kubernetes.deploy.description.servergroup.KubernetesHandlerType
2121
import com.netflix.spinnaker.clouddriver.kubernetes.deploy.description.servergroup.KubernetesProbe
22-
import com.netflix.spinnaker.clouddriver.kubernetes.deploy.validators.StandardKubernetesAttributeValidator
2322

2423
class KubernetesContainerValidator {
2524
static void validate(KubernetesContainerDescription description, StandardKubernetesAttributeValidator helper, String prefix) {

clouddriver-kubernetes/src/main/groovy/com/netflix/spinnaker/clouddriver/kubernetes/deploy/validators/KubernetesVolumeSourceValidator.groovy

-3
Original file line numberDiff line numberDiff line change
@@ -16,9 +16,6 @@
1616

1717
package com.netflix.spinnaker.clouddriver.kubernetes.deploy.validators
1818

19-
import com.netflix.spinnaker.clouddriver.kubernetes.deploy.description.servergroup.KubernetesContainerDescription
20-
import com.netflix.spinnaker.clouddriver.kubernetes.deploy.description.servergroup.KubernetesHandlerType
21-
import com.netflix.spinnaker.clouddriver.kubernetes.deploy.description.servergroup.KubernetesProbe
2219
import com.netflix.spinnaker.clouddriver.kubernetes.deploy.description.servergroup.KubernetesVolumeSource
2320
import com.netflix.spinnaker.clouddriver.kubernetes.deploy.description.servergroup.KubernetesVolumeSourceType
2421

clouddriver-kubernetes/src/main/groovy/com/netflix/spinnaker/clouddriver/kubernetes/deploy/validators/StandardKubernetesAttributeValidator.groovy

+4-4
Original file line numberDiff line numberDiff line change
@@ -16,7 +16,7 @@
1616

1717
package com.netflix.spinnaker.clouddriver.kubernetes.deploy.validators
1818

19-
import com.netflix.spinnaker.clouddriver.kubernetes.security.KubernetesCredentials
19+
import com.netflix.spinnaker.clouddriver.kubernetes.v1.security.KubernetesV1Credentials
2020
import com.netflix.spinnaker.clouddriver.security.AccountCredentialsProvider
2121
import org.apache.http.conn.util.InetAddressUtils
2222
import org.springframework.validation.Errors
@@ -174,15 +174,15 @@ class StandardKubernetesAttributeValidator {
174174
}
175175
}
176176

177-
def validateImagePullSecret(KubernetesCredentials credentials, String value, String namespace, String attribute) {
177+
def validateImagePullSecret(KubernetesV1Credentials credentials, String value, String namespace, String attribute) {
178178
if (!credentials.isRegisteredImagePullSecret(value, namespace)) {
179179
errors.rejectValue("${context}.${attribute}", "${context}.${attribute}.notRegistered")
180180
return false
181181
}
182182
return validateByRegex(value, attribute, namePattern)
183183
}
184184

185-
def validateNamespace(KubernetesCredentials credentials, String value, String attribute) {
185+
def validateNamespace(KubernetesV1Credentials credentials, String value, String attribute) {
186186
// Namespace is optional, empty taken to mean 'default'.
187187
if (!value) {
188188
return true
@@ -210,7 +210,7 @@ class StandardKubernetesAttributeValidator {
210210
def result = validateNotEmpty(credentials, "account")
211211
if (result) {
212212
def kubernetesCredentials = accountCredentialsProvider.getCredentials(credentials)
213-
if (!(kubernetesCredentials?.credentials instanceof KubernetesCredentials)) {
213+
if (!(kubernetesCredentials?.credentials instanceof KubernetesV1Credentials)) {
214214
errors.rejectValue("${context}.account", "${context}.account.notFound")
215215
result = false
216216
}

clouddriver-kubernetes/src/main/groovy/com/netflix/spinnaker/clouddriver/kubernetes/deploy/validators/instance/TerminateKubernetesInstancesAtomicOperationValidator.groovy

-1
Original file line numberDiff line numberDiff line change
@@ -18,7 +18,6 @@ package com.netflix.spinnaker.clouddriver.kubernetes.deploy.validators.instance
1818

1919
import com.netflix.spinnaker.clouddriver.deploy.DescriptionValidator
2020
import com.netflix.spinnaker.clouddriver.kubernetes.KubernetesOperation
21-
import com.netflix.spinnaker.clouddriver.kubernetes.deploy.description.instance.AbstractRegistrationKubernetesAtomicOperationDescription
2221
import com.netflix.spinnaker.clouddriver.kubernetes.deploy.description.instance.KubernetesInstanceDescription
2322
import com.netflix.spinnaker.clouddriver.kubernetes.deploy.validators.StandardKubernetesAttributeValidator
2423
import com.netflix.spinnaker.clouddriver.orchestration.AtomicOperations

clouddriver-kubernetes/src/main/groovy/com/netflix/spinnaker/clouddriver/kubernetes/deploy/validators/job/CloneKubernetesJobAtomicOperationValidator.groovy

+2-2
Original file line numberDiff line numberDiff line change
@@ -21,7 +21,7 @@ import com.netflix.spinnaker.clouddriver.kubernetes.KubernetesOperation
2121
import com.netflix.spinnaker.clouddriver.kubernetes.deploy.description.job.CloneKubernetesJobAtomicOperationDescription
2222
import com.netflix.spinnaker.clouddriver.kubernetes.deploy.validators.KubernetesContainerValidator
2323
import com.netflix.spinnaker.clouddriver.kubernetes.deploy.validators.StandardKubernetesAttributeValidator
24-
import com.netflix.spinnaker.clouddriver.kubernetes.security.KubernetesCredentials
24+
import com.netflix.spinnaker.clouddriver.kubernetes.v1.security.KubernetesV1Credentials
2525
import com.netflix.spinnaker.clouddriver.orchestration.AtomicOperations
2626
import com.netflix.spinnaker.clouddriver.security.AccountCredentialsProvider
2727
import org.springframework.beans.factory.annotation.Autowired
@@ -41,7 +41,7 @@ class CloneKubernetesJobAtomicOperationValidator extends DescriptionValidator<Cl
4141
return
4242
}
4343

44-
KubernetesCredentials credentials = (KubernetesCredentials) accountCredentialsProvider.getCredentials(description.account).credentials
44+
KubernetesV1Credentials credentials = (KubernetesV1Credentials) accountCredentialsProvider.getCredentials(description.account).credentials
4545

4646
helper.validateJobCloneSource(description.source, "source")
4747
if (description.application) {

clouddriver-kubernetes/src/main/groovy/com/netflix/spinnaker/clouddriver/kubernetes/deploy/validators/job/RunKubernetesJobAtomicOperationValidator.groovy

+2-2
Original file line numberDiff line numberDiff line change
@@ -22,7 +22,7 @@ import com.netflix.spinnaker.clouddriver.kubernetes.deploy.description.job.RunKu
2222
import com.netflix.spinnaker.clouddriver.kubernetes.deploy.validators.KubernetesContainerValidator
2323
import com.netflix.spinnaker.clouddriver.kubernetes.deploy.validators.KubernetesVolumeSourceValidator
2424
import com.netflix.spinnaker.clouddriver.kubernetes.deploy.validators.StandardKubernetesAttributeValidator
25-
import com.netflix.spinnaker.clouddriver.kubernetes.security.KubernetesCredentials
25+
import com.netflix.spinnaker.clouddriver.kubernetes.v1.security.KubernetesV1Credentials
2626
import com.netflix.spinnaker.clouddriver.orchestration.AtomicOperations
2727
import com.netflix.spinnaker.clouddriver.security.AccountCredentialsProvider
2828
import org.springframework.beans.factory.annotation.Autowired
@@ -43,7 +43,7 @@ class RunKubernetesJobAtomicOperationValidator extends DescriptionValidator<RunK
4343
return
4444
}
4545

46-
KubernetesCredentials credentials = (KubernetesCredentials) accountCredentialsProvider.getCredentials(description.account).credentials
46+
KubernetesV1Credentials credentials = (KubernetesV1Credentials) accountCredentialsProvider.getCredentials(description.account).credentials
4747

4848
helper.validateApplication(description.application, "application")
4949
helper.validateStack(description.stack, "stack")

clouddriver-kubernetes/src/main/groovy/com/netflix/spinnaker/clouddriver/kubernetes/deploy/validators/loadbalancer/UpsertKubernetesLoadBalancerAtomicOperationValidator.groovy

+2-2
Original file line numberDiff line numberDiff line change
@@ -20,7 +20,7 @@ import com.netflix.spinnaker.clouddriver.deploy.DescriptionValidator
2020
import com.netflix.spinnaker.clouddriver.kubernetes.KubernetesOperation
2121
import com.netflix.spinnaker.clouddriver.kubernetes.deploy.description.loadbalancer.KubernetesLoadBalancerDescription
2222
import com.netflix.spinnaker.clouddriver.kubernetes.deploy.validators.StandardKubernetesAttributeValidator
23-
import com.netflix.spinnaker.clouddriver.kubernetes.security.KubernetesCredentials
23+
import com.netflix.spinnaker.clouddriver.kubernetes.v1.security.KubernetesV1Credentials
2424
import com.netflix.spinnaker.clouddriver.orchestration.AtomicOperations
2525
import com.netflix.spinnaker.clouddriver.security.AccountCredentialsProvider
2626
import org.springframework.beans.factory.annotation.Autowired
@@ -41,7 +41,7 @@ class UpsertKubernetesLoadBalancerAtomicOperationValidator extends DescriptionVa
4141
return
4242
}
4343

44-
KubernetesCredentials credentials = (KubernetesCredentials) accountCredentialsProvider.getCredentials(description.account).credentials
44+
KubernetesV1Credentials credentials = (KubernetesV1Credentials) accountCredentialsProvider.getCredentials(description.account).credentials
4545

4646
helper.validateName(description.name, "name")
4747
helper.validateNamespace(credentials, description.namespace, "namespace")

clouddriver-kubernetes/src/main/groovy/com/netflix/spinnaker/clouddriver/kubernetes/deploy/validators/securitygroup/UpsertKubernetesSecurityGroupValidator.groovy

+2-2
Original file line numberDiff line numberDiff line change
@@ -21,7 +21,7 @@ import com.netflix.spinnaker.clouddriver.kubernetes.deploy.description.securityg
2121
import com.netflix.spinnaker.clouddriver.kubernetes.deploy.description.securitygroup.KubernetesIngressRule
2222
import com.netflix.spinnaker.clouddriver.kubernetes.deploy.description.securitygroup.KubernetesSecurityGroupDescription
2323
import com.netflix.spinnaker.clouddriver.kubernetes.deploy.validators.StandardKubernetesAttributeValidator
24-
import com.netflix.spinnaker.clouddriver.kubernetes.security.KubernetesCredentials
24+
import com.netflix.spinnaker.clouddriver.kubernetes.v1.security.KubernetesV1Credentials
2525
import com.netflix.spinnaker.clouddriver.security.AccountCredentialsProvider
2626
import org.springframework.beans.factory.annotation.Autowired
2727
import org.springframework.validation.Errors
@@ -39,7 +39,7 @@ class UpsertKubernetesSecurityGroupValidator {
3939
return
4040
}
4141

42-
KubernetesCredentials credentials = (KubernetesCredentials) accountCredentialsProvider.getCredentials(description.account).credentials
42+
KubernetesV1Credentials credentials = (KubernetesV1Credentials) accountCredentialsProvider.getCredentials(description.account).credentials
4343

4444
helper.validateName(description.securityGroupName, "securityGroupName")
4545
helper.validateNamespace(credentials, description.namespace, "namespace")

clouddriver-kubernetes/src/main/groovy/com/netflix/spinnaker/clouddriver/kubernetes/deploy/validators/servergroup/CloneKubernetesAtomicOperationValidator.groovy

+2-2
Original file line numberDiff line numberDiff line change
@@ -21,7 +21,7 @@ import com.netflix.spinnaker.clouddriver.kubernetes.KubernetesOperation
2121
import com.netflix.spinnaker.clouddriver.kubernetes.deploy.description.servergroup.CloneKubernetesAtomicOperationDescription
2222
import com.netflix.spinnaker.clouddriver.kubernetes.deploy.validators.KubernetesContainerValidator
2323
import com.netflix.spinnaker.clouddriver.kubernetes.deploy.validators.StandardKubernetesAttributeValidator
24-
import com.netflix.spinnaker.clouddriver.kubernetes.security.KubernetesCredentials
24+
import com.netflix.spinnaker.clouddriver.kubernetes.v1.security.KubernetesV1Credentials
2525
import com.netflix.spinnaker.clouddriver.orchestration.AtomicOperations
2626
import com.netflix.spinnaker.clouddriver.security.AccountCredentialsProvider
2727
import org.springframework.beans.factory.annotation.Autowired
@@ -41,7 +41,7 @@ class CloneKubernetesAtomicOperationValidator extends DescriptionValidator<Clone
4141
return
4242
}
4343

44-
KubernetesCredentials credentials = (KubernetesCredentials) accountCredentialsProvider.getCredentials(description.account).credentials
44+
KubernetesV1Credentials credentials = (KubernetesV1Credentials) accountCredentialsProvider.getCredentials(description.account).credentials
4545

4646
helper.validateServerGroupCloneSource(description.source, "source")
4747
if (description.application) {

clouddriver-kubernetes/src/main/groovy/com/netflix/spinnaker/clouddriver/kubernetes/deploy/validators/servergroup/DeployKubernetesAtomicOperationValidator.groovy

+2-4
Original file line numberDiff line numberDiff line change
@@ -18,13 +18,11 @@ package com.netflix.spinnaker.clouddriver.kubernetes.deploy.validators.servergro
1818

1919
import com.netflix.spinnaker.clouddriver.deploy.DescriptionValidator
2020
import com.netflix.spinnaker.clouddriver.kubernetes.KubernetesOperation
21-
import com.netflix.spinnaker.clouddriver.kubernetes.deploy.KubernetesUtil
2221
import com.netflix.spinnaker.clouddriver.kubernetes.deploy.description.servergroup.DeployKubernetesAtomicOperationDescription
23-
import com.netflix.spinnaker.clouddriver.kubernetes.deploy.description.servergroup.KubernetesVolumeSourceType
2422
import com.netflix.spinnaker.clouddriver.kubernetes.deploy.validators.KubernetesContainerValidator
2523
import com.netflix.spinnaker.clouddriver.kubernetes.deploy.validators.KubernetesVolumeSourceValidator
2624
import com.netflix.spinnaker.clouddriver.kubernetes.deploy.validators.StandardKubernetesAttributeValidator
27-
import com.netflix.spinnaker.clouddriver.kubernetes.security.KubernetesCredentials
25+
import com.netflix.spinnaker.clouddriver.kubernetes.v1.security.KubernetesV1Credentials
2826
import com.netflix.spinnaker.clouddriver.orchestration.AtomicOperations
2927
import com.netflix.spinnaker.clouddriver.security.AccountCredentialsProvider
3028
import org.springframework.beans.factory.annotation.Autowired
@@ -45,7 +43,7 @@ class DeployKubernetesAtomicOperationValidator extends DescriptionValidator<Depl
4543
return
4644
}
4745

48-
KubernetesCredentials credentials = (KubernetesCredentials) accountCredentialsProvider.getCredentials(description.account).credentials
46+
KubernetesV1Credentials credentials = (KubernetesV1Credentials) accountCredentialsProvider.getCredentials(description.account).credentials
4947

5048
helper.validateApplication(description.application, "application")
5149
helper.validateStack(description.stack, "stack")

0 commit comments

Comments
 (0)