From ba44b588972119ebe8fac42a03007f107792a4e9 Mon Sep 17 00:00:00 2001 From: Derrick Hammer Date: Mon, 15 Jan 2024 08:38:05 -0500 Subject: [PATCH] fix: need to create init for storage service to ensure it configures the http client after we have read the config --- cmd/portal/portal.go | 5 +++++ interfaces/storage.go | 1 + storage/storage.go | 16 ++++++++++------ 3 files changed, 16 insertions(+), 6 deletions(-) diff --git a/cmd/portal/portal.go b/cmd/portal/portal.go index 81aae3a..989fa9a 100644 --- a/cmd/portal/portal.go +++ b/cmd/portal/portal.go @@ -125,6 +125,11 @@ func (p *PortalImpl) getInitFuncs() []func() error { func() error { return protocols.Init(p.protocolRegistry) }, + func() error { + p.storage.Init() + + return nil + }, func() error { return api.Init(p.apiRegistry) }, diff --git a/interfaces/storage.go b/interfaces/storage.go index 742d80a..095ceee 100644 --- a/interfaces/storage.go +++ b/interfaces/storage.go @@ -3,5 +3,6 @@ package interfaces import "io" type StorageService interface { + Init() PutFile(file io.ReadSeeker, bucket string, generateProof bool) ([]byte, error) } diff --git a/storage/storage.go b/storage/storage.go index 69d70ac..fe67d3e 100644 --- a/storage/storage.go +++ b/storage/storage.go @@ -19,14 +19,9 @@ type StorageServiceImpl struct { } func NewStorageService(portal interfaces.Portal) interfaces.StorageService { - client := resty.New() - - client.SetBaseURL(portal.Config().GetString("core.sia.url")) - client.SetBasicAuth("", portal.Config().GetString("core.sia.key")) - return &StorageServiceImpl{ portal: portal, - httpApi: client, + httpApi: nil, } } @@ -62,3 +57,12 @@ func (s StorageServiceImpl) PutFile(file io.ReadSeeker, bucket string, generateP return hash[:], nil } + +func (s *StorageServiceImpl) Init() { + client := resty.New() + + client.SetBaseURL(s.portal.Config().GetString("core.sia.url")) + client.SetBasicAuth("", s.portal.Config().GetString("core.sia.key")) + + s.httpApi = client +}