Skip to content

Commit c1549a3

Browse files
authored
Merge pull request #418 from databacker/smb-user-pass
properly plumb through SMB username and password
2 parents 7d998d8 + 6be1ecb commit c1549a3

File tree

2 files changed

+15
-3
lines changed

2 files changed

+15
-3
lines changed

cmd/root.go

Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -239,6 +239,17 @@ func rootCmd(execs execs) (*cobra.Command, error) {
239239
pflags.String("smb-pass", "", "SMB username")
240240
pflags.String("smb-domain", "", "SMB domain")
241241

242+
// override the DB_ for these
243+
if err := v.BindEnv("smb-user", "SMB_USER"); err != nil {
244+
return nil, err
245+
}
246+
if err := v.BindEnv("smb-pass", "SMB_PASS"); err != nil {
247+
return nil, err
248+
}
249+
if err := v.BindEnv("smb-domain", "SMB_DOMAIN"); err != nil {
250+
return nil, err
251+
}
252+
242253
for _, subCmd := range subCommands {
243254
if sc, err := subCmd(execs, cmdConfig); err != nil {
244255
return nil, err

pkg/storage/smb/smb.go

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -131,7 +131,9 @@ func (s *SMB) Remove(ctx context.Context, target string, logger *log.Entry) erro
131131

132132
func (s *SMB) exec(u url.URL, command func(fs *smb2.Share, sharepath string) error) error {
133133
var (
134-
username, password, domain string
134+
username = s.username
135+
password = s.password
136+
domain = s.domain
135137
)
136138

137139
hostname, port, path := u.Hostname(), u.Port(), u.Path
@@ -144,10 +146,9 @@ func (s *SMB) exec(u url.URL, command func(fs *smb2.Share, sharepath string) err
144146
if s.username == "" && u.User != nil {
145147
username = u.User.Username()
146148
password, _ = u.User.Password()
149+
username, domain = parseSMBDomain(username)
147150
}
148151

149-
username, domain = parseSMBDomain(username)
150-
151152
conn, err := net.Dial("tcp", host)
152153
if err != nil {
153154
return err

0 commit comments

Comments
 (0)