summaryrefslogtreecommitdiffstats
path: root/vendor/github.com/spf13/viper/viper_go1_16.go
diff options
context:
space:
mode:
Diffstat (limited to 'vendor/github.com/spf13/viper/viper_go1_16.go')
-rw-r--r--vendor/github.com/spf13/viper/viper_go1_16.go32
1 files changed, 32 insertions, 0 deletions
diff --git a/vendor/github.com/spf13/viper/viper_go1_16.go b/vendor/github.com/spf13/viper/viper_go1_16.go
new file mode 100644
index 00000000..e10172fa
--- /dev/null
+++ b/vendor/github.com/spf13/viper/viper_go1_16.go
@@ -0,0 +1,32 @@
+//go:build go1.16 && finder
+// +build go1.16,finder
+
+package viper
+
+import (
+ "fmt"
+
+ "github.com/spf13/afero"
+)
+
+// Search all configPaths for any config file.
+// Returns the first path that exists (and is a config file).
+func (v *Viper) findConfigFile() (string, error) {
+ finder := finder{
+ paths: v.configPaths,
+ fileNames: []string{v.configName},
+ extensions: SupportedExts,
+ withoutExtension: v.configType != "",
+ }
+
+ file, err := finder.Find(afero.NewIOFS(v.fs))
+ if err != nil {
+ return "", err
+ }
+
+ if file == "" {
+ return "", ConfigFileNotFoundError{v.configName, fmt.Sprintf("%s", v.configPaths)}
+ }
+
+ return file, nil
+}