diff options
author | baude <bbaude@redhat.com> | 2019-07-22 13:08:06 -0500 |
---|---|---|
committer | baude <bbaude@redhat.com> | 2019-07-22 15:44:04 -0500 |
commit | 0c3038d4b5479e475217f2990107f376024d5726 (patch) | |
tree | fa0936d65d105c8943f40366b0bcb3685d8c0f12 | |
parent | ab7b47ca60da11f9e24688cfe2ae3d00eb123471 (diff) | |
download | podman-0c3038d4b5479e475217f2990107f376024d5726.tar.gz podman-0c3038d4b5479e475217f2990107f376024d5726.tar.bz2 podman-0c3038d4b5479e475217f2990107f376024d5726.zip |
golangci-lint phase 4
clean up some final linter issues and add a make target for
golangci-lint. in addition, begin running the tests are part of the
gating tasks in cirrus ci.
we cannot fully shift over to the new linter until we fix the image on
the openshift side. for short term, we will use both
Signed-off-by: baude <bbaude@redhat.com>
-rw-r--r-- | .cirrus.yml | 2 | ||||
-rw-r--r-- | Makefile | 11 | ||||
-rw-r--r-- | cmd/podman/build.go | 10 | ||||
-rw-r--r-- | cmd/podman/images.go | 1 | ||||
-rw-r--r-- | libpod/container_inspect.go | 16 | ||||
-rw-r--r-- | libpod/image/image.go | 15 | ||||
-rw-r--r-- | pkg/adapter/terminal_linux.go | 2 | ||||
-rw-r--r-- | pkg/util/utils_linux.go | 4 |
8 files changed, 22 insertions, 39 deletions
diff --git a/.cirrus.yml b/.cirrus.yml index 578a3eef0..456936615 100644 --- a/.cirrus.yml +++ b/.cirrus.yml @@ -103,7 +103,7 @@ gating_task: # N/B: entrypoint.sh resets $GOSRC (same as make clean) - '/usr/local/bin/entrypoint.sh install.tools |& ${TIMESTAMP}' - '/usr/local/bin/entrypoint.sh validate |& ${TIMESTAMP}' - - '/usr/local/bin/entrypoint.sh lint |& ${TIMESTAMP}' + - '/usr/local/bin/entrypoint.sh golangci-lint |& ${TIMESTAMP}' # This task builds Podman with different buildtags to ensure the build does # not break. It also verifies all sub-commands have man pages. @@ -136,6 +136,9 @@ lint: .gopathok varlink_generate ## Execute the source code linter @echo "checking lint" @./.tool/lint +golangci-lint: .gopathok varlink_generate .install.golangci-lint + $(GOBIN)/golangci-lint run --tests=false + gofmt: ## Verify the source code gofmt find . -name '*.go' ! -path './vendor/*' -exec gofmt -s -w {} \+ git diff --exit-code @@ -360,7 +363,7 @@ uninstall: GIT_CHECK_EXCLUDE="./vendor" $(GOBIN)/git-validation -v -run DCO,short-subject,dangling-whitespace -range $(EPOCH_TEST_COMMIT)..$(HEAD) .PHONY: install.tools -install.tools: .install.gitvalidation .install.gometalinter .install.md2man .install.ginkgo ## Install needed tools +install.tools: .install.gitvalidation .install.gometalinter .install.md2man .install.ginkgo .install.golangci-lint ## Install needed tools define go-get env GO111MODULE=off \ @@ -386,6 +389,11 @@ endef $(GOBIN)/gometalinter --install; \ fi +.install.golangci-lint: .gopathok + if [ ! -x "$(GOBIN)/golangci-lint" ]; then \ + curl -sfL https://install.goreleaser.com/github.com/golangci/golangci-lint.sh | sh -s -- -b $(GOBIN)/ v1.17.1; \ + fi + .install.md2man: .gopathok if [ ! -x "$(GOBIN)/go-md2man" ]; then \ $(call go-get,github.com/cpuguy83/go-md2man); \ @@ -444,6 +452,7 @@ vendor: gofmt \ help \ install \ + golangci-lint \ lint \ pause \ uninstall \ diff --git a/cmd/podman/build.go b/cmd/podman/build.go index 5ee35dea0..19337985d 100644 --- a/cmd/podman/build.go +++ b/cmd/podman/build.go @@ -308,16 +308,6 @@ func buildCmd(c *cliconfig.BuildValues) error { return runtime.Build(getContext(), c, options, dockerfiles) } -// Tail returns a string slice after the first element unless there are -// not enough elements, then it returns an empty slice. This is to replace -// the urfavecli Tail method for args -func Tail(a []string) []string { - if len(a) >= 2 { - return a[1:] - } - return []string{} -} - // useLayers returns false if BUILDAH_LAYERS is set to "0" or "false" // otherwise it returns true func useLayers() string { diff --git a/cmd/podman/images.go b/cmd/podman/images.go index 3b32ee3dd..fe7c89b5c 100644 --- a/cmd/podman/images.go +++ b/cmd/podman/images.go @@ -51,7 +51,6 @@ type imagesOptions struct { outputformat string sort string all bool - useReadOnly bool } // Type declaration and functions for sorting the images output diff --git a/libpod/container_inspect.go b/libpod/container_inspect.go index c4d2af66e..aee8c4657 100644 --- a/libpod/container_inspect.go +++ b/libpod/container_inspect.go @@ -963,24 +963,16 @@ func (c *Container) generateInspectContainerHostConfig(ctrSpec *spec.Spec, named } hostConfig.DnsOptions = make([]string, 0, len(c.config.DNSOption)) - for _, opt := range c.config.DNSOption { - hostConfig.DnsOptions = append(hostConfig.DnsOptions, opt) - } + hostConfig.DnsOptions = append(hostConfig.DnsOptions, c.config.DNSOption...) hostConfig.DnsSearch = make([]string, 0, len(c.config.DNSSearch)) - for _, search := range c.config.DNSSearch { - hostConfig.DnsSearch = append(hostConfig.DnsSearch, search) - } + hostConfig.DnsSearch = append(hostConfig.DnsSearch, c.config.DNSSearch...) hostConfig.ExtraHosts = make([]string, 0, len(c.config.HostAdd)) - for _, host := range c.config.HostAdd { - hostConfig.ExtraHosts = append(hostConfig.ExtraHosts, host) - } + hostConfig.ExtraHosts = append(hostConfig.ExtraHosts, c.config.HostAdd...) hostConfig.GroupAdd = make([]string, 0, len(c.config.Groups)) - for _, group := range c.config.Groups { - hostConfig.GroupAdd = append(hostConfig.GroupAdd, group) - } + hostConfig.GroupAdd = append(hostConfig.GroupAdd, c.config.Groups...) hostConfig.SecurityOpt = []string{} if ctrSpec.Process != nil { diff --git a/libpod/image/image.go b/libpod/image/image.go index a057bc720..db50e3dbd 100644 --- a/libpod/image/image.go +++ b/libpod/image/image.go @@ -38,26 +38,19 @@ import ( "github.com/sirupsen/logrus" ) -// imageConversions is used to cache image "cast" types -type imageConversions struct { - imgRef types.Image - storeRef types.ImageReference -} - // Image is the primary struct for dealing with images // It is still very much a work in progress type Image struct { // Adding these two structs for now but will cull when we near // completion of this library. - imageConversions + imgRef types.Image + storeRef types.ImageReference inspect.ImageData inspect.ImageResult - inspectInfo *types.ImageInspectInfo - InputName string - //runtime *libpod.Runtime + inspectInfo *types.ImageInspectInfo + InputName string image *storage.Image imageruntime *Runtime - repotagsMap map[string][]string } // Runtime contains the store diff --git a/pkg/adapter/terminal_linux.go b/pkg/adapter/terminal_linux.go index 9f6ddc2e6..533a8baf5 100644 --- a/pkg/adapter/terminal_linux.go +++ b/pkg/adapter/terminal_linux.go @@ -16,7 +16,7 @@ import ( // StartAttachCtr starts and (if required) attaches to a container // if you change the signature of this function from os.File to io.Writer, it will trigger a downstream // error. we may need to just lint disable this one. -func StartAttachCtr(ctx context.Context, ctr *libpod.Container, stdout, stderr, stdin *os.File, detachKeys string, sigProxy bool, startContainer bool, recursive bool) error { +func StartAttachCtr(ctx context.Context, ctr *libpod.Container, stdout, stderr, stdin *os.File, detachKeys string, sigProxy bool, startContainer bool, recursive bool) error { //nolint-interfacer resize := make(chan remotecommand.TerminalSize) haveTerminal := terminal.IsTerminal(int(os.Stdin.Fd())) diff --git a/pkg/util/utils_linux.go b/pkg/util/utils_linux.go index 318bd2b1b..288137ca5 100644 --- a/pkg/util/utils_linux.go +++ b/pkg/util/utils_linux.go @@ -39,8 +39,8 @@ func FindDeviceNodes() (map[string]string, error) { if !ok { return errors.Errorf("Could not convert stat output for use") } - major := uint64(sysstat.Rdev / 256) - minor := uint64(sysstat.Rdev % 256) + major := sysstat.Rdev / 256 + minor := sysstat.Rdev % 256 nodes[fmt.Sprintf("%d:%d", major, minor)] = path |