Skip to content

Commit 5056bf8

Browse files
committed
feat: install qemu-guest-agent on each machine created by provider
Fixes: #11 Signed-off-by: Artem Chernyshev <[email protected]>
1 parent f1daa55 commit 5056bf8

File tree

1 file changed

+13
-3
lines changed

1 file changed

+13
-3
lines changed

internal/pkg/provider/provision.go

Lines changed: 13 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -79,7 +79,9 @@ func (p *Provisioner) ProvisionSteps() []provision.Step[*resources.Machine] {
7979
}),
8080
provision.NewStep("createSchematic", func(ctx context.Context, logger *zap.Logger, pctx provision.Context[*resources.Machine]) error {
8181
// generating schematic with join configs as it's going to be used in the ISO image which doesn't support partial configs
82-
schematic, err := pctx.GenerateSchematicID(ctx, logger)
82+
schematic, err := pctx.GenerateSchematicID(ctx, logger,
83+
provision.WithExtraExtensions("siderolabs/qemu-guest-agent"),
84+
)
8385
if err != nil {
8486
return err
8587
}
@@ -91,11 +93,15 @@ func (p *Provisioner) ProvisionSteps() []provision.Step[*resources.Machine] {
9193
provision.NewStep("uploadISO", func(ctx context.Context, logger *zap.Logger, pctx provision.Context[*resources.Machine]) error {
9294
if pctx.State.TypedSpec().Value.VolumeUploadTask != "" {
9395
err := p.checkTaskStatus(ctx, pctx.State.TypedSpec().Value.VolumeUploadTask)
94-
if err != nil {
96+
if err != nil && err.Error() != "stopped" {
9597
return err
9698
}
9799

98-
return nil
100+
if err == nil {
101+
return nil
102+
}
103+
104+
logger.Info("retrying download")
99105
}
100106

101107
pctx.State.TypedSpec().Value.TalosVersion = pctx.GetTalosVersion()
@@ -319,6 +325,10 @@ func (p *Provisioner) ProvisionSteps() []provision.Step[*resources.Machine] {
319325
Name: "net0",
320326
Value: networkString,
321327
},
328+
proxmox.VirtualMachineOption{
329+
Name: "agent",
330+
Value: "enabled=true",
331+
},
322332
)
323333
if err != nil {
324334
return err

0 commit comments

Comments
 (0)