mirror of
https://github.com/offen/docker-volume-backup.git
synced 2026-04-24 09:25:35 +02:00
This reverts commit 911fc5a223.
This commit is contained in:
@@ -4,14 +4,13 @@
|
||||
package main
|
||||
|
||||
import (
|
||||
"context"
|
||||
"fmt"
|
||||
"os"
|
||||
"path/filepath"
|
||||
|
||||
"github.com/joho/godotenv"
|
||||
"github.com/offen/docker-volume-backup/internal/errwrap"
|
||||
"github.com/offen/envconfig"
|
||||
"mvdan.cc/sh/shell"
|
||||
)
|
||||
|
||||
type configStrategy string
|
||||
@@ -100,7 +99,11 @@ func loadConfigsFromEnvFiles(directory string) ([]*Config, error) {
|
||||
continue
|
||||
}
|
||||
p := filepath.Join(directory, item.Name())
|
||||
envFile, err := source(p)
|
||||
f, err := os.ReadFile(p)
|
||||
if err != nil {
|
||||
return nil, errwrap.Wrap(err, fmt.Sprintf("error reading %s", item.Name()))
|
||||
}
|
||||
envFile, err := godotenv.Unmarshal(os.ExpandEnv(string(f)))
|
||||
if err != nil {
|
||||
return nil, errwrap.Wrap(err, fmt.Sprintf("error reading config file %s", p))
|
||||
}
|
||||
@@ -122,17 +125,3 @@ func loadConfigsFromEnvFiles(directory string) ([]*Config, error) {
|
||||
|
||||
return configs, nil
|
||||
}
|
||||
|
||||
// source tries to mimic the pre v2.37.0 behavior of calling
|
||||
// `set +a; source $path; set -a` and returns the env vars as a map
|
||||
func source(path string) (map[string]string, error) {
|
||||
vars, err := shell.SourceFile(context.Background(), path)
|
||||
if err != nil {
|
||||
return nil, errwrap.Wrap(err, "error sourcing conf file")
|
||||
}
|
||||
result := map[string]string{}
|
||||
for key, value := range vars {
|
||||
result[key] = value.String()
|
||||
}
|
||||
return result, nil
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user