From 303ef9cd806f45f0899da72be24be6be3c24d4a9 Mon Sep 17 00:00:00 2001 From: yxxhero Date: Sun, 3 Apr 2022 15:53:19 +0800 Subject: [PATCH] remove ioutil usage in all project Signed-off-by: yxxhero --- pkg/app/app.go | 3 +-- pkg/app/run.go | 3 +-- pkg/app/snapshot_test.go | 5 ++--- pkg/helmexec/exec.go | 7 +++---- pkg/remote/remote.go | 2 +- pkg/state/chart_dependency.go | 5 ++--- pkg/state/create_test.go | 3 +-- pkg/state/envvals_loader_test.go | 4 ++-- pkg/state/state.go | 9 ++++----- pkg/state/state_gogetter_test.go | 5 ++--- pkg/state/state_test.go | 5 ++--- pkg/state/temp.go | 3 +-- pkg/tmpl/file_renderer.go | 6 +++--- test/yamldiff/yamldiff.go | 6 +++--- 14 files changed, 28 insertions(+), 38 deletions(-) diff --git a/pkg/app/app.go b/pkg/app/app.go index 180f6cf1..d03ed6d6 100644 --- a/pkg/app/app.go +++ b/pkg/app/app.go @@ -3,7 +3,6 @@ package app import ( "bytes" "fmt" - "io/ioutil" "log" "os" "os/signal" @@ -87,7 +86,7 @@ func New(conf ConfigProvider) *App { } func Init(app *App) *App { - app.readFile = ioutil.ReadFile + app.readFile = os.ReadFile app.deleteFile = os.Remove app.glob = filepath.Glob app.abs = filepath.Abs diff --git a/pkg/app/run.go b/pkg/app/run.go index ed680138..52498c01 100644 --- a/pkg/app/run.go +++ b/pkg/app/run.go @@ -2,7 +2,6 @@ package app import ( "fmt" - "io/ioutil" "os" "sort" "strings" @@ -52,7 +51,7 @@ func (r *Run) withPreparedCharts(helmfileCommand string, opts state.ChartPrepare // Create tmp directory and bail immediately if it fails var dir string if len(opts.OutputDir) == 0 { - tempDir, err := ioutil.TempDir("", "helmfile*") + tempDir, err := os.MkdirTemp("", "helmfile*") if err != nil { return err } diff --git a/pkg/app/snapshot_test.go b/pkg/app/snapshot_test.go index 1ce6bc70..b109f74e 100644 --- a/pkg/app/snapshot_test.go +++ b/pkg/app/snapshot_test.go @@ -1,7 +1,6 @@ package app import ( - "io/ioutil" "os" "path/filepath" "reflect" @@ -24,7 +23,7 @@ func assertEqualsToSnapshot(t *testing.T, name string, data string) { return } - wantData, err := ioutil.ReadFile(snapshotFileName) + wantData, err := os.ReadFile(snapshotFileName) if err != nil { t.Fatalf( "Snapshot file %q does not exist. Rerun this test with `HELMFILE_UPDATE_SNAPSHOT=1 go test -v -run %s %s` to create the snapshot", @@ -53,7 +52,7 @@ func update(t *testing.T, snapshotFileName string, data []byte) { t.Fatalf("%v", err) } - if err := ioutil.WriteFile(snapshotFileName, data, 0644); err != nil { + if err := os.WriteFile(snapshotFileName, data, 0644); err != nil { t.Fatalf("%v", err) } } diff --git a/pkg/helmexec/exec.go b/pkg/helmexec/exec.go index 3071284a..c839f397 100644 --- a/pkg/helmexec/exec.go +++ b/pkg/helmexec/exec.go @@ -4,7 +4,6 @@ import ( "bytes" "fmt" "io" - "io/ioutil" "os" "path/filepath" "strconv" @@ -293,7 +292,7 @@ func (helm *execer) DecryptSecret(context HelmContext, name string, flags ...str decFilename = absPath + decSuffix } - secretBytes, err := ioutil.ReadFile(decFilename) + secretBytes, err := os.ReadFile(decFilename) if err != nil { secret.err = err return "", err @@ -323,7 +322,7 @@ func (helm *execer) DecryptSecret(context HelmContext, name string, flags ...str tempFile = func(content []byte) (string, error) { dir := filepath.Dir(name) extension := filepath.Ext(name) - tmpFile, err := ioutil.TempFile(dir, "secret*"+extension) + tmpFile, err := os.CreateTemp(dir, "secret*"+extension) if err != nil { return "", err } @@ -442,7 +441,7 @@ func (helm *execer) ChartPull(chart string, flags ...string) error { ociChartURLSplit := strings.Split(chart, ":") ociChartURL := fmt.Sprintf("oci://%s", ociChartURLSplit[0]) ociChartTag := ociChartURLSplit[1] - tempDir, err := ioutil.TempDir("", "chart*") + tempDir, err := os.MkdirTemp("", "chart*") if err != nil { return err } diff --git a/pkg/remote/remote.go b/pkg/remote/remote.go index bd6564be..f17b9b0a 100644 --- a/pkg/remote/remote.go +++ b/pkg/remote/remote.go @@ -34,7 +34,7 @@ type Remote struct { Getter Getter // ReadFile is the implementation of the file reader that reads a local file from the specified path. - // Inject any implementation of your choice, like an im-memory impl for testing, ioutil.ReadFile for the real-world use. + // Inject any implementation of your choice, like an im-memory impl for testing, os.ReadFile for the real-world use. ReadFile func(string) ([]byte, error) DirExists func(string) bool FileExists func(string) bool diff --git a/pkg/state/chart_dependency.go b/pkg/state/chart_dependency.go index 0c85be71..a9390f65 100644 --- a/pkg/state/chart_dependency.go +++ b/pkg/state/chart_dependency.go @@ -2,7 +2,6 @@ package state import ( "fmt" - "io/ioutil" "os" "path/filepath" "sort" @@ -273,8 +272,8 @@ type chartDependencyManager struct { func NewChartDependencyManager(name string, logger *zap.SugaredLogger) *chartDependencyManager { return &chartDependencyManager{ Name: name, - readFile: ioutil.ReadFile, - writeFile: ioutil.WriteFile, + readFile: os.ReadFile, + writeFile: os.WriteFile, logger: logger, } } diff --git a/pkg/state/create_test.go b/pkg/state/create_test.go index 5322d5f6..7a791a16 100644 --- a/pkg/state/create_test.go +++ b/pkg/state/create_test.go @@ -1,7 +1,6 @@ package state import ( - "io/ioutil" "os" "path/filepath" "reflect" @@ -20,7 +19,7 @@ import ( func createFromYaml(content []byte, file string, env string, logger *zap.SugaredLogger) (*HelmState, error) { c := &StateCreator{ logger: logger, - readFile: ioutil.ReadFile, + readFile: os.ReadFile, abs: filepath.Abs, DeleteFile: os.Remove, diff --git a/pkg/state/envvals_loader_test.go b/pkg/state/envvals_loader_test.go index 264591e0..1aa507fe 100644 --- a/pkg/state/envvals_loader_test.go +++ b/pkg/state/envvals_loader_test.go @@ -1,7 +1,7 @@ package state import ( - "io/ioutil" + "os" "path/filepath" "testing" @@ -28,7 +28,7 @@ func newLoader() *EnvironmentValuesLoader { readFile := func(s string) ([]byte, error) { return []byte{}, nil } dirExists := func(d string) bool { return false } fileExists := func(f string) bool { return false } - return NewEnvironmentValuesLoader(storage, ioutil.ReadFile, sugar, remote.NewRemote(sugar, "/tmp", readFile, dirExists, fileExists)) + return NewEnvironmentValuesLoader(storage, os.ReadFile, sugar, remote.NewRemote(sugar, "/tmp", readFile, dirExists, fileExists)) } // See https://github.com/roboll/helmfile/pull/1169 diff --git a/pkg/state/state.go b/pkg/state/state.go index fae56776..5f8bb8dc 100644 --- a/pkg/state/state.go +++ b/pkg/state/state.go @@ -7,7 +7,6 @@ import ( "errors" "fmt" "io" - "io/ioutil" "os" "path" "path/filepath" @@ -1499,7 +1498,7 @@ func (st *HelmState) WriteReleasesValues(helm helmexec.Interface, additionalValu return []error{err} } - if err := ioutil.WriteFile(outputValuesFile, buf.Bytes(), 0644); err != nil { + if err := os.WriteFile(outputValuesFile, buf.Bytes(), 0644); err != nil { return []error{fmt.Errorf("writing values file %s: %w", outputValuesFile, err)} } @@ -2285,7 +2284,7 @@ func (st *HelmState) UpdateDeps(helm helmexec.Interface, includeTransitiveNeeds if len(errs) == 0 { tempDir := st.tempDir if tempDir == nil { - tempDir = ioutil.TempDir + tempDir = os.MkdirTemp } _, err := st.updateDependenciesInTempDir(helm, tempDir) if err != nil { @@ -2785,7 +2784,7 @@ func (st *HelmState) generateSecretValuesFiles(helm helmexec.Interface, release return nil, err } - path, err := ioutil.TempFile(os.TempDir(), "helmfile-embdedded-secrets-*.yaml.enc") + path, err := os.CreateTemp(os.TempDir(), "helmfile-embdedded-secrets-*.yaml.enc") if err != nil { return nil, err } @@ -2794,7 +2793,7 @@ func (st *HelmState) generateSecretValuesFiles(helm helmexec.Interface, release _ = os.Remove(path.Name()) }() - if err := ioutil.WriteFile(path.Name(), bs, 0644); err != nil { + if err := os.WriteFile(path.Name(), bs, 0644); err != nil { return nil, err } diff --git a/pkg/state/state_gogetter_test.go b/pkg/state/state_gogetter_test.go index c460fa92..bf4dd74c 100644 --- a/pkg/state/state_gogetter_test.go +++ b/pkg/state/state_gogetter_test.go @@ -2,7 +2,6 @@ package state import ( "fmt" - "io/ioutil" "os" "testing" @@ -31,7 +30,7 @@ func TestGoGetter(t *testing.T) { for i, tc := range testcases { test := tc t.Run(fmt.Sprintf("case %d", i), func(t *testing.T) { - d, err := ioutil.TempDir("", "testgogetter") + d, err := os.MkdirTemp("", "testgogetter") if err != nil { panic(err) } @@ -39,7 +38,7 @@ func TestGoGetter(t *testing.T) { st := &HelmState{ logger: logger, - readFile: ioutil.ReadFile, + readFile: os.ReadFile, basePath: d, } diff --git a/pkg/state/state_test.go b/pkg/state/state_test.go index e35d6fc0..090284b9 100644 --- a/pkg/state/state_test.go +++ b/pkg/state/state_test.go @@ -2,7 +2,6 @@ package state import ( "fmt" - "io/ioutil" "os" "path/filepath" "reflect" @@ -1798,7 +1797,7 @@ func TestHelmState_UpdateDeps(t *testing.T) { var generatedDir string tempDir := func(dir, prefix string) (string, error) { var err error - generatedDir, err = ioutil.TempDir(dir, prefix) + generatedDir, err = os.MkdirTemp(dir, prefix) if err != nil { return "", err } @@ -1815,7 +1814,7 @@ generated: 2019-05-16T15:42:45.50486+09:00 `) filename := filepath.Join(generatedDir, "requirements.lock") logger.Debugf("test: writing %s: %s", filename, content) - return ioutil.WriteFile(filename, content, 0644) + return os.WriteFile(filename, content, 0644) } return generatedDir, nil } diff --git a/pkg/state/temp.go b/pkg/state/temp.go index 6a38a3e0..cf8d75b1 100644 --- a/pkg/state/temp.go +++ b/pkg/state/temp.go @@ -4,7 +4,6 @@ import ( "errors" "fmt" "hash/fnv" - "io/ioutil" "os" "path/filepath" "strings" @@ -34,7 +33,7 @@ func tempValuesFilePath(release *ReleaseSpec, data interface{}) (*string, error) workDir := os.Getenv("HELMFILE_TEMPDIR") if workDir == "" { - workDir, err = ioutil.TempDir(os.TempDir(), "helmfile") + workDir, err = os.MkdirTemp(os.TempDir(), "helmfile") if err != nil { panic(err) } diff --git a/pkg/tmpl/file_renderer.go b/pkg/tmpl/file_renderer.go index 6a19d4f1..16c41cf4 100644 --- a/pkg/tmpl/file_renderer.go +++ b/pkg/tmpl/file_renderer.go @@ -2,7 +2,7 @@ package tmpl import ( "bytes" - "io/ioutil" + "os" "fmt" "strings" @@ -27,11 +27,11 @@ func NewFileRenderer(readFile func(filename string) ([]byte, error), basePath st func NewFirstPassRenderer(basePath string, data interface{}) *FileRenderer { return &FileRenderer{ - ReadFile: ioutil.ReadFile, + ReadFile: os.ReadFile, Context: &Context{ preRender: true, basePath: basePath, - readFile: ioutil.ReadFile, + readFile: os.ReadFile, }, Data: data, } diff --git a/test/yamldiff/yamldiff.go b/test/yamldiff/yamldiff.go index ccac372b..5d0f9bc5 100644 --- a/test/yamldiff/yamldiff.go +++ b/test/yamldiff/yamldiff.go @@ -2,7 +2,7 @@ package main import ( "fmt" - "io/ioutil" + "io" "os" "strings" @@ -79,9 +79,9 @@ func unmarshal(filename string) (interface{}, error) { var contents []byte var err error if filename == "-" { - contents, err = ioutil.ReadAll(os.Stdin) + contents, err = io.ReadAll(os.Stdin) } else { - contents, err = ioutil.ReadFile(filename) + contents, err = os.ReadFile(filename) } if err != nil { return nil, err