Skip to content

Commit e5c1dff

Browse files
rybnicowikkyk
authored andcommitted
Make ignitionISOInjector overridable (like isoInjector already is) to make it mockable for testing
1 parent 00485cd commit e5c1dff

File tree

2 files changed

+7
-4
lines changed

2 files changed

+7
-4
lines changed

internal/service/vmservice/bootstrap.go

Lines changed: 6 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -119,7 +119,7 @@ func injectIgnition(ctx context.Context, machineScope *scope.MachineScope, boots
119119
Network: nicData,
120120
}
121121

122-
injector := ignitionISOInjector(machineScope.VirtualMachine, metadata, enricher)
122+
injector := getIgnitionISOInjector(machineScope.VirtualMachine, metadata, enricher)
123123
if err := injector.Inject(ctx, inject.IgnitionFormat); err != nil {
124124
conditions.MarkFalse(machineScope.ProxmoxMachine, infrav1alpha1.VMProvisionedCondition, infrav1alpha1.VMProvisionFailedReason, clusterv1.ConditionSeverityWarning, err.Error())
125125
return errors.Wrap(err, "ignition iso inject failed")
@@ -140,15 +140,18 @@ func defaultISOInjector(vm *proxmox.VirtualMachine, bootStrapData []byte, metada
140140
}
141141
}
142142

143-
func ignitionISOInjector(vm *proxmox.VirtualMachine, metadata cloudinit.Renderer, enricher *ignition.Enricher) isoInjector {
143+
func defaultIgnitionISOInjector(vm *proxmox.VirtualMachine, metadata cloudinit.Renderer, enricher *ignition.Enricher) isoInjector {
144144
return &inject.ISOInjector{
145145
VirtualMachine: vm,
146146
IgnitionEnricher: enricher,
147147
MetaRenderer: metadata,
148148
}
149149
}
150150

151-
var getISOInjector = defaultISOInjector
151+
var (
152+
getISOInjector = defaultISOInjector
153+
getIgnitionISOInjector = defaultIgnitionISOInjector
154+
)
152155

153156
// getBootstrapData obtains a machine's bootstrap data from the relevant K8s secret and returns the data.
154157
// TODO: Add format return if ignition will be supported.

internal/service/vmservice/bootstrap_test.go

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -540,7 +540,7 @@ func TestDefaultISOInjector(t *testing.T) {
540540
}
541541

542542
func TestIgnitionISOInjector(t *testing.T) {
543-
injector := ignitionISOInjector(newRunningVM(), cloudinit.NewMetadata(biosUUID, "test", "1.2.3", true), &ignition.Enricher{
543+
injector := defaultIgnitionISOInjector(newRunningVM(), cloudinit.NewMetadata(biosUUID, "test", "1.2.3", true), &ignition.Enricher{
544544
BootstrapData: []byte("data"),
545545
Hostname: "test",
546546
})

0 commit comments

Comments
 (0)