From 5540b94de24e3291a75a87f69fd0d8912e9a39a9 Mon Sep 17 00:00:00 2001 From: Aleksandr Rybolovlev Date: Fri, 15 Dec 2023 17:02:19 +0100 Subject: [PATCH] Remove unnecessary error returns and handlings (#2364) --- ...bernetes_certificate_signing_request_v1.go | 5 +- .../resource_kubernetes_cron_job_migrate.go | 3 +- .../resource_kubernetes_csi_driver_v1.go | 10 +- .../resource_kubernetes_csi_driver_v1beta1.go | 10 +- .../resource_kubernetes_daemonset_migrate.go | 3 +- .../resource_kubernetes_deployment_migrate.go | 3 +- .../resource_kubernetes_ingress_migrate.go | 4 +- kubernetes/resource_kubernetes_job_migrate.go | 3 +- kubernetes/resource_kubernetes_job_v1.go | 5 +- kubernetes/resource_kubernetes_pod_migrate.go | 3 +- ..._kubernetes_pod_security_policy_v1beta1.go | 5 +- ...bernetes_replication_controller_migrate.go | 3 +- .../resource_kubernetes_service_migrate.go | 1 + kubernetes/resource_kubernetes_service_v1.go | 5 +- ...esource_kubernetes_stateful_set_migrate.go | 3 +- kubernetes/schema_resources_migrate.go | 30 +++--- kubernetes/schema_resources_migrate_test.go | 4 +- kubernetes/structure_csi_driver.go | 8 +- kubernetes/structure_csi_driver_v1.go | 8 +- kubernetes/structure_hostalias.go | 12 +-- kubernetes/structure_job.go | 4 +- kubernetes/structure_network_policy.go | 33 ++----- kubernetes/structure_network_policy_test.go | 16 ++-- .../structure_pod_security_policy_spec.go | 4 +- kubernetes/structure_service_spec.go | 4 +- ...ructures_certificate_signing_request_v1.go | 6 +- kubernetes/structures_container.go | 91 ++++++------------ kubernetes/structures_container_test.go | 15 +-- kubernetes/structures_env.go | 24 ++--- kubernetes/structures_pod.go | 95 ++++++------------- kubernetes/structures_stateful_set.go | 10 +- kubernetes/structures_tokenrequest.go | 22 ++--- 32 files changed, 164 insertions(+), 288 deletions(-) diff --git a/kubernetes/resource_kubernetes_certificate_signing_request_v1.go b/kubernetes/resource_kubernetes_certificate_signing_request_v1.go index e7e3e28f52..242f279ff7 100644 --- a/kubernetes/resource_kubernetes_certificate_signing_request_v1.go +++ b/kubernetes/resource_kubernetes_certificate_signing_request_v1.go @@ -93,10 +93,7 @@ func resourceKubernetesCertificateSigningRequestV1Create(ctx context.Context, d } metadata := expandMetadata(d.Get("metadata").([]interface{})) - spec, err := expandCertificateSigningRequestV1Spec(d.Get("spec").([]interface{})) - if err != nil { - return diag.FromErr(err) - } + spec := expandCertificateSigningRequestV1Spec(d.Get("spec").([]interface{})) csr := certificates.CertificateSigningRequest{ ObjectMeta: metadata, diff --git a/kubernetes/resource_kubernetes_cron_job_migrate.go b/kubernetes/resource_kubernetes_cron_job_migrate.go index 088cb1fdbc..1729cec18a 100644 --- a/kubernetes/resource_kubernetes_cron_job_migrate.go +++ b/kubernetes/resource_kubernetes_cron_job_migrate.go @@ -16,5 +16,6 @@ func resourceKubernetesCronJobV0() *schema.Resource { } func resourceKubernetesCronJobUpgradeV0(ctx context.Context, rawState map[string]interface{}, meta interface{}) (map[string]interface{}, error) { - return upgradeJobTemplatePodSpecWithResourcesFieldV0(ctx, rawState, meta) + // Return a nil error here to satisfy StateUpgradeFunc signature + return upgradeJobTemplatePodSpecWithResourcesFieldV0(ctx, rawState, meta), nil } diff --git a/kubernetes/resource_kubernetes_csi_driver_v1.go b/kubernetes/resource_kubernetes_csi_driver_v1.go index 97d4a43ce4..4e36f29c91 100644 --- a/kubernetes/resource_kubernetes_csi_driver_v1.go +++ b/kubernetes/resource_kubernetes_csi_driver_v1.go @@ -119,10 +119,7 @@ func resourceKubernetesCSIDriverV1Read(ctx context.Context, d *schema.ResourceDa return diag.FromErr(err) } - spec, err := flattenCSIDriverV1Spec(CSIDriver.Spec) - if err != nil { - return diag.FromErr(err) - } + spec := flattenCSIDriverV1Spec(CSIDriver.Spec) err = d.Set("spec", spec) if err != nil { @@ -141,10 +138,7 @@ func resourceKubernetesCSIDriverV1Update(ctx context.Context, d *schema.Resource name := d.Id() ops := patchMetadata("metadata.0.", "/metadata/", d) if d.HasChange("spec") { - diffOps, err := patchCSIDriverV1Spec("spec.0.", "/spec", d) - if err != nil { - return diag.FromErr(err) - } + diffOps := patchCSIDriverV1Spec("spec.0.", "/spec", d) ops = append(ops, *diffOps...) } data, err := ops.MarshalJSON() diff --git a/kubernetes/resource_kubernetes_csi_driver_v1beta1.go b/kubernetes/resource_kubernetes_csi_driver_v1beta1.go index 64bb8ef0c2..14e65d2e80 100644 --- a/kubernetes/resource_kubernetes_csi_driver_v1beta1.go +++ b/kubernetes/resource_kubernetes_csi_driver_v1beta1.go @@ -116,10 +116,7 @@ func resourceKubernetesCSIDriverV1Beta1Read(ctx context.Context, d *schema.Resou return diag.FromErr(err) } - spec, err := flattenCSIDriverSpec(CSIDriver.Spec) - if err != nil { - return diag.FromErr(err) - } + spec := flattenCSIDriverSpec(CSIDriver.Spec) err = d.Set("spec", spec) if err != nil { @@ -138,10 +135,7 @@ func resourceKubernetesCSIDriverV1Beta1Update(ctx context.Context, d *schema.Res name := d.Id() ops := patchMetadata("metadata.0.", "/metadata/", d) if d.HasChange("spec") { - diffOps, err := patchCSIDriverSpec("spec.0.", "/spec", d) - if err != nil { - return diag.FromErr(err) - } + diffOps := patchCSIDriverSpec("spec.0.", "/spec", d) ops = append(ops, *diffOps...) } data, err := ops.MarshalJSON() diff --git a/kubernetes/resource_kubernetes_daemonset_migrate.go b/kubernetes/resource_kubernetes_daemonset_migrate.go index 40436c5451..bf3a7d0314 100644 --- a/kubernetes/resource_kubernetes_daemonset_migrate.go +++ b/kubernetes/resource_kubernetes_daemonset_migrate.go @@ -16,5 +16,6 @@ func resourceKubernetesDaemonSetV0() *schema.Resource { } func resourceKubernetesDaemonSetUpgradeV0(ctx context.Context, rawState map[string]interface{}, meta interface{}) (map[string]interface{}, error) { - return upgradeTemplatePodSpecWithResourcesFieldV0(ctx, rawState, meta) + // Return a nil error here to satisfy StateUpgradeFunc signature + return upgradeTemplatePodSpecWithResourcesFieldV0(ctx, rawState, meta), nil } diff --git a/kubernetes/resource_kubernetes_deployment_migrate.go b/kubernetes/resource_kubernetes_deployment_migrate.go index 528b77a284..92a6ae372b 100644 --- a/kubernetes/resource_kubernetes_deployment_migrate.go +++ b/kubernetes/resource_kubernetes_deployment_migrate.go @@ -16,5 +16,6 @@ func resourceKubernetesDeploymentV0() *schema.Resource { } func resourceKubernetesDeploymentUpgradeV0(ctx context.Context, rawState map[string]interface{}, meta interface{}) (map[string]interface{}, error) { - return upgradeTemplatePodSpecWithResourcesFieldV0(ctx, rawState, meta) + // Return a nil error here to satisfy StateUpgradeFunc signature + return upgradeTemplatePodSpecWithResourcesFieldV0(ctx, rawState, meta), nil } diff --git a/kubernetes/resource_kubernetes_ingress_migrate.go b/kubernetes/resource_kubernetes_ingress_migrate.go index d5e20e63b2..c2746ee6d5 100644 --- a/kubernetes/resource_kubernetes_ingress_migrate.go +++ b/kubernetes/resource_kubernetes_ingress_migrate.go @@ -5,9 +5,10 @@ package kubernetes import ( "context" + "log" + "github.com/hashicorp/terraform-plugin-sdk/v2/helper/schema" networking "k8s.io/api/networking/v1beta1" - "log" ) // resourceKubernetesIngressV0 is a copy of the Kubernetes Ingress schema (before migration). @@ -140,5 +141,6 @@ func resourceKubernetesIngressV0() *schema.Resource { func resourceKubernetesIngressStateUpgradeV0(ctx context.Context, rawState map[string]interface{}, meta interface{}) (map[string]interface{}, error) { log.Println("[INFO] Found Kubernetes Service state v0; upgrading state to v1") delete(rawState, "load_balancer_ingress") + // Return a nil error here to satisfy StateUpgradeFunc signature return rawState, nil } diff --git a/kubernetes/resource_kubernetes_job_migrate.go b/kubernetes/resource_kubernetes_job_migrate.go index f5ed5e7e24..379ef71224 100644 --- a/kubernetes/resource_kubernetes_job_migrate.go +++ b/kubernetes/resource_kubernetes_job_migrate.go @@ -16,5 +16,6 @@ func resourceKubernetesJobV0() *schema.Resource { } func resourceKubernetesJobUpgradeV0(ctx context.Context, rawState map[string]interface{}, meta interface{}) (map[string]interface{}, error) { - return upgradeTemplatePodSpecWithResourcesFieldV0(ctx, rawState, meta) + // Return a nil error here to satisfy StateUpgradeFunc signature + return upgradeTemplatePodSpecWithResourcesFieldV0(ctx, rawState, meta), nil } diff --git a/kubernetes/resource_kubernetes_job_v1.go b/kubernetes/resource_kubernetes_job_v1.go index a2a2338007..16d88bf260 100644 --- a/kubernetes/resource_kubernetes_job_v1.go +++ b/kubernetes/resource_kubernetes_job_v1.go @@ -175,10 +175,7 @@ func resourceKubernetesJobV1Update(ctx context.Context, d *schema.ResourceData, ops := patchMetadata("metadata.0.", "/metadata/", d) if d.HasChange("spec") { - specOps, err := patchJobV1Spec("/spec", "spec.0.", d) - if err != nil { - return diag.FromErr(err) - } + specOps := patchJobV1Spec("/spec", "spec.0.", d) ops = append(ops, specOps...) } diff --git a/kubernetes/resource_kubernetes_pod_migrate.go b/kubernetes/resource_kubernetes_pod_migrate.go index 5a55cd37b6..9fe4b24e27 100644 --- a/kubernetes/resource_kubernetes_pod_migrate.go +++ b/kubernetes/resource_kubernetes_pod_migrate.go @@ -16,5 +16,6 @@ func resourceKubernetesPodV0() *schema.Resource { } func resourceKubernetesPodUpgradeV0(ctx context.Context, rawState map[string]interface{}, meta interface{}) (map[string]interface{}, error) { - return upgradePodSpecWithResourcesFieldV0(ctx, rawState, meta) + // Return a nil error here to satisfy StateUpgradeFunc signature + return upgradePodSpecWithResourcesFieldV0(ctx, rawState, meta), nil } diff --git a/kubernetes/resource_kubernetes_pod_security_policy_v1beta1.go b/kubernetes/resource_kubernetes_pod_security_policy_v1beta1.go index 196d8e890f..f1552ceb62 100644 --- a/kubernetes/resource_kubernetes_pod_security_policy_v1beta1.go +++ b/kubernetes/resource_kubernetes_pod_security_policy_v1beta1.go @@ -448,10 +448,7 @@ func resourceKubernetesPodSecurityPolicyV1Beta1Update(ctx context.Context, d *sc ops := patchMetadata("metadata.0.", "/metadata/", d) if d.HasChange("spec") { - diffOps, err := patchPodSecurityPolicySpec("spec.0.", "/spec", d) - if err != nil { - return diag.FromErr(err) - } + diffOps := patchPodSecurityPolicySpec("spec.0.", "/spec", d) ops = append(ops, *diffOps...) } data, err := ops.MarshalJSON() diff --git a/kubernetes/resource_kubernetes_replication_controller_migrate.go b/kubernetes/resource_kubernetes_replication_controller_migrate.go index b38d6b932f..c6c94f3d9f 100644 --- a/kubernetes/resource_kubernetes_replication_controller_migrate.go +++ b/kubernetes/resource_kubernetes_replication_controller_migrate.go @@ -16,5 +16,6 @@ func resourceKubernetesReplicationControllerV0() *schema.Resource { } func resourceKubernetesReplicationControllerUpgradeV0(ctx context.Context, rawState map[string]interface{}, meta interface{}) (map[string]interface{}, error) { - return upgradeTemplatePodSpecWithResourcesFieldV0(ctx, rawState, meta) + // Return a nil error here to satisfy StateUpgradeFunc signature + return upgradeTemplatePodSpecWithResourcesFieldV0(ctx, rawState, meta), nil } diff --git a/kubernetes/resource_kubernetes_service_migrate.go b/kubernetes/resource_kubernetes_service_migrate.go index 1a0507beae..708a7c71da 100644 --- a/kubernetes/resource_kubernetes_service_migrate.go +++ b/kubernetes/resource_kubernetes_service_migrate.go @@ -176,5 +176,6 @@ func resourceKubernetesServiceV0() *schema.Resource { func resourceKubernetesServiceStateUpgradeV0(ctx context.Context, rawState map[string]interface{}, meta interface{}) (map[string]interface{}, error) { log.Println("[INFO] Found Kubernetes Service state v0; upgrading state to v1") delete(rawState, "load_balancer_ingress") + // Return a nil error here to satisfy StateUpgradeFunc signature return rawState, nil } diff --git a/kubernetes/resource_kubernetes_service_v1.go b/kubernetes/resource_kubernetes_service_v1.go index 2ba9be98cf..6aa84c67af 100644 --- a/kubernetes/resource_kubernetes_service_v1.go +++ b/kubernetes/resource_kubernetes_service_v1.go @@ -449,10 +449,7 @@ func resourceKubernetesServiceV1Update(ctx context.Context, d *schema.ResourceDa if err != nil { return diag.FromErr(err) } - diffOps, err := patchServiceSpec("spec.0.", "/spec/", d, serverVersion) - if err != nil { - return diag.FromErr(err) - } + diffOps := patchServiceSpec("spec.0.", "/spec/", d, serverVersion) ops = append(ops, diffOps...) } data, err := ops.MarshalJSON() diff --git a/kubernetes/resource_kubernetes_stateful_set_migrate.go b/kubernetes/resource_kubernetes_stateful_set_migrate.go index 850f606b0c..fafdb02dfb 100644 --- a/kubernetes/resource_kubernetes_stateful_set_migrate.go +++ b/kubernetes/resource_kubernetes_stateful_set_migrate.go @@ -16,5 +16,6 @@ func resourceKubernetesStatefulSetV0() *schema.Resource { } func resourceKubernetesStatefulSetUpgradeV0(ctx context.Context, rawState map[string]interface{}, meta interface{}) (map[string]interface{}, error) { - return upgradeTemplatePodSpecWithResourcesFieldV0(ctx, rawState, meta) + // Return a nil error here to satisfy StateUpgradeFunc signature + return upgradeTemplatePodSpecWithResourcesFieldV0(ctx, rawState, meta), nil } diff --git a/kubernetes/schema_resources_migrate.go b/kubernetes/schema_resources_migrate.go index 24efce1494..166b537a6b 100644 --- a/kubernetes/schema_resources_migrate.go +++ b/kubernetes/schema_resources_migrate.go @@ -42,77 +42,77 @@ func patchPodSpecWithResourcesFieldV0(m map[string]*schema.Schema) map[string]*s return m } -func upgradeJobTemplatePodSpecWithResourcesFieldV0(ctx context.Context, rawState map[string]interface{}, meta interface{}) (map[string]interface{}, error) { +func upgradeJobTemplatePodSpecWithResourcesFieldV0(ctx context.Context, rawState map[string]interface{}, meta interface{}) map[string]interface{} { s, ok := rawState["spec"].([]interface{}) if !ok || len(s) == 0 { - return rawState, nil + return rawState } spec := s[0].(map[string]interface{}) jt, ok := spec["job_template"].([]interface{}) if !ok || len(jt) == 0 { - return rawState, nil + return rawState } jobTemplate := jt[0].(map[string]interface{}) js, ok := jobTemplate["spec"].([]interface{}) if !ok || len(js) == 0 { - return rawState, nil + return rawState } jobSpec := js[0].(map[string]interface{}) t, ok := jobSpec["template"].([]interface{}) if !ok || len(t) == 0 { - return rawState, nil + return rawState } template := t[0].(map[string]interface{}) ps, ok := template["spec"].([]interface{}) if !ok || len(ps) == 0 { - return rawState, nil + return rawState } podSpec := ps[0].(map[string]interface{}) template["spec"] = []interface{}{upgradeContainers(podSpec)} - return rawState, nil + return rawState } -func upgradeTemplatePodSpecWithResourcesFieldV0(ctx context.Context, rawState map[string]interface{}, meta interface{}) (map[string]interface{}, error) { +func upgradeTemplatePodSpecWithResourcesFieldV0(ctx context.Context, rawState map[string]interface{}, meta interface{}) map[string]interface{} { s, ok := rawState["spec"].([]interface{}) if !ok || len(s) == 0 { - return rawState, nil + return rawState } spec := s[0].(map[string]interface{}) t, ok := spec["template"].([]interface{}) if !ok || len(t) == 0 { - return rawState, nil + return rawState } template := t[0].(map[string]interface{}) ps, ok := template["spec"].([]interface{}) if !ok || len(ps) == 0 { - return rawState, nil + return rawState } podSpec := ps[0].(map[string]interface{}) template["spec"] = []interface{}{upgradeContainers(podSpec)} - return rawState, nil + return rawState } -func upgradePodSpecWithResourcesFieldV0(ctx context.Context, rawState map[string]interface{}, meta interface{}) (map[string]interface{}, error) { +func upgradePodSpecWithResourcesFieldV0(ctx context.Context, rawState map[string]interface{}, meta interface{}) map[string]interface{} { s, ok := rawState["spec"].([]interface{}) if !ok || len(s) == 0 { - return rawState, nil + return rawState } spec := s[0].(map[string]interface{}) rawState["spec"] = []interface{}{upgradeContainers(spec)} - return rawState, nil + return rawState } func upgradeContainers(rawState map[string]interface{}) map[string]interface{} { diff --git a/kubernetes/schema_resources_migrate_test.go b/kubernetes/schema_resources_migrate_test.go index db08a41d13..916b4489e8 100644 --- a/kubernetes/schema_resources_migrate_test.go +++ b/kubernetes/schema_resources_migrate_test.go @@ -132,7 +132,7 @@ func TestUpgradeTemplatePodSpecWithResourcesFieldV0(t *testing.T) { }}, } - actual, _ := upgradeTemplatePodSpecWithResourcesFieldV0(context.TODO(), v0, nil) + actual := upgradeTemplatePodSpecWithResourcesFieldV0(context.TODO(), v0, nil) if !reflect.DeepEqual(v1, actual) { t.Fatalf("\n\nexpected:\n\n%#v\n\ngot:\n\n%#v\n\n", v1, actual) @@ -190,7 +190,7 @@ func TestUpgradeTemplatePodSpecWithResourcesFieldV0_empty(t *testing.T) { }}, } - actual, _ := upgradeTemplatePodSpecWithResourcesFieldV0(context.TODO(), v0, nil) + actual := upgradeTemplatePodSpecWithResourcesFieldV0(context.TODO(), v0, nil) if !reflect.DeepEqual(v1, actual) { t.Fatalf("\n\nexpected:\n\n%#v\n\ngot:\n\n%#v\n\n", v1, actual) diff --git a/kubernetes/structure_csi_driver.go b/kubernetes/structure_csi_driver.go index c2a00779f3..0dfc9ec827 100644 --- a/kubernetes/structure_csi_driver.go +++ b/kubernetes/structure_csi_driver.go @@ -38,7 +38,7 @@ func expandCSIDriverVolumeLifecycleModes(l []interface{}) []storage.VolumeLifecy return lifecycleModes } -func flattenCSIDriverSpec(in storage.CSIDriverSpec) ([]interface{}, error) { +func flattenCSIDriverSpec(in storage.CSIDriverSpec) []interface{} { att := make(map[string]interface{}) att["attach_required"] = in.AttachRequired @@ -51,10 +51,10 @@ func flattenCSIDriverSpec(in storage.CSIDriverSpec) ([]interface{}, error) { att["volume_lifecycle_modes"] = in.VolumeLifecycleModes } - return []interface{}{att}, nil + return []interface{}{att} } -func patchCSIDriverSpec(keyPrefix, pathPrefix string, d *schema.ResourceData) (*PatchOperations, error) { +func patchCSIDriverSpec(keyPrefix, pathPrefix string, d *schema.ResourceData) *PatchOperations { ops := make(PatchOperations, 0) if d.HasChange(keyPrefix + "attach_required") { ops = append(ops, &ReplaceOperation{ @@ -77,5 +77,5 @@ func patchCSIDriverSpec(keyPrefix, pathPrefix string, d *schema.ResourceData) (* }) } - return &ops, nil + return &ops } diff --git a/kubernetes/structure_csi_driver_v1.go b/kubernetes/structure_csi_driver_v1.go index be85e146bf..8141009cc5 100644 --- a/kubernetes/structure_csi_driver_v1.go +++ b/kubernetes/structure_csi_driver_v1.go @@ -38,7 +38,7 @@ func expandCSIDriverV1VolumeLifecycleModes(l []interface{}) []storage.VolumeLife return lifecycleModes } -func flattenCSIDriverV1Spec(in storage.CSIDriverSpec) ([]interface{}, error) { +func flattenCSIDriverV1Spec(in storage.CSIDriverSpec) []interface{} { att := make(map[string]interface{}) att["attach_required"] = in.AttachRequired @@ -51,10 +51,10 @@ func flattenCSIDriverV1Spec(in storage.CSIDriverSpec) ([]interface{}, error) { att["volume_lifecycle_modes"] = in.VolumeLifecycleModes } - return []interface{}{att}, nil + return []interface{}{att} } -func patchCSIDriverV1Spec(keyPrefix, pathPrefix string, d *schema.ResourceData) (*PatchOperations, error) { +func patchCSIDriverV1Spec(keyPrefix, pathPrefix string, d *schema.ResourceData) *PatchOperations { ops := make(PatchOperations, 0) if d.HasChange(keyPrefix + "attach_required") { ops = append(ops, &ReplaceOperation{ @@ -77,5 +77,5 @@ func patchCSIDriverV1Spec(keyPrefix, pathPrefix string, d *schema.ResourceData) }) } - return &ops, nil + return &ops } diff --git a/kubernetes/structure_hostalias.go b/kubernetes/structure_hostalias.go index a3c3d6c49a..c9aa71f3d6 100644 --- a/kubernetes/structure_hostalias.go +++ b/kubernetes/structure_hostalias.go @@ -3,9 +3,9 @@ package kubernetes -import "k8s.io/api/core/v1" +import corev1 "k8s.io/api/core/v1" -func flattenHostaliases(in []v1.HostAlias) []interface{} { +func flattenHostaliases(in []corev1.HostAlias) []interface{} { att := make([]interface{}, len(in)) for i, v := range in { ha := make(map[string]interface{}) @@ -17,12 +17,12 @@ func flattenHostaliases(in []v1.HostAlias) []interface{} { } return att } -func expandHostaliases(hostalias []interface{}) ([]v1.HostAlias, error) { +func expandHostaliases(hostalias []interface{}) []corev1.HostAlias { if len(hostalias) == 0 { - return []v1.HostAlias{}, nil + return []corev1.HostAlias{} } - hs := make([]v1.HostAlias, len(hostalias)) + hs := make([]corev1.HostAlias, len(hostalias)) for i, ha := range hostalias { hoas := ha.(map[string]interface{}) @@ -34,5 +34,5 @@ func expandHostaliases(hostalias []interface{}) ([]v1.HostAlias, error) { hs[i].Hostnames = expandStringSlice(hostnames) } } - return hs, nil + return hs } diff --git a/kubernetes/structure_job.go b/kubernetes/structure_job.go index 0aaedfb4f5..1846f2d0af 100644 --- a/kubernetes/structure_job.go +++ b/kubernetes/structure_job.go @@ -111,7 +111,7 @@ func expandJobV1Spec(j []interface{}) (batchv1.JobSpec, error) { return obj, nil } -func patchJobV1Spec(pathPrefix, prefix string, d *schema.ResourceData) (PatchOperations, error) { +func patchJobV1Spec(pathPrefix, prefix string, d *schema.ResourceData) PatchOperations { ops := make([]PatchOperation, 0) if d.HasChange(prefix + "active_deadline_seconds") { @@ -146,7 +146,7 @@ func patchJobV1Spec(pathPrefix, prefix string, d *schema.ResourceData) (PatchOpe }) } - return ops, nil + return ops } // removeGeneratedLabels removes server-generated labels diff --git a/kubernetes/structure_network_policy.go b/kubernetes/structure_network_policy.go index 2da9d0536d..ee8577f76d 100644 --- a/kubernetes/structure_network_policy.go +++ b/kubernetes/structure_network_policy.go @@ -131,11 +131,8 @@ func expandNetworkPolicyV1Spec(in []interface{}) (*networkingv1.NetworkPolicySpe } spec.Egress = *egress } - policyTypes, err := expandNetworkPolicyV1Types(m["policy_types"].([]interface{})) - if err != nil { - return nil, err - } - spec.PolicyTypes = *policyTypes + + spec.PolicyTypes = expandNetworkPolicyV1Types(m["policy_types"].([]interface{})) return &spec, nil } @@ -152,11 +149,7 @@ func expandNetworkPolicyV1Ingress(l []interface{}) (*[]networkingv1.NetworkPolic } ingresses[i] = networkingv1.NetworkPolicyIngressRule{} if v, ok := in["ports"].([]interface{}); ok && len(v) > 0 { - policyPorts, err := expandNetworkPolicyV1Ports(v) - if err != nil { - return nil, err - } - ingresses[i].Ports = *policyPorts + ingresses[i].Ports = *expandNetworkPolicyV1Ports(v) } if v, ok := in["from"].([]interface{}); ok && len(v) > 0 { policyPeers, err := expandNetworkPolicyV1Peer(v) @@ -181,11 +174,7 @@ func expandNetworkPolicyV1Egress(l []interface{}) (*[]networkingv1.NetworkPolicy } egresses[i] = networkingv1.NetworkPolicyEgressRule{} if v, ok := in["ports"].([]interface{}); ok && len(v) > 0 { - policyPorts, err := expandNetworkPolicyV1Ports(v) - if err != nil { - return nil, err - } - egresses[i].Ports = *policyPorts + egresses[i].Ports = *expandNetworkPolicyV1Ports(v) } if v, ok := in["to"].([]interface{}); ok && len(v) > 0 { policyPeers, err := expandNetworkPolicyV1Peer(v) @@ -198,7 +187,7 @@ func expandNetworkPolicyV1Egress(l []interface{}) (*[]networkingv1.NetworkPolicy return &egresses, nil } -func expandNetworkPolicyV1Ports(l []interface{}) (*[]networkingv1.NetworkPolicyPort, error) { +func expandNetworkPolicyV1Ports(l []interface{}) *[]networkingv1.NetworkPolicyPort { policyPorts := make([]networkingv1.NetworkPolicyPort, len(l)) for i, port := range l { in, ok := port.(map[string]interface{}) @@ -214,7 +203,7 @@ func expandNetworkPolicyV1Ports(l []interface{}) (*[]networkingv1.NetworkPolicyP policyPorts[i].Protocol = &v } } - return &policyPorts, nil + return &policyPorts } func expandNetworkPolicyV1Peer(l []interface{}) (*[]networkingv1.NetworkPolicyPeer, error) { @@ -262,12 +251,12 @@ func expandIPBlock(l []interface{}) (*networkingv1.IPBlock, error) { return &ipBlock, nil } -func expandNetworkPolicyV1Types(l []interface{}) (*[]networkingv1.PolicyType, error) { +func expandNetworkPolicyV1Types(l []interface{}) []networkingv1.PolicyType { policyTypes := make([]networkingv1.PolicyType, 0) for _, policyType := range l { policyTypes = append(policyTypes, networkingv1.PolicyType(policyType.(string))) } - return &policyTypes, nil + return policyTypes } // Patchers @@ -317,13 +306,9 @@ func patchNetworkPolicyV1Spec(keyPrefix, pathPrefix string, d *schema.ResourceDa }) } if d.HasChange(keyPrefix + "policy_types") { - policyTypes, err := expandNetworkPolicyV1Types(d.Get(keyPrefix + "policy_types").([]interface{})) - if err != nil { - return nil, err - } ops = append(ops, &ReplaceOperation{ Path: pathPrefix + "/policyTypes", - Value: *policyTypes, + Value: expandNetworkPolicyV1Types(d.Get(keyPrefix + "policy_types").([]interface{})), }) } return &ops, nil diff --git a/kubernetes/structure_network_policy_test.go b/kubernetes/structure_network_policy_test.go index 90da464d85..0e29f1b4cb 100644 --- a/kubernetes/structure_network_policy_test.go +++ b/kubernetes/structure_network_policy_test.go @@ -83,7 +83,7 @@ func TestExpandNetworkPolicyIngressPorts(t *testing.T) { cases := []struct { Input []interface{} - ExpectedOutput []networkingv1.NetworkPolicyPort + ExpectedOutput *[]networkingv1.NetworkPolicyPort }{ { []interface{}{ @@ -92,7 +92,7 @@ func TestExpandNetworkPolicyIngressPorts(t *testing.T) { "protocol": "TCP", }, }, - []networkingv1.NetworkPolicyPort{{ + &[]networkingv1.NetworkPolicyPort{{ Port: &portName, Protocol: &protoTCP, }}, @@ -103,7 +103,7 @@ func TestExpandNetworkPolicyIngressPorts(t *testing.T) { "port": "http", }, }, - []networkingv1.NetworkPolicyPort{{ + &[]networkingv1.NetworkPolicyPort{{ Port: &portName, }}, }, @@ -114,24 +114,24 @@ func TestExpandNetworkPolicyIngressPorts(t *testing.T) { "protocol": "UDP", }, }, - []networkingv1.NetworkPolicyPort{{ + &[]networkingv1.NetworkPolicyPort{{ Port: &portNumerical, Protocol: &protoUDP, }}, }, { []interface{}{map[string]interface{}{}}, - []networkingv1.NetworkPolicyPort{{}}, + &[]networkingv1.NetworkPolicyPort{{}}, }, { []interface{}{}, - []networkingv1.NetworkPolicyPort{}, + &[]networkingv1.NetworkPolicyPort{}, }, } for _, tc := range cases { - output, _ := expandNetworkPolicyV1Ports(tc.Input) - if !reflect.DeepEqual(output, &tc.ExpectedOutput) { + output := expandNetworkPolicyV1Ports(tc.Input) + if !reflect.DeepEqual(output, tc.ExpectedOutput) { t.Fatalf("Unexpected output from flattener.\nExpected: %#v\nGiven: %#v", tc.ExpectedOutput, output) } diff --git a/kubernetes/structure_pod_security_policy_spec.go b/kubernetes/structure_pod_security_policy_spec.go index fe3a555744..e5dbadd3f3 100644 --- a/kubernetes/structure_pod_security_policy_spec.go +++ b/kubernetes/structure_pod_security_policy_spec.go @@ -496,7 +496,7 @@ func expandVolumeFSTypeSlice(in []interface{}) []v1beta1.FSType { // Patchers -func patchPodSecurityPolicySpec(keyPrefix string, pathPrefix string, d *schema.ResourceData) (*PatchOperations, error) { +func patchPodSecurityPolicySpec(keyPrefix string, pathPrefix string, d *schema.ResourceData) *PatchOperations { ops := make(PatchOperations, 0) if d.HasChange(keyPrefix + "allow_privilege_escalation") { @@ -659,5 +659,5 @@ func patchPodSecurityPolicySpec(keyPrefix string, pathPrefix string, d *schema.R }) } - return &ops, nil + return &ops } diff --git a/kubernetes/structure_service_spec.go b/kubernetes/structure_service_spec.go index fd02da747e..a364b11cdd 100644 --- a/kubernetes/structure_service_spec.go +++ b/kubernetes/structure_service_spec.go @@ -286,7 +286,7 @@ func expandServiceSpec(l []interface{}) v1.ServiceSpec { // Patch Ops -func patchServiceSpec(keyPrefix, pathPrefix string, d *schema.ResourceData, kv *gversion.Version) (PatchOperations, error) { +func patchServiceSpec(keyPrefix, pathPrefix string, d *schema.ResourceData, kv *gversion.Version) PatchOperations { ops := make([]PatchOperation, 0) if d.HasChange(keyPrefix + "allocate_load_balancer_node_ports") { @@ -426,5 +426,5 @@ func patchServiceSpec(keyPrefix, pathPrefix string, d *schema.ResourceData, kv * Value: int32(d.Get(keyPrefix + "health_check_node_port").(int)), }) } - return ops, nil + return ops } diff --git a/kubernetes/structures_certificate_signing_request_v1.go b/kubernetes/structures_certificate_signing_request_v1.go index be61585b83..6b6b1355ea 100644 --- a/kubernetes/structures_certificate_signing_request_v1.go +++ b/kubernetes/structures_certificate_signing_request_v1.go @@ -9,10 +9,10 @@ import ( certificates "k8s.io/api/certificates/v1" ) -func expandCertificateSigningRequestV1Spec(csr []interface{}) (*certificates.CertificateSigningRequestSpec, error) { +func expandCertificateSigningRequestV1Spec(csr []interface{}) *certificates.CertificateSigningRequestSpec { obj := &certificates.CertificateSigningRequestSpec{} if len(csr) == 0 || csr[0] == nil { - return obj, nil + return obj } in := csr[0].(map[string]interface{}) obj.Request = []byte(in["request"].(string)) @@ -22,7 +22,7 @@ func expandCertificateSigningRequestV1Spec(csr []interface{}) (*certificates.Cer if v, ok := in["signer_name"].(string); ok && v != "" { obj.SignerName = v } - return obj, nil + return obj } func expandCertificateSigningRequestV1Usages(s []interface{}) []certificates.KeyUsage { diff --git a/kubernetes/structures_container.go b/kubernetes/structures_container.go index 66f7ce712f..867c37def4 100644 --- a/kubernetes/structures_container.go +++ b/kubernetes/structures_container.go @@ -279,7 +279,7 @@ func flattenValueFrom(in *v1.EnvVarSource) []interface{} { return []interface{}{att} } -func flattenContainerVolumeMounts(in []v1.VolumeMount) ([]interface{}, error) { +func flattenContainerVolumeMounts(in []v1.VolumeMount) []interface{} { att := make([]interface{}, len(in)) for i, v := range in { @@ -304,7 +304,7 @@ func flattenContainerVolumeMounts(in []v1.VolumeMount) ([]interface{}, error) { } att[i] = m } - return att, nil + return att } func flattenContainerEnvs(in []v1.EnvVar) []interface{} { @@ -431,12 +431,7 @@ func flattenContainers(in []v1.Container, serviceAccountRegex string) ([]interfa break } } - - volumeMounts, err := flattenContainerVolumeMounts(v.VolumeMounts) - if err != nil { - return nil, err - } - c["volume_mount"] = volumeMounts + c["volume_mount"] = flattenContainerVolumeMounts(v.VolumeMounts) } att[i] = c } @@ -486,10 +481,7 @@ func expandContainers(ctrs []interface{}) ([]v1.Container, error) { } if v, ok := ctr["port"].([]interface{}); ok && len(v) > 0 { - cp, err := expandContainerPort(v) - if err != nil { - return cs, err - } + cp := expandContainerPort(v) for _, p := range cp { cs[i].Ports = append(cs[i].Ports, *p) } @@ -551,11 +543,7 @@ func expandContainers(ctrs []interface{}) ([]v1.Container, error) { } if v, ok := ctr["volume_mount"].([]interface{}); ok && len(v) > 0 { - var err error - cs[i].VolumeMounts, err = expandContainerVolumeMounts(v) - if err != nil { - return cs, err - } + cs[i].VolumeMounts = expandContainerVolumeMounts(v) } if v, ok := ctr["working_dir"].(string); ok && v != "" { @@ -784,9 +772,9 @@ func expandLifeCycle(l []interface{}) *v1.Lifecycle { return obj } -func expandContainerVolumeMounts(in []interface{}) ([]v1.VolumeMount, error) { +func expandContainerVolumeMounts(in []interface{}) []v1.VolumeMount { if len(in) == 0 { - return []v1.VolumeMount{}, nil + return []v1.VolumeMount{} } vmp := make([]v1.VolumeMount, len(in)) for i, c := range in { @@ -808,7 +796,7 @@ func expandContainerVolumeMounts(in []interface{}) ([]v1.VolumeMount, error) { vmp[i].MountPropagation = &mp } } - return vmp, nil + return vmp } func expandContainerEnv(in []interface{}) ([]v1.EnvVar, error) { @@ -849,30 +837,22 @@ func expandContainerEnvFrom(in []interface{}) ([]v1.EnvFromSource, error) { for i, c := range in { p := c.(map[string]interface{}) if v, ok := p["config_map_ref"].([]interface{}); ok && len(v) > 0 { - var err error - envFroms[i].ConfigMapRef, err = expandConfigMapRef(v) - if err != nil { - return envFroms, err - } + envFroms[i].ConfigMapRef = expandConfigMapRef(v) } if value, ok := p["prefix"]; ok { envFroms[i].Prefix = value.(string) } if v, ok := p["secret_ref"].([]interface{}); ok && len(v) > 0 { - var err error - envFroms[i].SecretRef, err = expandSecretRef(v) - if err != nil { - return envFroms, err - } + envFroms[i].SecretRef = expandSecretRef(v) } } return envFroms, nil } -func expandContainerPort(in []interface{}) ([]*v1.ContainerPort, error) { +func expandContainerPort(in []interface{}) []*v1.ContainerPort { ports := make([]*v1.ContainerPort, len(in)) if len(in) == 0 { - return ports, nil + return ports } for i, c := range in { p := c.(map[string]interface{}) @@ -893,12 +873,12 @@ func expandContainerPort(in []interface{}) ([]*v1.ContainerPort, error) { ports[i].Protocol = v1.Protocol(protocol.(string)) } } - return ports, nil + return ports } -func expandConfigMapKeyRef(r []interface{}) (*v1.ConfigMapKeySelector, error) { +func expandConfigMapKeyRef(r []interface{}) *v1.ConfigMapKeySelector { if len(r) == 0 || r[0] == nil { - return &v1.ConfigMapKeySelector{}, nil + return &v1.ConfigMapKeySelector{} } in := r[0].(map[string]interface{}) obj := &v1.ConfigMapKeySelector{} @@ -912,12 +892,12 @@ func expandConfigMapKeyRef(r []interface{}) (*v1.ConfigMapKeySelector, error) { if v, ok := in["optional"]; ok { obj.Optional = ptrToBool(v.(bool)) } - return obj, nil + return obj } -func expandFieldRef(r []interface{}) (*v1.ObjectFieldSelector, error) { +func expandFieldRef(r []interface{}) *v1.ObjectFieldSelector { if len(r) == 0 || r[0] == nil { - return &v1.ObjectFieldSelector{}, nil + return &v1.ObjectFieldSelector{} } in := r[0].(map[string]interface{}) obj := &v1.ObjectFieldSelector{} @@ -928,7 +908,7 @@ func expandFieldRef(r []interface{}) (*v1.ObjectFieldSelector, error) { if v, ok := in["field_path"].(string); ok { obj.FieldPath = v } - return obj, nil + return obj } func expandResourceFieldRef(r []interface{}) (*v1.ResourceFieldSelector, error) { if len(r) == 0 || r[0] == nil { @@ -953,9 +933,9 @@ func expandResourceFieldRef(r []interface{}) (*v1.ResourceFieldSelector, error) return obj, nil } -func expandSecretRef(r []interface{}) (*v1.SecretEnvSource, error) { +func expandSecretRef(r []interface{}) *v1.SecretEnvSource { if len(r) == 0 || r[0] == nil { - return &v1.SecretEnvSource{}, nil + return &v1.SecretEnvSource{} } in := r[0].(map[string]interface{}) obj := &v1.SecretEnvSource{} @@ -967,12 +947,12 @@ func expandSecretRef(r []interface{}) (*v1.SecretEnvSource, error) { obj.Optional = ptrToBool(v.(bool)) } - return obj, nil + return obj } -func expandSecretKeyRef(r []interface{}) (*v1.SecretKeySelector, error) { +func expandSecretKeyRef(r []interface{}) *v1.SecretKeySelector { if len(r) == 0 || r[0] == nil { - return &v1.SecretKeySelector{}, nil + return &v1.SecretKeySelector{} } in := r[0].(map[string]interface{}) obj := &v1.SecretKeySelector{} @@ -986,7 +966,7 @@ func expandSecretKeyRef(r []interface{}) (*v1.SecretKeySelector, error) { if v, ok := in["optional"]; ok { obj.Optional = ptrToBool(v.(bool)) } - return obj, nil + return obj } func expandEnvValueFrom(r []interface{}) (*v1.EnvVarSource, error) { @@ -998,22 +978,13 @@ func expandEnvValueFrom(r []interface{}) (*v1.EnvVarSource, error) { var err error if v, ok := in["config_map_key_ref"].([]interface{}); ok && len(v) > 0 { - obj.ConfigMapKeyRef, err = expandConfigMapKeyRef(v) - if err != nil { - return obj, err - } + obj.ConfigMapKeyRef = expandConfigMapKeyRef(v) } if v, ok := in["field_ref"].([]interface{}); ok && len(v) > 0 { - obj.FieldRef, err = expandFieldRef(v) - if err != nil { - return obj, err - } + obj.FieldRef = expandFieldRef(v) } if v, ok := in["secret_key_ref"].([]interface{}); ok && len(v) > 0 { - obj.SecretKeyRef, err = expandSecretKeyRef(v) - if err != nil { - return obj, err - } + obj.SecretKeyRef = expandSecretKeyRef(v) } if v, ok := in["resource_field_ref"].([]interface{}); ok && len(v) > 0 { obj.ResourceFieldRef, err = expandResourceFieldRef(v) @@ -1025,9 +996,9 @@ func expandEnvValueFrom(r []interface{}) (*v1.EnvVarSource, error) { } -func expandConfigMapRef(r []interface{}) (*v1.ConfigMapEnvSource, error) { +func expandConfigMapRef(r []interface{}) *v1.ConfigMapEnvSource { if len(r) == 0 || r[0] == nil { - return &v1.ConfigMapEnvSource{}, nil + return &v1.ConfigMapEnvSource{} } in := r[0].(map[string]interface{}) obj := &v1.ConfigMapEnvSource{} @@ -1039,7 +1010,7 @@ func expandConfigMapRef(r []interface{}) (*v1.ConfigMapEnvSource, error) { obj.Optional = ptrToBool(v.(bool)) } - return obj, nil + return obj } func expandContainerResourceRequirements(l []interface{}) (*v1.ResourceRequirements, error) { diff --git a/kubernetes/structures_container_test.go b/kubernetes/structures_container_test.go index 12ccc76c8e..de44a25176 100644 --- a/kubernetes/structures_container_test.go +++ b/kubernetes/structures_container_test.go @@ -102,10 +102,7 @@ func TestExpandSecretKeyRef(t *testing.T) { } for _, tc := range cases { - output, err := expandSecretKeyRef(tc.Input) - if err != nil { - t.Fatalf("Unexpected failure in expander.\nInput: %#v, error: %#v", tc.Input, err) - } + output := expandSecretKeyRef(tc.Input) if !reflect.DeepEqual(output, tc.ExpectedOutput) { t.Fatalf("Unexpected output from expander.\nExpected: %#v\nGiven: %#v", tc.ExpectedOutput, output) @@ -205,10 +202,7 @@ func TestExpandConfigMapKeyRef(t *testing.T) { } for _, tc := range cases { - output, err := expandConfigMapKeyRef(tc.Input) - if err != nil { - t.Fatalf("Unexpected failure in expander.\nInput: %#v, error: %#v", tc.Input, err) - } + output := expandConfigMapKeyRef(tc.Input) if !reflect.DeepEqual(output, tc.ExpectedOutput) { t.Fatalf("Unexpected output from expander.\nExpected: %#v\nGiven: %#v", tc.ExpectedOutput, output) @@ -310,10 +304,7 @@ func TestFlattenContainerVolumeMounts_mountPropogation(t *testing.T) { } for _, tc := range cases { - output, err := flattenContainerVolumeMounts(tc.Input) - if err != nil { - t.Fatalf("Unexpected failure in flattener.\nInput: %#v, error: %#v", tc.Input, err) - } + output := flattenContainerVolumeMounts(tc.Input) if !reflect.DeepEqual(output, tc.Expected) { t.Fatalf("Unexpected output from expander.\nExpected: %#v\nGiven: %#v", tc.Expected, output) diff --git a/kubernetes/structures_env.go b/kubernetes/structures_env.go index 71bdc30332..0ca530bfd2 100644 --- a/kubernetes/structures_env.go +++ b/kubernetes/structures_env.go @@ -23,11 +23,7 @@ func expandEnv(e []interface{}) []map[string]interface{} { newEnv["value"] = value } if v, ok := p["value_from"].([]interface{}); ok && len(v) > 0 { - var err error - newEnv["valueFrom"], err = expandEnvValueFromMap(v[0]) - if err != nil { - return envs - } + newEnv["valueFrom"] = expandEnvValueFromMap(v[0]) } envs = append(envs, newEnv) } @@ -35,9 +31,9 @@ func expandEnv(e []interface{}) []map[string]interface{} { return envs } -func expandEnvValueFromMap(e interface{}) (map[string]interface{}, error) { +func expandEnvValueFromMap(e interface{}) map[string]interface{} { if e == nil { - return nil, nil + return nil } in := e.(map[string]interface{}) @@ -56,7 +52,7 @@ func expandEnvValueFromMap(e interface{}) (map[string]interface{}, error) { expandedValues["secretKeyRef"] = v[0] } - return expandedValues, nil + return expandedValues } func expandFieldRefMap(e interface{}) map[string]interface{} { @@ -117,11 +113,7 @@ func flattenEnv(e []interface{}) []interface{} { newEnv["value"] = value } if v, ok := p["valueFrom"].(map[string]interface{}); ok && len(v) > 0 { - var err error - newEnv["value_from"], err = flattenEnvValueFromMap(v) - if err != nil { - return envs - } + newEnv["value_from"] = flattenEnvValueFromMap(v) } envs = append(envs, newEnv) } @@ -129,9 +121,9 @@ func flattenEnv(e []interface{}) []interface{} { return envs } -func flattenEnvValueFromMap(e interface{}) ([]interface{}, error) { +func flattenEnvValueFromMap(e interface{}) []interface{} { if e == nil { - return nil, nil + return nil } in := e.(map[string]interface{}) @@ -150,7 +142,7 @@ func flattenEnvValueFromMap(e interface{}) ([]interface{}, error) { expandedValues["secret_key_ref"] = []interface{}{v} } - return []interface{}{expandedValues}, nil + return []interface{}{expandedValues} } func flattenFieldRefMap(e interface{}) []interface{} { diff --git a/kubernetes/structures_pod.go b/kubernetes/structures_pod.go index df3308d888..49f90a4608 100644 --- a/kubernetes/structures_pod.go +++ b/kubernetes/structures_pod.go @@ -64,11 +64,7 @@ func flattenPodSpec(in v1.PodSpec) ([]interface{}, error) { } att["container"] = containers - gates, err := flattenReadinessGates(in.ReadinessGates) - if err != nil { - return nil, err - } - att["readiness_gate"] = gates + att["readiness_gate"] = flattenReadinessGates(in.ReadinessGates) initContainers, err := flattenContainers(in.InitContainers, serviceAccountRegex) if err != nil { @@ -164,11 +160,7 @@ func flattenPodSpec(in v1.PodSpec) ([]interface{}, error) { } } - v, err := flattenVolumes(in.Volumes) - if err != nil { - return []interface{}{att}, err - } - att["volume"] = v + att["volume"] = flattenVolumes(in.Volumes) } return []interface{}{att}, nil } @@ -188,11 +180,7 @@ func flattenPodDNSConfig(in *v1.PodDNSConfig) ([]interface{}, error) { att["searches"] = in.Searches } if len(in.Options) > 0 { - v, err := flattenPodDNSConfigOptions(in.Options) - if err != nil { - return []interface{}{att}, err - } - att["option"] = v + att["option"] = flattenPodDNSConfigOptions(in.Options) } if len(att) > 0 { @@ -201,7 +189,7 @@ func flattenPodDNSConfig(in *v1.PodDNSConfig) ([]interface{}, error) { return []interface{}{}, nil } -func flattenPodDNSConfigOptions(options []v1.PodDNSConfigOption) ([]interface{}, error) { +func flattenPodDNSConfigOptions(options []v1.PodDNSConfigOption) []interface{} { att := make([]interface{}, len(options)) for i, v := range options { obj := map[string]interface{}{} @@ -214,7 +202,7 @@ func flattenPodDNSConfigOptions(options []v1.PodDNSConfigOption) ([]interface{}, } att[i] = obj } - return att, nil + return att } func flattenPodSecurityContext(in *v1.PodSecurityContext) []interface{} { @@ -356,7 +344,7 @@ func flattenTopologySpreadConstraints(tsc []v1.TopologySpreadConstraint) []inter return att } -func flattenVolumes(volumes []v1.Volume) ([]interface{}, error) { +func flattenVolumes(volumes []v1.Volume) []interface{} { att := make([]interface{}, len(volumes)) for i, v := range volumes { obj := map[string]interface{}{} @@ -444,7 +432,7 @@ func flattenVolumes(volumes []v1.Volume) ([]interface{}, error) { } att[i] = obj } - return att, nil + return att } func flattenPersistentVolumeClaimVolumeSource(in *v1.PersistentVolumeClaimVolumeSource) []interface{} { @@ -666,14 +654,14 @@ func flattenServiceAccountTokenProjection(in *v1.ServiceAccountTokenProjection) return []interface{}{att} } -func flattenReadinessGates(in []v1.PodReadinessGate) ([]interface{}, error) { +func flattenReadinessGates(in []v1.PodReadinessGate) []interface{} { att := make([]interface{}, len(in)) for i, v := range in { c := make(map[string]interface{}) c["condition_type"] = v.ConditionType att[i] = c } - return att, nil + return att } func flattenPersistentVolumeClaimMetadata(in metav1.ObjectMeta) map[string]interface{} { @@ -754,11 +742,7 @@ func expandPodSpec(p []interface{}) (*v1.PodSpec, error) { } if v, ok := in["readiness_gate"].([]interface{}); ok && len(v) > 0 { - cs, err := expandReadinessGates(v) - if err != nil { - return obj, err - } - obj.ReadinessGates = cs + obj.ReadinessGates = expandReadinessGates(v) } if v, ok := in["init_container"].([]interface{}); ok && len(v) > 0 { @@ -786,11 +770,7 @@ func expandPodSpec(p []interface{}) (*v1.PodSpec, error) { } if v, ok := in["host_aliases"].([]interface{}); ok && len(v) > 0 { - hs, err := expandHostaliases(v) - if err != nil { - return obj, err - } - obj.HostAliases = hs + obj.HostAliases = expandHostaliases(v) } if v, ok := in["host_ipc"]; ok { @@ -891,13 +871,7 @@ func expandPodSpec(p []interface{}) (*v1.PodSpec, error) { } if v, ok := in["topology_spread_constraint"].([]interface{}); ok && len(v) > 0 { - ts, err := expandTopologySpreadConstraints(v) - if err != nil { - return obj, err - } - for _, t := range ts { - obj.TopologySpreadConstraints = append(obj.TopologySpreadConstraints, *t) - } + obj.TopologySpreadConstraints = expandTopologySpreadConstraints(v) } return obj, nil @@ -977,18 +951,14 @@ func expandPodDNSConfig(l []interface{}) (*v1.PodDNSConfig, error) { obj.Searches = expandStringSlice(v) } if v, ok := in["option"].([]interface{}); ok { - opts, err := expandDNSConfigOptions(v) - if err != nil { - return obj, err - } - obj.Options = opts + obj.Options = expandDNSConfigOptions(v) } return obj, nil } -func expandDNSConfigOptions(options []interface{}) ([]v1.PodDNSConfigOption, error) { +func expandDNSConfigOptions(options []interface{}) []v1.PodDNSConfigOption { if len(options) == 0 { - return []v1.PodDNSConfigOption{}, nil + return []v1.PodDNSConfigOption{} } opts := make([]v1.PodDNSConfigOption, len(options)) for i, c := range options { @@ -1003,7 +973,7 @@ func expandDNSConfigOptions(options []interface{}) ([]v1.PodDNSConfigOption, err opts[i] = opt } - return opts, nil + return opts } func expandPodSecurityContext(l []interface{}) (*v1.PodSecurityContext, error) { @@ -1157,10 +1127,7 @@ func expandDownwardAPIVolumeFile(in []interface{}) ([]v1.DownwardAPIVolumeFile, dapivf[i].Path = v } if v, ok := p["field_ref"].([]interface{}); ok && len(v) > 0 { - dapivf[i].FieldRef, err = expandFieldRef(v) - if err != nil { - return dapivf, err - } + dapivf[i].FieldRef = expandFieldRef(v) } if v, ok := p["resource_field_ref"].([]interface{}); ok && len(v) > 0 { dapivf[i].ResourceFieldRef, err = expandResourceFieldRef(v) @@ -1448,21 +1415,17 @@ func expandProjectedDownwardAPI(downwardAPI map[string]interface{}) (*v1.Downwar func expandProjectedServiceAccountTokens(sats []interface{}) ([]v1.VolumeProjection, error) { out := make([]v1.VolumeProjection, 0, len(sats)) - for i, in := range sats { + for _, in := range sats { if v, ok := in.(map[string]interface{}); ok { - sat, err := expandProjectedServiceAccountToken(v) - if err != nil { - return nil, fmt.Errorf("expanding service account token #%d: %v", i+1, err) - } out = append(out, v1.VolumeProjection{ - ServiceAccountToken: sat, + ServiceAccountToken: expandProjectedServiceAccountToken(v), }) } } return out, nil } -func expandProjectedServiceAccountToken(sat map[string]interface{}) (*v1.ServiceAccountTokenProjection, error) { +func expandProjectedServiceAccountToken(sat map[string]interface{}) *v1.ServiceAccountTokenProjection { s := &v1.ServiceAccountTokenProjection{} if value, ok := sat["audience"].(string); ok { s.Audience = value @@ -1473,7 +1436,7 @@ func expandProjectedServiceAccountToken(sat map[string]interface{}) (*v1.Service if value, ok := sat["path"].(string); ok { s.Path = value } - return s, nil + return s } func expandTolerations(tolerations []interface{}) ([]*v1.Toleration, error) { @@ -1508,14 +1471,14 @@ func expandTolerations(tolerations []interface{}) ([]*v1.Toleration, error) { return ts, nil } -func expandTopologySpreadConstraints(tsc []interface{}) ([]*v1.TopologySpreadConstraint, error) { +func expandTopologySpreadConstraints(tsc []interface{}) []v1.TopologySpreadConstraint { if len(tsc) == 0 { - return []*v1.TopologySpreadConstraint{}, nil + return []v1.TopologySpreadConstraint{} } - ts := make([]*v1.TopologySpreadConstraint, len(tsc)) + ts := make([]v1.TopologySpreadConstraint, len(tsc)) for i, t := range tsc { m := t.(map[string]interface{}) - ts[i] = &v1.TopologySpreadConstraint{} + ts[i] = v1.TopologySpreadConstraint{} if value, ok := m["topology_key"].(string); ok { ts[i].TopologyKey = value @@ -1534,7 +1497,7 @@ func expandTopologySpreadConstraints(tsc []interface{}) ([]*v1.TopologySpreadCon } } - return ts, nil + return ts } func expandVolumes(volumes []interface{}) ([]v1.Volume, error) { @@ -1657,9 +1620,9 @@ func expandVolumes(volumes []interface{}) ([]v1.Volume, error) { return vl, nil } -func expandReadinessGates(gates []interface{}) ([]v1.PodReadinessGate, error) { +func expandReadinessGates(gates []interface{}) []v1.PodReadinessGate { if len(gates) == 0 || gates[0] == nil { - return []v1.PodReadinessGate{}, nil + return []v1.PodReadinessGate{} } cs := make([]v1.PodReadinessGate, len(gates)) for i, c := range gates { @@ -1670,7 +1633,7 @@ func expandReadinessGates(gates []interface{}) ([]v1.PodReadinessGate, error) { cs[i].ConditionType = conType } } - return cs, nil + return cs } func patchPodSpec(pathPrefix, prefix string, d *schema.ResourceData) (PatchOperations, error) { diff --git a/kubernetes/structures_stateful_set.go b/kubernetes/structures_stateful_set.go index 61f5923e0b..c3a9265cc6 100644 --- a/kubernetes/structures_stateful_set.go +++ b/kubernetes/structures_stateful_set.go @@ -338,18 +338,14 @@ func patchUpdateStrategy(keyPrefix, pathPrefix string, d *schema.ResourceData) ( } if len(o.([]interface{})) > 0 && len(n.([]interface{})) > 0 { - r, err := patchUpdateStrategyRollingUpdate(keyPrefix+"rolling_update.0.", pathPrefix+"rollingUpdate/", d) - if err != nil { - return ops, err - } - ops = append(ops, r...) + ops = append(ops, patchUpdateStrategyRollingUpdate(keyPrefix+"rolling_update.0.", pathPrefix+"rollingUpdate/", d)...) } } return ops, nil } -func patchUpdateStrategyRollingUpdate(keyPrefix, pathPrefix string, d *schema.ResourceData) (PatchOperations, error) { +func patchUpdateStrategyRollingUpdate(keyPrefix, pathPrefix string, d *schema.ResourceData) PatchOperations { ops := PatchOperations{} if d.HasChange(keyPrefix + "partition") { log.Printf("[TRACE] StatefulSet.Spec.UpdateStrategy.RollingUpdate.Partition has changes") @@ -360,5 +356,5 @@ func patchUpdateStrategyRollingUpdate(keyPrefix, pathPrefix string, d *schema.Re }) } } - return ops, nil + return ops } diff --git a/kubernetes/structures_tokenrequest.go b/kubernetes/structures_tokenrequest.go index aee6d9733f..d571889f00 100644 --- a/kubernetes/structures_tokenrequest.go +++ b/kubernetes/structures_tokenrequest.go @@ -17,11 +17,7 @@ func flattenTokenRequestV1Spec(in authv1.TokenRequestSpec, d *schema.ResourceDat att["audiences"] = in.Audiences if in.BoundObjectRef != nil { - bndObjRef, err := flattenBoundObjectReference(*in.BoundObjectRef, d, meta) - if err != nil { - return nil, err - } - att["bound_object_ref"] = bndObjRef + att["bound_object_ref"] = flattenBoundObjectReference(*in.BoundObjectRef, d, meta) } if in.ExpirationSeconds != nil { @@ -31,7 +27,7 @@ func flattenTokenRequestV1Spec(in authv1.TokenRequestSpec, d *schema.ResourceDat return []interface{}{att}, nil } -func flattenBoundObjectReference(in authv1.BoundObjectReference, d *schema.ResourceData, meta interface{}) ([]interface{}, error) { +func flattenBoundObjectReference(in authv1.BoundObjectReference, d *schema.ResourceData, meta interface{}) []interface{} { att := make(map[string]interface{}) att["api_version"] = in.APIVersion @@ -42,7 +38,7 @@ func flattenBoundObjectReference(in authv1.BoundObjectReference, d *schema.Resou att["uid"] = in.UID - return []interface{}{att}, nil + return []interface{}{att} } // Expanders @@ -58,11 +54,7 @@ func expandTokenRequestV1Spec(p []interface{}) *authv1.TokenRequestSpec { obj.Audiences = expandStringSlice(v) } - bdObjRef, err := expandBoundObjectReference(in["bound_object_ref"].([]interface{})) - if err != nil { - return obj - } - obj.BoundObjectRef = bdObjRef + obj.BoundObjectRef = expandBoundObjectReference(in["bound_object_ref"].([]interface{})) if v, ok := in["expiration_seconds"].(int); v != 0 && ok { obj.ExpirationSeconds = ptrToInt64(int64(v)) @@ -71,10 +63,10 @@ func expandTokenRequestV1Spec(p []interface{}) *authv1.TokenRequestSpec { return obj } -func expandBoundObjectReference(p []interface{}) (*authv1.BoundObjectReference, error) { +func expandBoundObjectReference(p []interface{}) *authv1.BoundObjectReference { obj := &authv1.BoundObjectReference{} if len(p) == 0 || p[0] == nil { - return nil, nil + return nil } in := p[0].(map[string]interface{}) @@ -94,5 +86,5 @@ func expandBoundObjectReference(p []interface{}) (*authv1.BoundObjectReference, obj.UID = types.UID(v.(string)) } - return obj, nil + return obj }