grim/convey

A host of linting fixes

2018-02-19, Gary Kramlich
f3a61cc7b59d
Parents cab4e3de10a6
Children ba0997ff0c93
A host of linting fixes
--- a/color/color.go Sun Feb 18 23:52:02 2018 -0600
+++ b/color/color.go Mon Feb 19 00:14:29 2018 -0600
@@ -34,7 +34,11 @@
}
h := fnv.New32a()
- h.Write([]byte(identifier))
+ _, err := h.Write([]byte(identifier))
+ if err != nil {
+ panic(err)
+ }
+
c := int(h.Sum32() % uint32(len(colorList)))
colorMap[identifier] = colorList[c]
--- a/consts/consts.go Sun Feb 18 23:52:02 2018 -0600
+++ b/consts/consts.go Mon Feb 19 00:14:29 2018 -0600
@@ -17,5 +17,6 @@
package consts
const (
+ // Version is the current version of convey
Version = "0.14.0-dev"
)
--- a/convey.yml Sun Feb 18 23:52:02 2018 -0600
+++ b/convey.yml Mon Feb 19 00:14:29 2018 -0600
@@ -29,9 +29,11 @@
type: docker/export
files:
- '**/junit.xml'
- go-vet:
+ linter:
type: docker/run
- image: convey/go-vet:latest
+ image: convey/gometalinter:latest
+ environment:
+ - GOMETALINTER_OPTIONS=-Dinterfacer -Dvarcheck
build-linux:
type: docker/run
image: convey/go-build:latest
@@ -128,6 +130,12 @@
tag: convey/go-vet:latest
files:
- images/go-vet/run.sh
+ build-image-gometalinter:
+ type: docker/build
+ dockerfile: images/gometalinter/Dockerfile
+ tag: convey/gometalinter
+ files:
+ - images/gometalinter/run.sh
build-image-rust-build-linux:
type: docker/build
dockerfile: images/rust-build-linux/Dockerfile
@@ -165,7 +173,7 @@
- import
- name: testing
tasks:
- - go-vet
+ - linter
- go-test
- export-junit
- name: build
@@ -203,11 +211,12 @@
- build-image-go-build
- build-image-go-test
- build-image-go-vet
+ - build-image-go-build-alpine
+ - build-image-gometalinter
+ - build-image-rust-build-linux
+ - build-image-template
- build-image-workspace
- build-image-workspace-tools
- - build-image-go-build-alpine
- - build-image-rust-build-linux
- - build-image-template
debug:
stages:
- tasks: [debug-env]
--- a/intrinsic/clean.go Sun Feb 18 23:52:02 2018 -0600
+++ b/intrinsic/clean.go Mon Feb 19 00:14:29 2018 -0600
@@ -100,7 +100,10 @@
return err
}
- logger.Debugf("removing \"%v\", expanded from \"%v\"", sanitized, pattern)
+ nErr := logger.Debugf("removing \"%v\", expanded from \"%v\"", sanitized, pattern)
+ if nErr != nil {
+ fmt.Printf("error reporting error: %s\n", nErr)
+ }
if err := os.RemoveAll(sanitized); err != nil {
return err
--- a/kubectl/apply.go Sun Feb 18 23:52:02 2018 -0600
+++ b/kubectl/apply.go Mon Feb 19 00:14:29 2018 -0600
@@ -23,8 +23,10 @@
"bitbucket.org/rw_grim/convey/tasks"
)
+// Apply is a task for calling `kubectl apply`.
type Apply CRUDCommand
+// Execute runs `kubectl apply` with the given arguments.
func (a *Apply) Execute(name string, logger *gomol.LogAdapter, env []string, st *state.State) error {
cmd := &CRUDCommand{
Context: a.Context,
--- a/kubectl/command.go Sun Feb 18 23:52:02 2018 -0600
+++ b/kubectl/command.go Mon Feb 19 00:14:29 2018 -0600
@@ -14,7 +14,6 @@
// You should have received a copy of the GNU General Public License
// along with this program. If not, see <http://www.gnu.org/licenses/>.
-// Package intrinsic contains the intrinsic commands
package kubectl
import (
@@ -29,6 +28,7 @@
"bitbucket.org/rw_grim/convey/yaml"
)
+// CRUDCommand represents a call to a `kubectl` command to manage deployments.
type CRUDCommand struct {
Context string `yaml:"context"`
Namespace string `yaml:"namespace"`
@@ -36,6 +36,7 @@
Selector string `yaml:"selector"`
}
+// Execute runs the given `kubectl` command with the given arguments.
func (c *CRUDCommand) Execute(name, action string, logger *gomol.LogAdapter, env []string, st *state.State) error {
fullEnv := environment.Merge(env, st.GetEnv())
--- a/kubectl/create.go Sun Feb 18 23:52:02 2018 -0600
+++ b/kubectl/create.go Mon Feb 19 00:14:29 2018 -0600
@@ -23,8 +23,10 @@
"bitbucket.org/rw_grim/convey/tasks"
)
+// Create is a task for calling `kubectl create`.
type Create CRUDCommand
+// Execute runs `kubectl create` with the given arguments.
func (c *Create) Execute(name string, logger *gomol.LogAdapter, env []string, st *state.State) error {
cmd := &CRUDCommand{
Context: c.Context,
--- a/kubectl/delete.go Sun Feb 18 23:52:02 2018 -0600
+++ b/kubectl/delete.go Mon Feb 19 00:14:29 2018 -0600
@@ -23,8 +23,10 @@
"bitbucket.org/rw_grim/convey/tasks"
)
+// Delete is a task for calling `kubectl delete`.
type Delete CRUDCommand
+// Execute runs `kubectl delete` with the given arguments.
func (d *Delete) Execute(name string, logger *gomol.LogAdapter, env []string, st *state.State) error {
cmd := &CRUDCommand{
Context: d.Context,
--- a/kubectl/kubectl.go Sun Feb 18 23:52:02 2018 -0600
+++ b/kubectl/kubectl.go Mon Feb 19 00:14:29 2018 -0600
@@ -14,7 +14,8 @@
// You should have received a copy of the GNU General Public License
// along with this program. If not, see <http://www.gnu.org/licenses/>.
-// Package intrinsic contains the intrinsic commands
+// Package kubectl contains the tasks for interacting with kubernetes via
+// kubectl.
package kubectl
import (
--- a/runners/convey.go Sun Feb 18 23:52:02 2018 -0600
+++ b/runners/convey.go Mon Feb 19 00:14:29 2018 -0600
@@ -17,6 +17,8 @@
package runners
import (
+ "fmt"
+
"bitbucket.org/rw_grim/convey/config"
"bitbucket.org/rw_grim/convey/logging"
"bitbucket.org/rw_grim/convey/state"
@@ -33,17 +35,26 @@
if plan, found := cfg.Plans[planName]; found {
err := plan.Valid()
if err != nil {
- logger.Errorf("%s", err)
+ if nErr := logger.Errorf("%s", err); nErr != nil {
+ fmt.Printf("error report error: %s\n", nErr)
+ }
+
return 1
}
err = plan.Execute(planName, cfg.Tasks, cfg.Environment, st)
if err != nil {
- logger.Errorf("%s", err)
+ if nErr := logger.Errorf("%s", err); nErr != nil {
+ fmt.Printf("error reporting error: %s\n", nErr)
+ }
+
return 1
}
} else {
- logger.Fatalf("plan %s not found", planName)
+ if nErr := logger.Fatalf("plan %s not found", planName); nErr != nil {
+ fmt.Printf("error reporting error: %s\n", nErr)
+ }
+
return 1
}
}
--- a/runners/graphviz.go Sun Feb 18 23:52:02 2018 -0600
+++ b/runners/graphviz.go Mon Feb 19 00:14:29 2018 -0600
@@ -157,7 +157,7 @@
}
func (g Graphviz) plan(name string, plan plans.Plan) graphvizPlan {
- graphvizPlan := graphvizPlan{
+ gvizPlan := graphvizPlan{
Normalized: normalize("plan", name),
Name: name,
Color: color.X11(name),
@@ -165,7 +165,7 @@
}
for idx, stage := range plan.Stages {
- graphvizStage := graphvizStage{
+ gvizStage := graphvizStage{
Normalized: normalize("stage", stage.Name),
Name: stage.Name,
Enabled: stage.Enabled,
@@ -175,20 +175,20 @@
}
for _, task := range stage.Tasks {
- graphvizStage.Tasks = append(graphvizStage.Tasks, normalize("task", task))
+ gvizStage.Tasks = append(gvizStage.Tasks, normalize("task", task))
}
- graphvizPlan.Stages = append(graphvizPlan.Stages, graphvizStage)
+ gvizPlan.Stages = append(gvizPlan.Stages, gvizStage)
// if this always runs, if it's not the first add it to the previous stages' fallthroughs
if stage.Always && idx > 0 {
for i := 0; i < idx; i++ {
- graphvizPlan.Stages[i].FallThroughs = append(graphvizPlan.Stages[idx-1].FallThroughs, graphvizStage)
+ gvizPlan.Stages[i].FallThroughs = append(gvizPlan.Stages[idx-1].FallThroughs, gvizStage)
}
}
}
- return graphvizPlan
+ return gvizPlan
}
func (g *Graphviz) getPlans(cfg *config.Config) []graphvizPlan {
@@ -214,7 +214,9 @@
// Load the template
tmpl, err := template.New("graphviz").Parse(graphvizTemplate)
if err != nil {
- logger.Fatalf("error: %s", err)
+ if nErr := logger.Fatalf("error: %s", err); nErr != nil {
+ fmt.Printf("error reporting error: %s\n", nErr)
+ }
return 1
}
@@ -223,7 +225,9 @@
output := new(bytes.Buffer)
err = tmpl.Execute(output, params)
if err != nil {
- logger.Fatalf("error: %s", err)
+ if nErr := logger.Fatalf("error: %s", err); nErr != nil {
+ fmt.Printf("error reporting error: %s\n", nErr)
+ }
return 1
}
--- a/runners/listplans.go Sun Feb 18 23:52:02 2018 -0600
+++ b/runners/listplans.go Mon Feb 19 00:14:29 2018 -0600
@@ -35,7 +35,7 @@
} else {
for _, stage := range plan.Stages {
disabled := ""
- if stage.Enabled == false {
+ if !stage.Enabled {
disabled = " (disabled)"
}
--- a/script/script.go Sun Feb 18 23:52:02 2018 -0600
+++ b/script/script.go Mon Feb 19 00:14:29 2018 -0600
@@ -26,6 +26,8 @@
"bitbucket.org/rw_grim/convey/tasks"
)
+// ParseFunc defines a function that can parse a shell command into a convey
+// task.
type ParseFunc func(argv []string) (tasks.Task, error)
var (
--- a/yaml/yaml.go Sun Feb 18 23:52:02 2018 -0600
+++ b/yaml/yaml.go Mon Feb 19 00:14:29 2018 -0600
@@ -42,7 +42,7 @@
type rawStringOrSlice StringOrSlice
raw := rawStringOrSlice{}
- if err := unmarshal(&raw); err != nil {
+ if err = unmarshal(&raw); err != nil {
return err
}