# HG changeset patch
# User Steeve Chailloux <steeve.chailloux@orus.io>
# Date 1657206336 -7200
#      Thu Jul 07 17:05:36 2022 +0200
# Node ID bb131b976fd6c88c237d3ba8a5800644e5cf4a85
# Parent  34b21d48e4e676f39e6f85bd97d8506c3f6a051e
fix linter errors

diff --git a/runner/config.go b/runner/config.go
--- a/runner/config.go
+++ b/runner/config.go
@@ -100,6 +100,9 @@
 			return nil, fmt.Errorf("fail to read config file: %s - %w", configPath, err)
 		}
 		err = yaml.Unmarshal(configFile, &config)
+		if err != nil {
+			return nil, fmt.Errorf("fail unmarshal config file: %s - %w", configPath, err)
+		}
 		return &config, nil
 	}
 
@@ -433,7 +436,7 @@
 
 	t, err := fasttemplate.NewTemplate(template, "<[", "]>")
 	if err != nil {
-		return fmt.Errorf("unexpected error when parsing template: %s", err)
+		return fmt.Errorf("unexpected error when parsing template: %w", err)
 	}
 	s := t.ExecuteString(variables)
 	if _, err := output.Write([]byte(s)); err != nil {
diff --git a/runner/config_test.go b/runner/config_test.go
--- a/runner/config_test.go
+++ b/runner/config_test.go
@@ -2,6 +2,7 @@
 
 import (
 	"bytes"
+	"fmt"
 	"os"
 	"path/filepath"
 	"testing"
@@ -116,37 +117,51 @@
 	buildDir := filepath.Join(shaFixtures, "build", "example")
 
 	configMap := filepath.Join(buildDir, "ConfigMap.v1.demo.yaml")
-	cm := parseFile(t, configMap)
-	sha := getLabel(t, cm, "mysha")
+	cm,  err := parseFile(configMap)
+	require.NoError(t, err)
+	sha, err := getLabel(cm, "mysha")
+	require.NoError(t, err)
 	require.Equal(t, shaValue, sha)
 
 	deployment := filepath.Join(buildDir, "Deployment.apps_v1.nginx.yaml")
-	deploy := parseFile(t, deployment)
-	sha = getLabel(t, deploy, "config.sha")
+	deploy, err := parseFile(deployment)
+	require.NoError(t, err)
+	sha, err = getLabel(deploy, "config.sha")
+	require.NoError(t, err)
 	require.Equal(t, shaValue, sha)
 }
 
-func getLabel(t *testing.T, resource map[string]interface{}, label string) string {
+func getLabel(resource map[string]interface{}, label string) (string, error) {
 	metadata, ok := resource["metadata"].(map[interface{}]interface{})
-	require.True(t, ok)
+	if !ok {
+		return "", fmt.Errorf("fail to get label")
+	}
 	labels, ok := metadata["labels"].(map[interface{}]interface{})
-	require.True(t, ok)
+	if !ok {
+		return "", fmt.Errorf("fail to get label")
+	}
 	result, ok := labels[label].(string)
-	require.True(t, ok)
-	return result
+	if !ok {
+		return "", fmt.Errorf("fail to get label")
+	}
+	return result, nil
 }
 
-func parseFile(t *testing.T, input string) map[string]interface{} {
+func parseFile(input string) (map[string]interface{}, error) {
 	resource := make(map[string]interface{})
 
 	content, err := os.ReadFile(input)
-	require.NoError(t, err)
+	if err != nil {
+		return nil, fmt.Errorf("fail to parse: %w", err)
+	}
 
 	byteContent := bytes.NewReader(content)
 	decoder := yaml.NewDecoder(byteContent)
 
 	err = decoder.Decode(&resource)
-	require.NoError(t, err)
+	if err != nil {
+		return nil, fmt.Errorf("fail to parse: %w", err)
+	}
 
-	return resource
+	return resource, nil
 }
diff --git a/runner/main.go b/runner/main.go
--- a/runner/main.go
+++ b/runner/main.go
@@ -55,6 +55,9 @@
 			return fmt.Errorf("cannot clean dir: %s: %w", outputDir, err)
 		}
 		variables, err := r.config.prepareVariables(true)
+		if err != nil {
+			return fmt.Errorf("cannot prepare variables: %w", err)
+		}
 		for _, file := range files {
 			inFilePath := filepath.Join(preBuildDir, file.Name())
 			outFilePath := filepath.Join(outputDir, file.Name())