diff --git a/pkg/client/sftp_client.go b/pkg/client/sftp_client.go index 470ea2c..665490c 100644 --- a/pkg/client/sftp_client.go +++ b/pkg/client/sftp_client.go @@ -22,12 +22,11 @@ type defaultSFTPClient struct { } func NewSFTPClient(cfg config.Config) (SFTPClient, error) { - sftpConfig := cfg.GetSFTPConfig() - addr := fmt.Sprintf("%s:%d", sftpConfig.Host, sftpConfig.Port) + addr := fmt.Sprintf("%s:%d", cfg.GetSFTPHost(), cfg.GetSFTPPort()) clientConfig := &ssh.ClientConfig{ - User: sftpConfig.User, + User: cfg.GetSFTPUser(), Auth: []ssh.AuthMethod{ - ssh.Password(sftpConfig.Pass), + ssh.Password(cfg.GetSFTPPass()), }, HostKeyCallback: ssh.InsecureIgnoreHostKey(), } diff --git a/pkg/config/config.go b/pkg/config/config.go index 8274846..608271b 100644 --- a/pkg/config/config.go +++ b/pkg/config/config.go @@ -5,7 +5,7 @@ import ( "github.com/spf13/viper" ) -type SFTPConfig struct { +type sftpConfig struct { Host string Port int User string @@ -16,14 +16,17 @@ type Config interface { GetBindAddress() string GetPort() int GetLogLevel() string - GetSFTPConfig() SFTPConfig + GetSFTPHost() string + GetSFTPPort() int + GetSFTPUser() string + GetSFTPPass() string } type sftpExporterConfig struct { BindAddress string Port int LogLevel string - SFTPConfig SFTPConfig + SFTPConfig sftpConfig } func LoadConfig() Config { @@ -31,7 +34,7 @@ func LoadConfig() Config { BindAddress: viper.GetString(c.ViperKeyBindAddress), Port: viper.GetInt(c.ViperKeyPort), LogLevel: viper.GetString(c.ViperKeyLogLevel), - SFTPConfig: SFTPConfig{ + SFTPConfig: sftpConfig{ Host: viper.GetString(c.ViperKeySFTPHost), Port: viper.GetInt(c.ViperKeySFTPPort), User: viper.GetString(c.ViperKeySFTPUser), @@ -48,10 +51,22 @@ func (c sftpExporterConfig) GetPort() int { return c.Port } -func (c sftpExporterConfig) GetSFTPConfig() SFTPConfig { - return c.SFTPConfig -} - func (c sftpExporterConfig) GetLogLevel() string { return c.LogLevel } + +func (c sftpExporterConfig) GetSFTPHost() string { + return c.SFTPConfig.Host +} + +func (c sftpExporterConfig) GetSFTPPort() int { + return c.SFTPConfig.Port +} + +func (c sftpExporterConfig) GetSFTPUser() string { + return c.SFTPConfig.User +} + +func (c sftpExporterConfig) GetSFTPPass() string { + return c.SFTPConfig.Pass +} \ No newline at end of file diff --git a/pkg/config/config_test.go b/pkg/config/config_test.go index 7845b2d..8d41f2b 100644 --- a/pkg/config/config_test.go +++ b/pkg/config/config_test.go @@ -21,7 +21,7 @@ func TestNewConfig(t *testing.T) { expected := sftpExporterConfig{ BindAddress: "127.0.0.1", Port: 8080, - SFTPConfig: SFTPConfig{ + SFTPConfig: sftpConfig{ Host: "localhost", Port: 22, User: "arun",