Skip to content
This repository was archived by the owner on Mar 14, 2024. It is now read-only.

Commit f5822c7

Browse files
authored
Using inline error checking (#272)
Using inline error checking in the code wherever applicable, i.e. replacing all instances of the following pattern: ``` err = someCall() if err != nil { doSomething... } ``` with: ``` if err = someCall(); err != nil { doSomething... } ```
1 parent 2cb6aaa commit f5822c7

File tree

21 files changed

+70
-131
lines changed

21 files changed

+70
-131
lines changed

internal/nginx-meshctl/commands/deploy.go

Lines changed: 12 additions & 22 deletions
Original file line numberDiff line numberDiff line change
@@ -184,8 +184,7 @@ func Deploy() *cobra.Command {
184184
false,
185185
"set imagePullPolicy to be 'always'",
186186
)
187-
err = cmd.Flags().MarkHidden("pull-always")
188-
if err != nil {
187+
if err = cmd.Flags().MarkHidden("pull-always"); err != nil {
189188
fmt.Println("error marking flag as hidden: ", err)
190189
}
191190
cmd.Flags().BoolVar(
@@ -195,8 +194,7 @@ func Deploy() *cobra.Command {
195194
`render the manifest and print to stdout
196195
Doesn't deploy anything`,
197196
)
198-
err = cmd.Flags().MarkHidden("dry-run")
199-
if err != nil {
197+
if err = cmd.Flags().MarkHidden("dry-run"); err != nil {
200198
fmt.Println("error marking flag as hidden: ", err)
201199
}
202200
cmd.Flags().StringVar(
@@ -210,40 +208,35 @@ func Deploy() *cobra.Command {
210208
&imageMeshController,
211209
"nginx-mesh-controller-image",
212210
imageMeshController, "NGINX Service Mesh Controller image URI")
213-
err = cmd.Flags().MarkHidden("nginx-mesh-controller-image")
214-
if err != nil {
211+
if err = cmd.Flags().MarkHidden("nginx-mesh-controller-image"); err != nil {
215212
fmt.Println("error marking flag as hidden: ", err)
216213
}
217214
cmd.Flags().StringVar(
218215
&imageMetricsAPI,
219216
"nginx-mesh-metrics-image",
220217
imageMetricsAPI, "NGINX Service Mesh metrics API image URI")
221-
err = cmd.Flags().MarkHidden("nginx-mesh-metrics-image")
222-
if err != nil {
218+
if err = cmd.Flags().MarkHidden("nginx-mesh-metrics-image"); err != nil {
223219
fmt.Println("error marking flag as hidden: ", err)
224220
}
225221
cmd.Flags().StringVar(
226222
&imageSidecar,
227223
"nginx-mesh-sidecar-image",
228224
imageSidecar, "NGINX Service Mesh sidecar image URI")
229-
err = cmd.Flags().MarkHidden("nginx-mesh-sidecar-image")
230-
if err != nil {
225+
if err = cmd.Flags().MarkHidden("nginx-mesh-sidecar-image"); err != nil {
231226
fmt.Println("error marking flag as hidden: ", err)
232227
}
233228
cmd.Flags().StringVar(
234229
&imageSidecarInit,
235230
"nginx-mesh-init-image",
236231
imageSidecarInit, "NGINX Service Mesh init image URI")
237-
err = cmd.Flags().MarkHidden("nginx-mesh-init-image")
238-
if err != nil {
232+
if err = cmd.Flags().MarkHidden("nginx-mesh-init-image"); err != nil {
239233
fmt.Println("error marking flag as hidden: ", err)
240234
}
241235
cmd.Flags().StringVar(
242236
&imageMeshCertReloader,
243237
"cert-reloader-image",
244238
imageMeshCertReloader, "NGINX Service Mesh cert reloader image URI")
245-
err = cmd.Flags().MarkHidden("cert-reloader-image")
246-
if err != nil {
239+
if err = cmd.Flags().MarkHidden("cert-reloader-image"); err != nil {
247240
fmt.Println("error marking flag as hidden: ", err)
248241
}
249242
cmd.Flags().StringVar(
@@ -351,8 +344,7 @@ func Deploy() *cobra.Command {
351344
`automatically remove Service Mesh pods if an error occurs during deployment
352345
This is a hidden flag for development purposes`,
353346
)
354-
err = cmd.Flags().MarkHidden("cleanup-on-error")
355-
if err != nil {
347+
if err = cmd.Flags().MarkHidden("cleanup-on-error"); err != nil {
356348
fmt.Println("error marking flag as hidden: ", err)
357349
}
358350
cmd.Flags().StringVar(
@@ -538,8 +530,7 @@ func startDeploy(k8sClient k8s.Client, deployer *deploy.Deployer, cleanupOnError
538530
default:
539531
// sleep briefly to prevent tight loop
540532
time.Sleep(100 * time.Millisecond) //nolint:gomnd // not worth another global
541-
err := checkImagePullErrors(k8sClient)
542-
if err != nil {
533+
if err := checkImagePullErrors(k8sClient); err != nil {
543534
fmt.Println(err.Error())
544535
if cleanupOnError {
545536
cleanup(k8sClient)
@@ -551,8 +542,7 @@ func startDeploy(k8sClient k8s.Client, deployer *deploy.Deployer, cleanupOnError
551542
}
552543
}()
553544

554-
_, err := deployer.Deploy()
555-
if err != nil {
545+
if _, err := deployer.Deploy(); err != nil {
556546
var alreadyExists meshErrors.AlreadyExistsError
557547
if errors.Is(err, meshErrors.ErrInput) ||
558548
errors.As(err, &alreadyExists) ||
@@ -584,8 +574,8 @@ func startDeploy(k8sClient k8s.Client, deployer *deploy.Deployer, cleanupOnError
584574

585575
fmt.Println("All resources created. Testing the connection to the Service Mesh control plane...")
586576
// test connection
587-
err = health.TestMeshControllerConnection(k8sClient.Client(), k8sClient.Namespace(), deployMeshControllerRetries)
588-
if err != nil {
577+
if err := health.TestMeshControllerConnection(
578+
k8sClient.Client(), k8sClient.Namespace(), deployMeshControllerRetries); err != nil {
589579
return formatConnectionError(k8sClient, err)
590580
}
591581
done <- struct{}{}

internal/nginx-meshctl/commands/deploy_signal.go

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -94,8 +94,7 @@ func (sh *deploySignalHandle) Check() {
9494
func cleanOnSignal(k8sClient k8s.Client, sig os.Signal, out io.Writer) {
9595
_, _ = out.Write([]byte("Cleaning up NGINX Service Mesh after signal...\n"))
9696
deleteNamespace := true
97-
err := newRemover(k8sClient).remove("nginx-service-mesh", deleteNamespace)
98-
if err != nil {
97+
if err := newRemover(k8sClient).remove("nginx-service-mesh", deleteNamespace); err != nil {
9998
s := fmt.Sprintf("Failed cleaning, manual intervention necessary: %s\n", err)
10099
_, _ = out.Write([]byte(s))
101100
}

internal/nginx-meshctl/commands/inject.go

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -166,8 +166,7 @@ func readFileOrURL(filename string) ([]byte, error) {
166166
_ = resp.Body.Close()
167167
}()
168168

169-
err = checkResponse(resp)
170-
if err != nil {
169+
if err = checkResponse(resp); err != nil {
171170
return nil, err
172171
}
173172

internal/nginx-meshctl/commands/remove.go

Lines changed: 3 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -69,8 +69,7 @@ func Remove() *cobra.Command {
6969
`environment the mesh is deployed in
7070
Valid values: `+formatValues(mesh.Environments),
7171
)
72-
err := cmd.Flags().MarkDeprecated("environment", "and will be removed in a future release.")
73-
if err != nil {
72+
if err := cmd.Flags().MarkDeprecated("environment", "and will be removed in a future release."); err != nil {
7473
fmt.Println("error marking flag as deprecated: ", err)
7574
}
7675

@@ -298,8 +297,8 @@ func printResources(writer *tabwriter.Writer, resources proxiedResources) error
298297
// verifyMeshInstall verifies that the install namespace exists and that a helm release of NSM currently exists.
299298
func verifyMeshInstall(k8sClient k8s.Client) (string, error) {
300299
namespace := k8sClient.Namespace()
301-
_, err := k8sClient.ClientSet().CoreV1().Namespaces().Get(context.TODO(), namespace, metav1.GetOptions{})
302-
if err != nil && k8sErrors.IsNotFound(err) {
300+
if _, err := k8sClient.ClientSet().CoreV1().Namespaces().
301+
Get(context.TODO(), namespace, metav1.GetOptions{}); err != nil && k8sErrors.IsNotFound(err) {
303302
return "", meshErrors.NamespaceNotFoundError{Namespace: namespace}
304303
}
305304

internal/nginx-meshctl/commands/root.go

Lines changed: 3 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -112,8 +112,7 @@ Requires a connection to a Kubernetes cluster via a kubeconfig.`,
112112
cmd.SetHelpCommand(Help())
113113

114114
// hide debug flag from user
115-
err := cmd.PersistentFlags().MarkHidden("debug")
116-
if err != nil {
115+
if err := cmd.PersistentFlags().MarkHidden("debug"); err != nil {
117116
fmt.Println("Failed to mark debug flag as hidden, error: ", err)
118117
}
119118

@@ -237,8 +236,7 @@ func getComponentVersions(config *rest.Config, namespace string, timeout time.Du
237236
return "", err
238237
}
239238
defer func() {
240-
closeErr := resp.Body.Close()
241-
if closeErr != nil {
239+
if closeErr := resp.Body.Close(); closeErr != nil {
242240
fmt.Println(closeErr)
243241
}
244242
}()
@@ -248,8 +246,7 @@ func getComponentVersions(config *rest.Config, namespace string, timeout time.Du
248246
}
249247

250248
versions := make(map[string][]string)
251-
err = json.NewDecoder(resp.Body).Decode(&versions)
252-
if err != nil {
249+
if err = json.NewDecoder(resp.Body).Decode(&versions); err != nil {
253250
return "", fmt.Errorf("error decoding API response: %w", err)
254251
}
255252

internal/nginx-meshctl/commands/top.go

Lines changed: 2 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -105,8 +105,7 @@ func Top() *cobra.Command {
105105
return fmt.Errorf("failed to build resource from name: %v", argSlice[0]) //nolint:goerr113 // one-off error
106106
}
107107

108-
err = top.BuildTopMetrics(tabWriter, ref)
109-
if err != nil {
108+
if err = top.BuildTopMetrics(tabWriter, ref); err != nil {
110109
fmt.Println(genericTopErrorInfo)
111110

112111
return err
@@ -120,8 +119,7 @@ func Top() *cobra.Command {
120119
for k, v := range resources {
121120
ref.Kind = k
122121
ref.DisplayName = v
123-
err = top.BuildTopMetrics(tabWriter, ref)
124-
if err != nil {
122+
if err = top.BuildTopMetrics(tabWriter, ref); err != nil {
125123
errCount++
126124
}
127125
}

internal/nginx-meshctl/support/data.go

Lines changed: 13 additions & 21 deletions
Original file line numberDiff line numberDiff line change
@@ -212,13 +212,12 @@ func (df *DataFetcher) writeControlPlanePodList(podList *v1.PodList) {
212212
Wide: true,
213213
})
214214
out := bytes.NewBuffer([]byte{})
215-
err = printer.PrintObj(podTable, out)
216-
if err != nil {
215+
if err = printer.PrintObj(podTable, out); err != nil {
217216
log.Printf("- could not print Pod Table: %v\n", err)
218217

219218
return
220219
}
221-
if err := df.writer.Write(filepath.Join(df.controlPlaneDir, podListFile), out.String()); err != nil {
220+
if err = df.writer.Write(filepath.Join(df.controlPlaneDir, podListFile), out.String()); err != nil {
222221
log.Printf("- could not write PodList: %v", err)
223222
}
224223
}
@@ -323,8 +322,7 @@ func (df *DataFetcher) writeControlPlaneSecrets() {
323322
return
324323
}
325324

326-
err = df.createYamlFromList(secrets, filepath.Join(df.controlPlaneDir, secretsFile))
327-
if err != nil {
325+
if err = df.createYamlFromList(secrets, filepath.Join(df.controlPlaneDir, secretsFile)); err != nil {
328326
log.Printf("- could not write Secrets to file: %v", err)
329327
}
330328
}
@@ -362,8 +360,7 @@ func (df *DataFetcher) writeControlPlaneEvents() {
362360
Wide: true,
363361
})
364362
out := bytes.NewBuffer([]byte{})
365-
err = printer.PrintObj(eventTable, out)
366-
if err != nil {
363+
if err = printer.PrintObj(eventTable, out); err != nil {
367364
log.Printf("- could not print Event Table: %v\n", err)
368365

369366
return
@@ -388,8 +385,8 @@ func (df *DataFetcher) writeControlPlaneValidatingWebhookConfigurations() {
388385
return
389386
}
390387

391-
err = df.createYamlFromList(validatingWebhookConfigurations, filepath.Join(df.directory, validatingWebhookConfigurationsFile))
392-
if err != nil {
388+
if err = df.createYamlFromList(
389+
validatingWebhookConfigurations, filepath.Join(df.directory, validatingWebhookConfigurationsFile)); err != nil {
393390
log.Printf("- could not write ValidatingWebhookConfigurations to file: %v", err)
394391
}
395392
}
@@ -409,8 +406,8 @@ func (df *DataFetcher) writeControlPlaneMutatingWebhookConfigurations() {
409406
return
410407
}
411408

412-
err = df.createYamlFromList(mutatingWebhookConfigurations, filepath.Join(df.directory, mutatingWebhookConfigurationsFile))
413-
if err != nil {
409+
if err = df.createYamlFromList(
410+
mutatingWebhookConfigurations, filepath.Join(df.directory, mutatingWebhookConfigurationsFile)); err != nil {
414411
log.Printf("- could not write MutatingWebhookConfigurations to file: %v", err)
415412
}
416413
}
@@ -427,8 +424,7 @@ func (df *DataFetcher) writeControlPlaneClusterRoles() {
427424
return
428425
}
429426

430-
err = df.createYamlFromList(clusterRoles, filepath.Join(df.directory, clusterRolesFile))
431-
if err != nil {
427+
if err = df.createYamlFromList(clusterRoles, filepath.Join(df.directory, clusterRolesFile)); err != nil {
432428
log.Printf("- could not write ClusterRoles to file: %v", err)
433429
}
434430
}
@@ -445,8 +441,7 @@ func (df *DataFetcher) writeControlPlaneClusterRoleBindings() {
445441
return
446442
}
447443

448-
err = df.createYamlFromList(clusterRoleBindings, filepath.Join(df.directory, clusterRoleBindingsFile))
449-
if err != nil {
444+
if err = df.createYamlFromList(clusterRoleBindings, filepath.Join(df.directory, clusterRoleBindingsFile)); err != nil {
450445
log.Printf("- could not write ClusterRoleBindings to file: %v", err)
451446
}
452447
}
@@ -463,8 +458,7 @@ func (df *DataFetcher) writeControlPlaneCRDs() {
463458
return
464459
}
465460

466-
err = df.createYamlFromList(crds, filepath.Join(df.directory, crdsFile))
467-
if err != nil {
461+
if err = df.createYamlFromList(crds, filepath.Join(df.directory, crdsFile)); err != nil {
468462
log.Printf("- could not write CRDs to file: %v", err)
469463
}
470464
}
@@ -481,8 +475,7 @@ func (df *DataFetcher) writeControlPlaneAPIServices() {
481475
return
482476
}
483477

484-
err = df.createYamlFromList(apiServices, filepath.Join(df.directory, apiServicesFile))
485-
if err != nil {
478+
if err = df.createYamlFromList(apiServices, filepath.Join(df.directory, apiServicesFile)); err != nil {
486479
log.Printf("- could not write APIServices to file: %v", err)
487480
}
488481
}
@@ -719,8 +712,7 @@ func (df *DataFetcher) writeTrafficPolicies() {
719712
return
720713
}
721714

722-
err = df.createYamlFromList(list, filepath.Join(df.directory, policy.file))
723-
if err != nil {
715+
if err = df.createYamlFromList(list, filepath.Join(df.directory, policy.file)); err != nil {
724716
log.Printf("- could not write %s to file: %v", policy.resource.Resource, err)
725717
}
726718
}

internal/nginx-meshctl/support/filewriter.go

Lines changed: 0 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -116,9 +116,6 @@ func (w *Writer) WriteTarFile(directory, filename string) error {
116116
filename = filepath.Clean(filename)
117117
tarFile, err := os.Create(filename) //nolint:gosec // passed in via user input from cluster
118118
// written to temp dir
119-
if err != nil {
120-
return err
121-
}
122119
if err != nil {
123120
return fmt.Errorf("could not create tar file: %w", err)
124121
}

internal/nginx-meshctl/upstreamauthority/upstream_authority.go

Lines changed: 4 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -84,8 +84,7 @@ func GetUpstreamAuthorityValues(file string) (*helm.UpstreamAuthority, error) {
8484
}
8585

8686
var upstreamAuthority config
87-
err = json.Unmarshal(b, &upstreamAuthority)
88-
if err != nil {
87+
if err = json.Unmarshal(b, &upstreamAuthority); err != nil {
8988
return nil, fmt.Errorf("could not unmarshal upstream authority config: %w", err)
9089
}
9190

@@ -131,8 +130,7 @@ func readCertFiles(
131130
return "", "", "", fmt.Errorf("error reading upstream certificate file: %w", err)
132131
}
133132

134-
err = isPem(upstreamCertBytes, false, certificate)
135-
if err != nil {
133+
if err = isPem(upstreamCertBytes, false, certificate); err != nil {
136134
return "", "", "", fmt.Errorf("invalid certificate: %w", err)
137135
}
138136
upstreamCert = string(upstreamCertBytes)
@@ -144,8 +142,7 @@ func readCertFiles(
144142
return "", "", "", fmt.Errorf("error reading upstream certificate key file: %w", err)
145143
}
146144

147-
err = isPem(upstreamKeyBytes, false, key)
148-
if err != nil {
145+
if err = isPem(upstreamKeyBytes, false, key); err != nil {
149146
return "", "", "", fmt.Errorf("invalid private key: %w", err)
150147
}
151148
upstreamKey = string(upstreamKeyBytes)
@@ -157,8 +154,7 @@ func readCertFiles(
157154
return "", "", "", fmt.Errorf("error reading upstream certificate bundle file: %w", err)
158155
}
159156

160-
err = isPem(upstreamBundleBytes, true, certificate)
161-
if err != nil {
157+
if err = isPem(upstreamBundleBytes, true, certificate); err != nil {
162158
return "", "", "", fmt.Errorf("invalid bundle: %w", err)
163159
}
164160
upstreamBundle = string(upstreamBundleBytes)

0 commit comments

Comments
 (0)