Skip to content

Commit c735fc2

Browse files
committed
chore: additional refactoring for K8sUtilExtended implementation
1 parent f78867c commit c735fc2

1 file changed

Lines changed: 13 additions & 4 deletions

File tree

common-lib/utils/k8s/K8sService.go

Lines changed: 13 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -127,6 +127,7 @@ type K8sService interface {
127127
type K8sServiceImpl struct {
128128
logger *zap.SugaredLogger
129129
runTimeConfig *RuntimeConfig
130+
kubeConfigBuilder KubeConfigBuilderInterface
130131
httpTransportConfig *HttpTransportConfig
131132
kubeconfig *string
132133
opts Options
@@ -165,6 +166,14 @@ func (opt *Options) GetTransportType() TransportType {
165166
func NewK8sUtil(
166167
logger *zap.SugaredLogger,
167168
runTimeConfig *RuntimeConfig,
169+
) (*K8sServiceImpl, error) {
170+
return NewK8sUtilBuilder(logger, runTimeConfig, NewKubeConfigBuilder())
171+
}
172+
173+
func NewK8sUtilBuilder(
174+
logger *zap.SugaredLogger,
175+
runTimeConfig *RuntimeConfig,
176+
kubeConfigBuilder KubeConfigBuilderInterface,
168177
) (*K8sServiceImpl, error) {
169178
var kubeconfig *string
170179
if runTimeConfig.LocalDevMode {
@@ -181,19 +190,19 @@ func NewK8sUtil(
181190
runTimeConfig: runTimeConfig,
182191
kubeconfig: kubeconfig,
183192
httpTransportConfig: NewHttpTransportConfig(logger),
193+
kubeConfigBuilder: kubeConfigBuilder,
184194
}, nil
185195
}
186196

187197
func (impl *K8sServiceImpl) NewKubeConfigImpl(
188198
httpTransportConfig HttpTransportInterface,
189-
kubeConfigBuilder KubeConfigBuilderInterface,
190199
) *KubeConfigImpl {
191200
return NewKubeConfigImpl(
192201
impl.logger,
193202
impl.runTimeConfig,
194203
impl.kubeconfig,
195204
httpTransportConfig,
196-
kubeConfigBuilder,
205+
impl.kubeConfigBuilder,
197206
)
198207
}
199208

@@ -204,10 +213,10 @@ func (impl *K8sServiceImpl) NewKubeConfigImpl(
204213
func (impl *K8sServiceImpl) WithHttpTransport(opt Options) KubeConfigInterface {
205214
switch opt.GetTransportType() {
206215
case TransportTypeDefault:
207-
return impl.NewKubeConfigImpl(impl.GetDefaultHttpClientConfig(), NewKubeConfigBuilder())
216+
return impl.NewKubeConfigImpl(impl.GetDefaultHttpClientConfig())
208217
default:
209218
// default fallback is custom transport
210-
return impl.NewKubeConfigImpl(impl.GetCustomHttpClientConfig(), NewKubeConfigBuilder())
219+
return impl.NewKubeConfigImpl(impl.GetCustomHttpClientConfig())
211220
}
212221
}
213222

0 commit comments

Comments
 (0)