mirror of
https://github.com/offen/docker-volume-backup.git
synced 2024-11-24 06:00:27 +01:00
Lines from conf files that are comments should not be passed to shell.Expand (#374)
This commit is contained in:
parent
e8307a2b5b
commit
9b768c71e6
@ -8,6 +8,7 @@ import (
|
|||||||
"fmt"
|
"fmt"
|
||||||
"os"
|
"os"
|
||||||
"path/filepath"
|
"path/filepath"
|
||||||
|
"strings"
|
||||||
|
|
||||||
"github.com/joho/godotenv"
|
"github.com/joho/godotenv"
|
||||||
"github.com/offen/docker-volume-backup/internal/errwrap"
|
"github.com/offen/docker-volume-backup/internal/errwrap"
|
||||||
@ -136,6 +137,10 @@ func source(path string) (map[string]string, error) {
|
|||||||
scanner := bufio.NewScanner(f)
|
scanner := bufio.NewScanner(f)
|
||||||
for scanner.Scan() {
|
for scanner.Scan() {
|
||||||
line := scanner.Text()
|
line := scanner.Text()
|
||||||
|
line = strings.TrimSpace(line)
|
||||||
|
if strings.HasPrefix(line, "#") {
|
||||||
|
continue
|
||||||
|
}
|
||||||
withExpansion, err := shell.Expand(line, nil)
|
withExpansion, err := shell.Expand(line, nil)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
return nil, errwrap.Wrap(err, "error expanding env")
|
return nil, errwrap.Wrap(err, "error expanding env")
|
||||||
|
@ -49,6 +49,15 @@ func TestSource(t *testing.T) {
|
|||||||
"QUX": "yyy",
|
"QUX": "yyy",
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
|
{
|
||||||
|
"comments",
|
||||||
|
"testdata/comments.env",
|
||||||
|
false,
|
||||||
|
map[string]string{
|
||||||
|
"BAR": "xxx",
|
||||||
|
"BAZ": "yyy",
|
||||||
|
},
|
||||||
|
},
|
||||||
}
|
}
|
||||||
|
|
||||||
os.Setenv("QUX", "yyy")
|
os.Setenv("QUX", "yyy")
|
||||||
|
7
cmd/backup/testdata/comments.env
vendored
Normal file
7
cmd/backup/testdata/comments.env
vendored
Normal file
@ -0,0 +1,7 @@
|
|||||||
|
# This is a comment about `why` things are here
|
||||||
|
# FOO="${bar:-qux}"
|
||||||
|
# e.g. `backup-$HOSTNAME-%Y-%m-%dT%H-%M-%S.tar.gz`. Expansion happens before`
|
||||||
|
|
||||||
|
BAR=xxx
|
||||||
|
|
||||||
|
BAZ=$QUX
|
@ -1,2 +1,6 @@
|
|||||||
|
# This is a comment
|
||||||
|
# NOT=$(docker ps -aq)
|
||||||
|
# e.g. `backup-$HOSTNAME-%Y-%m-%dT%H-%M-%S.tar.gz`. Expansion happens before`
|
||||||
|
|
||||||
NAME="$EXPANSION_VALUE"
|
NAME="$EXPANSION_VALUE"
|
||||||
BACKUP_CRON_EXPRESSION="*/1 * * * *"
|
BACKUP_CRON_EXPRESSION="*/1 * * * *"
|
||||||
|
Loading…
Reference in New Issue
Block a user