Skip to content

Commit 9335e40

Browse files
m-Bilalhasura-bot
authored andcommitted
cli: remove os.IsNotExist and os.IsExist error checks
PR-URL: hasura/graphql-engine-mono#7068 GitOrigin-RevId: 37735c0020df23857015871890d2f6774166d7b1
1 parent b74c295 commit 9335e40

File tree

5 files changed

+25
-19
lines changed

5 files changed

+25
-19
lines changed

cli/cli.go

Lines changed: 7 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -11,8 +11,10 @@ import (
1111
"bytes"
1212
"context"
1313
"encoding/json"
14+
stderrors "errors"
1415
"fmt"
1516
"io"
17+
"io/fs"
1618
"io/ioutil"
1719
"net/http"
1820
"net/url"
@@ -686,15 +688,15 @@ func (ec *ExecutionContext) Validate() error {
686688

687689
// set name of migration directory
688690
ec.MigrationDir = filepath.Join(ec.ExecutionDirectory, ec.Config.MigrationsDirectory)
689-
if _, err := os.Stat(ec.MigrationDir); os.IsNotExist(err) {
691+
if _, err := os.Stat(ec.MigrationDir); stderrors.Is(err, fs.ErrNotExist) {
690692
err = os.MkdirAll(ec.MigrationDir, os.ModePerm)
691693
if err != nil {
692694
return errors.E(op, fmt.Errorf("cannot create migrations directory: %w", err))
693695
}
694696
}
695697

696698
ec.SeedsDirectory = filepath.Join(ec.ExecutionDirectory, ec.Config.SeedsDirectory)
697-
if _, err := os.Stat(ec.SeedsDirectory); os.IsNotExist(err) {
699+
if _, err := os.Stat(ec.SeedsDirectory); stderrors.Is(err, fs.ErrNotExist) {
698700
err = os.MkdirAll(ec.SeedsDirectory, os.ModePerm)
699701
if err != nil {
700702
return errors.E(op, fmt.Errorf("cannot create seeds directory: %w", err))
@@ -704,7 +706,7 @@ func (ec *ExecutionContext) Validate() error {
704706
if ec.Config.Version >= V2 && ec.Config.MetadataDirectory != "" {
705707
if len(ec.Config.MetadataFile) > 0 {
706708
ec.MetadataFile = filepath.Join(ec.ExecutionDirectory, ec.Config.MetadataFile)
707-
if _, err := os.Stat(ec.MetadataFile); os.IsNotExist(err) {
709+
if _, err := os.Stat(ec.MetadataFile); stderrors.Is(err, fs.ErrNotExist) {
708710
if err := ioutil.WriteFile(ec.MetadataFile, []byte(""), os.ModePerm); err != nil {
709711
return errors.E(op, err)
710712
}
@@ -720,7 +722,7 @@ func (ec *ExecutionContext) Validate() error {
720722
}
721723
// set name of metadata directory
722724
ec.MetadataDir = filepath.Join(ec.ExecutionDirectory, ec.Config.MetadataDirectory)
723-
if _, err := os.Stat(ec.MetadataDir); os.IsNotExist(err) && !(len(ec.MetadataFile) > 0) {
725+
if _, err := os.Stat(ec.MetadataDir); stderrors.Is(err, fs.ErrNotExist) && !(len(ec.MetadataFile) > 0) {
724726
err = os.MkdirAll(ec.MetadataDir, os.ModePerm)
725727
if err != nil {
726728
return errors.E(op, fmt.Errorf("cannot create metadata directory: %w", err))
@@ -952,7 +954,7 @@ func (ec *ExecutionContext) loadEnvfile() error {
952954
if ec.Envfile != ".env" {
953955
return errors.E(op, err)
954956
}
955-
if !os.IsNotExist(err) {
957+
if !stderrors.Is(err, fs.ErrNotExist) {
956958
ec.Logger.Warn(err)
957959
}
958960
}

cli/directory.go

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,9 @@
11
package cli
22

33
import (
4+
stderrors "errors"
45
"fmt"
6+
"io/fs"
57
"os"
68
"path/filepath"
79
"regexp"
@@ -36,7 +38,7 @@ func (ec *ExecutionContext) validateDirectory() error {
3638

3739
ed, err := os.Stat(ec.ExecutionDirectory)
3840
if err != nil {
39-
if os.IsNotExist(err) {
41+
if stderrors.Is(err, fs.ErrNotExist) {
4042
return errors.E(op, fmt.Errorf("did not find required directory. use 'init'?: %w", err))
4143
}
4244
return errors.E(op, fmt.Errorf("error getting directory details: %w", err))
@@ -89,7 +91,7 @@ func ValidateDirectory(dir string) error {
8991
var op errors.Op = "cli.ValidateDirectory"
9092
notFound := []string{}
9193
for _, f := range filesRequired {
92-
if _, err := os.Stat(filepath.Join(dir, f)); os.IsNotExist(err) {
94+
if _, err := os.Stat(filepath.Join(dir, f)); stderrors.Is(err, fs.ErrNotExist) {
9395
relpath, e := filepath.Rel(dir, f)
9496
if e == nil {
9597
f = relpath

cli/global_config.go

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,9 @@ package cli
22

33
import (
44
"encoding/json"
5+
stderrors "errors"
56
"fmt"
7+
"io/fs"
68
"io/ioutil"
79
"os"
810
"path/filepath"
@@ -138,7 +140,7 @@ func (ec *ExecutionContext) setupGlobalConfig() error {
138140

139141
// check if the global config file exist
140142
_, err = os.Stat(ec.GlobalConfigFile)
141-
if os.IsNotExist(err) {
143+
if stderrors.Is(err, fs.ErrNotExist) {
142144

143145
// file does not exist, teat as first run and create it
144146
ec.Logger.Debug("global config file does not exist, this could be the first run, creating it...")
@@ -162,7 +164,7 @@ func (ec *ExecutionContext) setupGlobalConfig() error {
162164
// also show a notice about telemetry
163165
ec.Logger.Info(TelemetryNotice)
164166

165-
} else if os.IsExist(err) || err == nil {
167+
} else if stderrors.Is(err, fs.ErrExist) || err == nil {
166168

167169
// file exists, verify contents
168170
ec.Logger.Debug("global config file exists, verifying contents")

cli/plugins/scanner.go

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -64,7 +64,7 @@ func (c *Config) LoadPluginListFromFS(indexDir string) (Plugins, error) {
6464
}
6565

6666
// LoadPluginByName loads a plugins index file by its name. When plugin
67-
// file not found, it returns an error that can be checked with os.IsNotExist.
67+
// file not found, it returns an error that can be checked with stderrors.Is(err, fs.ErrNotExist)
6868
func (c *Config) LoadPluginByName(pluginName string) (*PluginVersions, error) {
6969
var op errors.Op = "plugins.Config.LoadPluginByName"
7070
c.Logger.Debugf("loading plugin %s", pluginName)
@@ -123,7 +123,7 @@ func (c *Config) LoadPlugins(files []string, pluginName ...string) Plugins {
123123
}
124124

125125
// ReadPluginFromFile loads a file from the FS. When plugin file not found, it
126-
// returns an error that can be checked with os.IsNotExist.
126+
// returns an error that can be checked with stderrors.Is(err, fs.ErrNotExist).
127127
func (c *Config) ReadPluginFromFile(path string) (Plugin, error) {
128128
var op errors.Op = "plugins.Config.ReadPluginFromFile"
129129
f, err := os.Open(path)

cli/util/copy.go

Lines changed: 8 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -159,33 +159,33 @@ func CopyFileAfero(fs afero.Fs, src, dst string) error {
159159
}
160160

161161
// CopyDir but with afero
162-
func CopyDirAfero(fs afero.Fs, src string, dst string) error {
162+
func CopyDirAfero(afs afero.Fs, src string, dst string) error {
163163
var op errors.Op = "util.CopyDirAfero"
164164
src = filepath.Clean(src)
165165
dst = filepath.Clean(dst)
166166

167-
si, err := fs.Stat(src)
167+
si, err := afs.Stat(src)
168168
if err != nil {
169169
return errors.E(op, err)
170170
}
171171
if !si.IsDir() {
172172
return errors.E(op, fmt.Errorf("source is not a directory"))
173173
}
174174

175-
_, err = fs.Stat(dst)
176-
if err != nil && !os.IsNotExist(err) {
175+
_, err = afs.Stat(dst)
176+
if err != nil && !stderrors.Is(err, fs.ErrNotExist) {
177177
return errors.E(op, err)
178178
}
179179
if err == nil {
180180
return errors.E(op, fmt.Errorf("destination already exists"))
181181
}
182182

183-
err = fs.MkdirAll(dst, si.Mode())
183+
err = afs.MkdirAll(dst, si.Mode())
184184
if err != nil {
185185
return errors.E(op, err)
186186
}
187187

188-
entries, err := afero.ReadDir(fs, src)
188+
entries, err := afero.ReadDir(afs, src)
189189
if err != nil {
190190
return errors.E(op, err)
191191
}
@@ -195,7 +195,7 @@ func CopyDirAfero(fs afero.Fs, src string, dst string) error {
195195
dstPath := filepath.Join(dst, entry.Name())
196196

197197
if entry.IsDir() {
198-
err = CopyDirAfero(fs, srcPath, dstPath)
198+
err = CopyDirAfero(afs, srcPath, dstPath)
199199
if err != nil {
200200
return errors.E(op, err)
201201
}
@@ -205,7 +205,7 @@ func CopyDirAfero(fs afero.Fs, src string, dst string) error {
205205
continue
206206
}
207207

208-
err = CopyFileAfero(fs, srcPath, dstPath)
208+
err = CopyFileAfero(afs, srcPath, dstPath)
209209
if err != nil {
210210
return errors.E(op, err)
211211
}

0 commit comments

Comments
 (0)