diff options
Diffstat (limited to 'internal/config/config.go')
-rw-r--r-- | internal/config/config.go | 20 |
1 files changed, 19 insertions, 1 deletions
diff --git a/internal/config/config.go b/internal/config/config.go index 2231851..deed74d 100644 --- a/internal/config/config.go +++ b/internal/config/config.go @@ -7,6 +7,7 @@ import ( "path" "path/filepath" + "gitlab.com/gitlab-org/gitlab-shell/client" yaml "gopkg.in/yaml.v2" ) @@ -34,7 +35,24 @@ type Config struct { SecretFilePath string `yaml:"secret_file"` Secret string `yaml:"secret"` HttpSettings HttpSettingsConfig `yaml:"http_settings"` - HttpClient *HttpClient + HttpClient *client.HttpClient +} + +func (c *Config) GetHttpClient() *client.HttpClient { + if c.HttpClient != nil { + return c.HttpClient + } + + client := client.NewHTTPClient( + c.GitlabUrl, + c.HttpSettings.CaFile, + c.HttpSettings.CaPath, + c.HttpSettings.SelfSignedCert, + c.HttpSettings.ReadTimeoutSeconds) + + c.HttpClient = client + + return client } func New() (*Config, error) { |