in cmd/resource/eks.go [23:74]
func describeClusterToModel(cluster eks.Cluster, model *Model) {
model.Name = cluster.Name
model.RoleArn = cluster.RoleArn
model.Version = cluster.Version
model.ResourcesVpcConfig = &ResourcesVpcConfig{
SecurityGroupIds: aws.StringValueSlice(cluster.ResourcesVpcConfig.SecurityGroupIds),
SubnetIds: aws.StringValueSlice(cluster.ResourcesVpcConfig.SubnetIds),
EndpointPublicAccess: cluster.ResourcesVpcConfig.EndpointPublicAccess,
EndpointPrivateAccess: cluster.ResourcesVpcConfig.EndpointPrivateAccess,
PublicAccessCidrs: aws.StringValueSlice(cluster.ResourcesVpcConfig.PublicAccessCidrs),
}
model.KubernetesNetworkConfig = &KubernetesNetworkConfig{
ServiceIpv4Cidr: cluster.KubernetesNetworkConfig.ServiceIpv4Cidr,
}
for _, l := range cluster.Logging.ClusterLogging {
if *l.Enabled {
model.EnabledClusterLoggingTypes = aws.StringValueSlice(l.Types)
}
}
if cluster.EncryptionConfig != nil {
var encryptionConfigs []EncryptionConfigEntry
for _, e := range cluster.EncryptionConfig {
encryptionConfigs = append(encryptionConfigs, EncryptionConfigEntry{
Resources: aws.StringValueSlice(e.Resources),
Provider: &Provider{
KeyArn: e.Provider.KeyArn,
},
})
}
model.EncryptionConfig = encryptionConfigs
}
model.Arn = cluster.Arn
model.CertificateAuthorityData = cluster.CertificateAuthority.Data
model.ClusterSecurityGroupId = cluster.ResourcesVpcConfig.ClusterSecurityGroupId
model.Endpoint = cluster.Endpoint
if cluster.Identity != nil {
if cluster.Identity.Oidc != nil {
model.OIDCIssuerURL = cluster.Identity.Oidc.Issuer
}
}
if cluster.Tags != nil && len(cluster.Tags) > 0 {
for key, value := range cluster.Tags {
model.Tags = append(model.Tags, Tags{
Key: &key,
Value: value,
})
}
}
if slicesEqual(model.ResourcesVpcConfig.PublicAccessCidrs, []string{"0.0.0.0/0"}) {
model.ResourcesVpcConfig.PublicAccessCidrs = nil
}
}