Skip to content

Commit bdd6aa2

Browse files
committed
move GetRelevantBuild and GetRelevantSign from Combiner to kernelMapperHelperAPI
Refactor the module.Combiner interface by removing the GetRelevantBuild and GetRelevantSign methods. These methods are now part of the module.kernelMapperHelperAPI interface. As part of the change, renaming Combiner to BuildArgOverrider.
1 parent c6522af commit bdd6aa2

18 files changed

+486
-570
lines changed

cmd/manager-hub/main.go

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -108,12 +108,12 @@ func main() {
108108
metricsAPI.Register()
109109

110110
registryAPI := registry.NewRegistry()
111-
buildSignCombiner := module.NewCombiner()
112-
buildSignPodAPI := buildsignpod.NewBuildSignPodManager(client, buildSignCombiner, scheme)
111+
buildArgOverrider := module.NewBuildArgOverrider()
112+
buildSignPodAPI := buildsignpod.NewBuildSignPodManager(client, buildArgOverrider, scheme)
113113

114114
buildAPI := buildpod.NewBuildManager(
115115
client,
116-
buildpod.NewMaker(client, buildSignCombiner, buildSignPodAPI, scheme),
116+
buildpod.NewMaker(client, buildArgOverrider, buildSignPodAPI, scheme),
117117
buildSignPodAPI,
118118
registryAPI,
119119
)
@@ -125,7 +125,7 @@ func main() {
125125
registryAPI,
126126
)
127127

128-
kernelAPI := module.NewKernelMapper(buildSignCombiner)
128+
kernelAPI := module.NewKernelMapper(buildArgOverrider)
129129

130130
ctrlLogger := setupLogger.WithValues("name", hub.ManagedClusterModuleReconcilerName)
131131
ctrlLogger.Info("Adding controller")

cmd/manager/main.go

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -116,9 +116,9 @@ func main() {
116116
metricsAPI.Register()
117117

118118
registryAPI := registry.NewRegistry()
119-
buildSignCombinerAPI := module.NewCombiner()
119+
buildArgOverriderAPI := module.NewBuildArgOverrider()
120120
nodeAPI := node.NewNode(client)
121-
kernelAPI := module.NewKernelMapper(buildSignCombinerAPI)
121+
kernelAPI := module.NewKernelMapper(buildArgOverriderAPI)
122122
micAPI := mic.New(client, scheme)
123123
mbscAPI := mbsc.New(client, scheme)
124124
imagePullerAPI := pod.NewImagePuller(client, scheme)
@@ -181,7 +181,7 @@ func main() {
181181
cmd.FatalError(setupLogger, err, "unable to create controller", "name", controllers.NodeKernelClusterClaimReconcilerName)
182182
}
183183
} else {
184-
builSignAPI := buildsignpod.NewManager(client, buildSignCombinerAPI, scheme)
184+
builSignAPI := buildsignpod.NewManager(client, buildArgOverriderAPI, scheme)
185185

186186
mbscr := controllers.NewMBSCReconciler(client, builSignAPI, mbscAPI)
187187
if err = mbscr.SetupWithManager(mgr); err != nil {

internal/build/helper.go

Lines changed: 0 additions & 23 deletions
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,6 @@ import (
1010

1111
type Helper interface {
1212
ApplyBuildArgOverrides(args []kmmv1beta1.BuildArg, overrides ...kmmv1beta1.BuildArg) []kmmv1beta1.BuildArg
13-
GetRelevantBuild(moduleBuild *kmmv1beta1.Build, mappingBuild *kmmv1beta1.Build) *kmmv1beta1.Build
1413
}
1514

1615
type helper struct{}
@@ -43,25 +42,3 @@ func (m *helper) ApplyBuildArgOverrides(args []kmmv1beta1.BuildArg, overrides ..
4342

4443
return args
4544
}
46-
47-
func (m *helper) GetRelevantBuild(moduleBuild *kmmv1beta1.Build, mappingBuild *kmmv1beta1.Build) *kmmv1beta1.Build {
48-
if moduleBuild == nil {
49-
return mappingBuild.DeepCopy()
50-
}
51-
52-
if mappingBuild == nil {
53-
return moduleBuild.DeepCopy()
54-
}
55-
56-
buildConfig := moduleBuild.DeepCopy()
57-
if mappingBuild.DockerfileConfigMap != nil {
58-
buildConfig.DockerfileConfigMap = mappingBuild.DockerfileConfigMap
59-
}
60-
61-
buildConfig.BuildArgs = m.ApplyBuildArgOverrides(buildConfig.BuildArgs, mappingBuild.BuildArgs...)
62-
63-
// [TODO] once MGMT-10832 is consolidated, this code must be revisited. We will decide which
64-
// secret and how to use, and if we need to take care of repeated secrets names
65-
buildConfig.Secrets = append(buildConfig.Secrets, mappingBuild.Secrets...)
66-
return buildConfig
67-
}

internal/build/helper_test.go

Lines changed: 0 additions & 46 deletions
Original file line numberDiff line numberDiff line change
@@ -4,54 +4,8 @@ import (
44
kmmv1beta1 "github.com/kubernetes-sigs/kernel-module-management/api/v1beta1"
55
. "github.com/onsi/ginkgo/v2"
66
. "github.com/onsi/gomega"
7-
v1 "k8s.io/api/core/v1"
87
)
98

10-
var _ = Describe("GetRelevantBuild", func() {
11-
12-
var nh Helper
13-
14-
BeforeEach(func() {
15-
nh = NewHelper()
16-
})
17-
18-
It("kernel mapping build present, module loader build absent", func() {
19-
mappingBuild := &kmmv1beta1.Build{
20-
DockerfileConfigMap: &v1.LocalObjectReference{Name: "some kernel mapping build name"},
21-
}
22-
23-
res := nh.GetRelevantBuild(nil, mappingBuild)
24-
Expect(res).To(Equal(mappingBuild))
25-
})
26-
27-
It("kernel mapping build absent, module loader build present", func() {
28-
moduleBuild := &kmmv1beta1.Build{
29-
DockerfileConfigMap: &v1.LocalObjectReference{Name: "some load module build name"},
30-
}
31-
32-
res := nh.GetRelevantBuild(moduleBuild, nil)
33-
34-
Expect(res).To(Equal(moduleBuild))
35-
})
36-
37-
It("kernel mapping and module loader builds are present, overrides", func() {
38-
moduleBuild := &kmmv1beta1.Build{
39-
DockerfileConfigMap: &v1.LocalObjectReference{Name: "some load module build name"},
40-
BaseImageRegistryTLS: kmmv1beta1.TLSOptions{
41-
Insecure: true,
42-
InsecureSkipTLSVerify: true,
43-
},
44-
}
45-
mappingBuild := &kmmv1beta1.Build{
46-
DockerfileConfigMap: &v1.LocalObjectReference{Name: "some kernel mapping build name"},
47-
}
48-
49-
res := nh.GetRelevantBuild(moduleBuild, mappingBuild)
50-
Expect(res.DockerfileConfigMap).To(Equal(mappingBuild.DockerfileConfigMap))
51-
Expect(res.BaseImageRegistryTLS).To(Equal(moduleBuild.BaseImageRegistryTLS))
52-
})
53-
})
54-
559
var _ = Describe("ApplyBuildArgOverrides", func() {
5610

5711
var nh Helper

internal/build/mock_helper.go

Lines changed: 0 additions & 14 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

internal/buildsign/pod/buildsignpodmanager.go

Lines changed: 7 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -48,16 +48,16 @@ type BuildSignPodManager interface {
4848
}
4949

5050
type buildSignPodManager struct {
51-
client client.Client
52-
combiner module.Combiner
53-
scheme *runtime.Scheme
51+
client client.Client
52+
buildArgOverrider module.BuildArgOverrider
53+
scheme *runtime.Scheme
5454
}
5555

56-
func NewBuildSignPodManager(client client.Client, combiner module.Combiner, scheme *runtime.Scheme) BuildSignPodManager {
56+
func NewBuildSignPodManager(client client.Client, buildArgOverrider module.BuildArgOverrider, scheme *runtime.Scheme) BuildSignPodManager {
5757
return &buildSignPodManager{
58-
client: client,
59-
combiner: combiner,
60-
scheme: scheme,
58+
client: client,
59+
buildArgOverrider: buildArgOverrider,
60+
scheme: scheme,
6161
}
6262
}
6363

0 commit comments

Comments
 (0)