reason: sync patches from upstream, including relocate export package, clean code for tests and golint Signed-off-by: DCCooper <1866858@gmail.com>
402 lines
14 KiB
Diff
402 lines
14 KiB
Diff
From 6c355a7c9393982e648d79701a6c33ea0911a33a Mon Sep 17 00:00:00 2001
|
|
From: xingweizheng <xingweizheng@huawei.com>
|
|
Date: Sat, 28 Aug 2021 21:55:14 +0800
|
|
Subject: [PATCH 13/20] clean code: staticcheck fix of S1020, S1023, SA9003,
|
|
S1002 and some U1000
|
|
|
|
---
|
|
builder/dockerfile/add_copy_test.go | 1 -
|
|
builder/dockerfile/builder.go | 2 +-
|
|
builder/dockerfile/builder_test.go | 7 ++-----
|
|
builder/dockerfile/container/help.go | 2 +-
|
|
builder/dockerfile/parser/command.go | 4 ++--
|
|
builder/dockerfile/parser/parser.go | 14 +++++++-------
|
|
builder/dockerfile/parser/util.go | 1 -
|
|
builder/dockerfile/stage_builder.go | 2 +-
|
|
cmd/cli/logout_test.go | 3 +--
|
|
daemon/info.go | 4 ++--
|
|
daemon/remove.go | 6 +++---
|
|
image/image.go | 12 ++++++------
|
|
pkg/logger/logger.go | 2 +-
|
|
pkg/manifest/list.go | 2 +-
|
|
pkg/opts/opts.go | 2 +-
|
|
pkg/stack/stack.go | 2 +-
|
|
util/cipher.go | 6 +++---
|
|
util/common.go | 2 +-
|
|
18 files changed, 34 insertions(+), 40 deletions(-)
|
|
|
|
diff --git a/builder/dockerfile/add_copy_test.go b/builder/dockerfile/add_copy_test.go
|
|
index 05fac1f3..8873872a 100644
|
|
--- a/builder/dockerfile/add_copy_test.go
|
|
+++ b/builder/dockerfile/add_copy_test.go
|
|
@@ -158,7 +158,6 @@ func TestResolveCopySource(t *testing.T) {
|
|
isAdd bool
|
|
rawSources []string
|
|
dest string
|
|
- contextDir string
|
|
}
|
|
tests := []struct {
|
|
name string
|
|
diff --git a/builder/dockerfile/builder.go b/builder/dockerfile/builder.go
|
|
index cbd1e589..1e1e24dc 100644
|
|
--- a/builder/dockerfile/builder.go
|
|
+++ b/builder/dockerfile/builder.go
|
|
@@ -559,7 +559,7 @@ func (b *Builder) export(imageID string) error {
|
|
}
|
|
|
|
func (b *Builder) applyTag(imageID string) error {
|
|
- tags := make([]string, 0, 0)
|
|
+ tags := make([]string, 0)
|
|
if b.buildOpts.Tag != "" {
|
|
tags = append(tags, b.buildOpts.Tag)
|
|
}
|
|
diff --git a/builder/dockerfile/builder_test.go b/builder/dockerfile/builder_test.go
|
|
index 3b7513be..60668e1e 100644
|
|
--- a/builder/dockerfile/builder_test.go
|
|
+++ b/builder/dockerfile/builder_test.go
|
|
@@ -21,7 +21,6 @@ import (
|
|
"os"
|
|
"path/filepath"
|
|
"reflect"
|
|
- "regexp"
|
|
"strings"
|
|
"testing"
|
|
|
|
@@ -725,8 +724,7 @@ func TestGetFlagsAndArgs(t *testing.T) {
|
|
// FROM alpine@digest@digest <- fail
|
|
func TestResolveImageName(t *testing.T) {
|
|
type args struct {
|
|
- s string
|
|
- reg *regexp.Regexp
|
|
+ s string
|
|
}
|
|
tests := []struct {
|
|
name string
|
|
@@ -882,8 +880,7 @@ func TestResolveImageName(t *testing.T) {
|
|
// FROM $imageName@${digest}$${digest2} <- fail
|
|
func TestResolveImageNameWithArgs(t *testing.T) {
|
|
type args struct {
|
|
- s string
|
|
- reg *regexp.Regexp
|
|
+ s string
|
|
}
|
|
tests := []struct {
|
|
name string
|
|
diff --git a/builder/dockerfile/container/help.go b/builder/dockerfile/container/help.go
|
|
index 475b479d..c2d5bd87 100644
|
|
--- a/builder/dockerfile/container/help.go
|
|
+++ b/builder/dockerfile/container/help.go
|
|
@@ -69,7 +69,7 @@ func (ref *Reference) createConfigsAndManifests() (docker.Image, docker.Manifest
|
|
}
|
|
|
|
func (ref *Reference) getContainerLayers() ([]string, error) {
|
|
- layers := make([]string, 0, 0)
|
|
+ layers := make([]string, 0)
|
|
layerID := ref.layerID
|
|
layer, err := ref.store.Layer(layerID)
|
|
if err != nil {
|
|
diff --git a/builder/dockerfile/parser/command.go b/builder/dockerfile/parser/command.go
|
|
index 1d62303d..635159ee 100644
|
|
--- a/builder/dockerfile/parser/command.go
|
|
+++ b/builder/dockerfile/parser/command.go
|
|
@@ -322,7 +322,7 @@ func extractFlags(line *parser.Line, cmd string) (string, error) {
|
|
flagRegs := cmdFlagRegs[cmd]
|
|
parts := strings.Fields(line.Raw)
|
|
|
|
- existFlags := make(map[string]bool, 0)
|
|
+ existFlags := make(map[string]bool)
|
|
var i int
|
|
for ; i <= len(parts)-1; i++ {
|
|
if !strings.HasPrefix(parts[i], "--") {
|
|
@@ -545,7 +545,7 @@ func parseKeyValue(line *parser.Line) error {
|
|
}
|
|
|
|
func parseKeyEqualValuePairs(str string) []string {
|
|
- kvPairs := make([]string, 0, 0)
|
|
+ kvPairs := make([]string, 0)
|
|
|
|
for i := 0; i <= len(str)-1; i++ {
|
|
word := []byte{}
|
|
diff --git a/builder/dockerfile/parser/parser.go b/builder/dockerfile/parser/parser.go
|
|
index a21a3f59..650c5e5c 100644
|
|
--- a/builder/dockerfile/parser/parser.go
|
|
+++ b/builder/dockerfile/parser/parser.go
|
|
@@ -109,7 +109,7 @@ func newRowLine(num int, content string) *rowLine {
|
|
|
|
// preprocess the Dockerfile and get the effective physical line
|
|
func preProcess(r io.Reader) []*rowLine {
|
|
- rowLines := make([]*rowLine, 0, 0)
|
|
+ rowLines := make([]*rowLine, 0)
|
|
scanner := bufio.NewScanner(r)
|
|
lineNum := 1
|
|
for scanner.Scan() {
|
|
@@ -134,7 +134,7 @@ func format(rows []*rowLine, d *directive) ([]*parser.Line, error) {
|
|
text := rows[i].content
|
|
line := &parser.Line{
|
|
Begin: rows[i].lineNum,
|
|
- Flags: make(map[string]string, 0),
|
|
+ Flags: make(map[string]string),
|
|
}
|
|
|
|
var logicLine string
|
|
@@ -193,7 +193,7 @@ func constructPages(lines []*parser.Line, onbuild bool) ([]*parser.Page, error)
|
|
|
|
var (
|
|
pageMap = make(map[string]*parser.Page)
|
|
- pages = make([]*parser.Page, 0, 0)
|
|
+ pages = make([]*parser.Page, 0)
|
|
currentPage *parser.Page
|
|
pageNum int
|
|
)
|
|
@@ -204,7 +204,7 @@ func constructPages(lines []*parser.Line, onbuild bool) ([]*parser.Page, error)
|
|
}
|
|
if onbuild && currentPage == nil {
|
|
currentPage = &parser.Page{
|
|
- Lines: make([]*parser.Line, 0, 0),
|
|
+ Lines: make([]*parser.Line, 0),
|
|
Begin: line.Begin,
|
|
End: line.End,
|
|
}
|
|
@@ -227,7 +227,7 @@ func constructPages(lines []*parser.Line, onbuild bool) ([]*parser.Page, error)
|
|
Name: name,
|
|
Begin: line.Begin,
|
|
End: line.End,
|
|
- Lines: make([]*parser.Line, 0, 0),
|
|
+ Lines: make([]*parser.Line, 0),
|
|
}
|
|
// page name comes from the last cell from "FROM {image} AS {name}
|
|
// or named it with the index of stage in this dockerfile
|
|
@@ -266,7 +266,7 @@ func constructPages(lines []*parser.Line, onbuild bool) ([]*parser.Page, error)
|
|
// truncHeadingArgs Handle those ARGs before first FROM in the file
|
|
// returns the truncated lines and converted heading args
|
|
func truncHeadingArgs(lines *[]*parser.Line, onbuild bool) ([]string, error) {
|
|
- args := make([]string, 0, 0)
|
|
+ args := make([]string, 0)
|
|
if onbuild {
|
|
return args, nil
|
|
}
|
|
@@ -295,7 +295,7 @@ const ignoreFile = ".dockerignore"
|
|
// ParseIgnore parses the .dockerignore file in the provide dir, which
|
|
// must be the context directory
|
|
func (df *dockerfile) ParseIgnore(dir string) ([]string, error) {
|
|
- var ignores = make([]string, 0, 0)
|
|
+ var ignores = make([]string, 0)
|
|
|
|
fullPath := path.Join(dir, ignoreFile)
|
|
if _, err := os.Stat(fullPath); err != nil {
|
|
diff --git a/builder/dockerfile/parser/util.go b/builder/dockerfile/parser/util.go
|
|
index bac13fbd..b8867f7f 100644
|
|
--- a/builder/dockerfile/parser/util.go
|
|
+++ b/builder/dockerfile/parser/util.go
|
|
@@ -136,7 +136,6 @@ func (r *resolver) noDollar() {
|
|
// not "\$", this must be hyphen between args, such as '/' in "hub/image" or '_' in 'module_arch'
|
|
r.resolved += string(r.origin[r.idx])
|
|
r.idx++
|
|
- return
|
|
}
|
|
|
|
func (r *resolver) noBrace() error {
|
|
diff --git a/builder/dockerfile/stage_builder.go b/builder/dockerfile/stage_builder.go
|
|
index 23f488cb..f01bad54 100644
|
|
--- a/builder/dockerfile/stage_builder.go
|
|
+++ b/builder/dockerfile/stage_builder.go
|
|
@@ -330,7 +330,7 @@ func (s *stageBuilder) updateStageBuilder() error {
|
|
onbuildData = append(onbuildData, []byte(fmt.Sprintf("%s\n", item))...)
|
|
}
|
|
// OnBuild is handled, clean it here so that we can add new ONBUILDs on cmd builder if needed
|
|
- s.docker.Config.OnBuild = make([]string, 0, 0)
|
|
+ s.docker.Config.OnBuild = make([]string, 0)
|
|
|
|
p, err := parser.NewParser(parser.DefaultParser)
|
|
if err != nil {
|
|
diff --git a/cmd/cli/logout_test.go b/cmd/cli/logout_test.go
|
|
index f5f09057..1328c2a1 100644
|
|
--- a/cmd/cli/logout_test.go
|
|
+++ b/cmd/cli/logout_test.go
|
|
@@ -157,9 +157,8 @@ func TestNewLogoutCmd(t *testing.T) {
|
|
cmd.SetArgs(strings.Split(tt.args, " "))
|
|
err := cmd.Execute()
|
|
if err != nil {
|
|
-
|
|
+ assert.ErrorContains(t, err, tt.errString)
|
|
}
|
|
- assert.ErrorContains(t, err, tt.errString)
|
|
})
|
|
}
|
|
}
|
|
diff --git a/daemon/info.go b/daemon/info.go
|
|
index 8462be1b..cfc658c1 100644
|
|
--- a/daemon/info.go
|
|
+++ b/daemon/info.go
|
|
@@ -108,8 +108,8 @@ func (b *Backend) Info(ctx context.Context, req *pb.InfoRequest) (*pb.InfoRespon
|
|
}
|
|
|
|
func getRegistryInfo() ([]string, []string, []string, error) {
|
|
- registriesInsecure := make([]string, 0, 0)
|
|
- registriesBlock := make([]string, 0, 0)
|
|
+ registriesInsecure := make([]string, 0)
|
|
+ registriesBlock := make([]string, 0)
|
|
systemContext := image.GetSystemContext()
|
|
|
|
registriesSearch, err := sysregistriesv2.UnqualifiedSearchRegistries(systemContext)
|
|
diff --git a/daemon/remove.go b/daemon/remove.go
|
|
index 89e68cfc..4d90bf53 100644
|
|
--- a/daemon/remove.go
|
|
+++ b/daemon/remove.go
|
|
@@ -73,7 +73,7 @@ func (b *Backend) Remove(req *pb.RemoveRequest, stream pb.Control_RemoveServer)
|
|
continue
|
|
}
|
|
|
|
- if removed == true {
|
|
+ if removed {
|
|
imageString := fmt.Sprintf("Untagged image: %v", imageID)
|
|
logrus.Debug(imageString)
|
|
if err = stream.Send(&pb.RemoveResponse{LayerMessage: imageString}); err != nil {
|
|
@@ -118,7 +118,7 @@ func (b *Backend) Remove(req *pb.RemoveRequest, stream pb.Control_RemoveServer)
|
|
}
|
|
|
|
func untagImage(imageID string, store storage.Store, image *storage.Image) (bool, error) {
|
|
- newNames := make([]string, 0, 0)
|
|
+ newNames := make([]string, 0)
|
|
removed := false
|
|
for _, imgName := range image.Names {
|
|
if imgName == imageID {
|
|
@@ -128,7 +128,7 @@ func untagImage(imageID string, store storage.Store, image *storage.Image) (bool
|
|
newNames = append(newNames, imgName)
|
|
}
|
|
|
|
- if removed == true {
|
|
+ if removed {
|
|
if err := store.SetNames(image.ID, newNames); err != nil {
|
|
return false, errors.Wrapf(err, "remove name %v from image %v error", imageID, image.ID)
|
|
}
|
|
diff --git a/image/image.go b/image/image.go
|
|
index e06d2530..1f3944d1 100644
|
|
--- a/image/image.go
|
|
+++ b/image/image.go
|
|
@@ -287,19 +287,19 @@ func createScratchV2Image() *docker.Image {
|
|
ContainerConfig: docker.Config{},
|
|
Config: &docker.Config{
|
|
ExposedPorts: make(docker.PortSet),
|
|
- Env: make([]string, 0, 0),
|
|
- Cmd: make([]string, 0, 0),
|
|
+ Env: make([]string, 0),
|
|
+ Cmd: make([]string, 0),
|
|
Healthcheck: nil,
|
|
Volumes: make(map[string]struct{}),
|
|
- Entrypoint: make([]string, 0, 0),
|
|
- OnBuild: make([]string, 0, 0),
|
|
+ Entrypoint: make([]string, 0),
|
|
+ OnBuild: make([]string, 0),
|
|
Labels: make(map[string]string),
|
|
StopTimeout: nil,
|
|
- Shell: make([]string, 0, 0),
|
|
+ Shell: make([]string, 0),
|
|
},
|
|
},
|
|
RootFS: &docker.RootFS{},
|
|
- History: make([]docker.History, 0, 0),
|
|
+ History: make([]docker.History, 0),
|
|
}
|
|
}
|
|
|
|
diff --git a/pkg/logger/logger.go b/pkg/logger/logger.go
|
|
index 2e4dbdd1..1d9a61df 100644
|
|
--- a/pkg/logger/logger.go
|
|
+++ b/pkg/logger/logger.go
|
|
@@ -45,7 +45,7 @@ type Logger struct {
|
|
// NewRunTimer return an instance of RunTimer
|
|
func NewRunTimer() *RunTimer {
|
|
return &RunTimer{
|
|
- commands: make([]string, 0, 0),
|
|
+ commands: make([]string, 0),
|
|
cmdMap: make(map[string]time.Duration),
|
|
}
|
|
}
|
|
diff --git a/pkg/manifest/list.go b/pkg/manifest/list.go
|
|
index bc6037fc..10907e1d 100644
|
|
--- a/pkg/manifest/list.go
|
|
+++ b/pkg/manifest/list.go
|
|
@@ -53,7 +53,7 @@ func NewManifestList() *List {
|
|
SchemaVersion: container.SchemaVersion,
|
|
MediaType: manifest.DockerV2ListMediaType,
|
|
},
|
|
- instances: make(map[digest.Digest]string, 0),
|
|
+ instances: make(map[digest.Digest]string),
|
|
}
|
|
}
|
|
|
|
diff --git a/pkg/opts/opts.go b/pkg/opts/opts.go
|
|
index 4664d50d..8fb3b308 100644
|
|
--- a/pkg/opts/opts.go
|
|
+++ b/pkg/opts/opts.go
|
|
@@ -61,7 +61,7 @@ func (opts *ListOpts) Type() string {
|
|
|
|
// NewListOpts creates a new ListOpts
|
|
func NewListOpts(validator validatorFunc) ListOpts {
|
|
- values := make(map[string]string, 0)
|
|
+ values := make(map[string]string)
|
|
return ListOpts{
|
|
Values: values,
|
|
validator: validator,
|
|
diff --git a/pkg/stack/stack.go b/pkg/stack/stack.go
|
|
index b2100ce6..8343b6b0 100644
|
|
--- a/pkg/stack/stack.go
|
|
+++ b/pkg/stack/stack.go
|
|
@@ -64,7 +64,7 @@ func dumpStack(path string) {
|
|
)
|
|
|
|
for {
|
|
- stackBuf = make([]byte, bufSize, bufSize)
|
|
+ stackBuf = make([]byte, bufSize)
|
|
stackSize = runtime.Stack(stackBuf, true)
|
|
// if these two sizes equal, which means the allocated buf is not large enough to carry all
|
|
// stacks back, so enlarge the buf and try again
|
|
diff --git a/util/cipher.go b/util/cipher.go
|
|
index 8e62e76b..b2aea2a9 100644
|
|
--- a/util/cipher.go
|
|
+++ b/util/cipher.go
|
|
@@ -61,7 +61,7 @@ func GenerateCryptoKey(s int) ([]byte, error) {
|
|
} else {
|
|
size = aesKeyLenLowerBound
|
|
}
|
|
- key := make([]byte, size, size)
|
|
+ key := make([]byte, size)
|
|
if _, err := io.ReadFull(rand.Reader, key); err != nil {
|
|
return nil, errGenCryptoKey
|
|
}
|
|
@@ -105,7 +105,7 @@ func EncryptAES(data string, aeskey string) (string, error) {
|
|
return "", errors.Errorf("generate rand data for iv failed: %v", err)
|
|
}
|
|
mode := cipher.NewCFBEncrypter(block, iv)
|
|
- encryptData := make([]byte, len(plainText), len(plainText))
|
|
+ encryptData := make([]byte, len(plainText))
|
|
mode.XORKeyStream(encryptData, plainText)
|
|
encryptData = append(iv, encryptData...)
|
|
|
|
@@ -134,7 +134,7 @@ func DecryptAES(data string, aeskey string) (string, error) {
|
|
}
|
|
|
|
decrypter := cipher.NewCFBDecrypter(block, cipherText[:block.BlockSize()])
|
|
- decryptData := make([]byte, len(cipherText)-block.BlockSize(), len(cipherText)-block.BlockSize())
|
|
+ decryptData := make([]byte, len(cipherText)-block.BlockSize())
|
|
decrypter.XORKeyStream(decryptData, cipherText[block.BlockSize():])
|
|
|
|
return string(decryptData), nil
|
|
diff --git a/util/common.go b/util/common.go
|
|
index d0cd9d06..00b1b941 100644
|
|
--- a/util/common.go
|
|
+++ b/util/common.go
|
|
@@ -44,7 +44,7 @@ func CopyMapStringString(m map[string]string) map[string]string {
|
|
|
|
// CopyStrings copies all strings in a slice to a new slice
|
|
func CopyStrings(str []string) []string {
|
|
- result := make([]string, len(str), len(str))
|
|
+ result := make([]string, len(str))
|
|
copy(result, str)
|
|
return result
|
|
}
|
|
--
|
|
2.31.1
|
|
|