Skip to content

Commit c1642f7

Browse files
committed
fixup! Adding machine interface
Signed-off-by: xibz <[email protected]>
1 parent c8a9227 commit c1642f7

File tree

4 files changed

+15
-13
lines changed

4 files changed

+15
-13
lines changed

handlers.go

Lines changed: 1 addition & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -173,13 +173,7 @@ func NewSetMetadataHandler(metadata interface{}) Handler {
173173
return Handler{
174174
Name: SetMetadataHandlerName,
175175
Fn: func(ctx context.Context, m *Machine) error {
176-
if _, err := m.client.PutMmds(ctx, metadata); err != nil {
177-
m.logger.Errorf("Setting metadata: %s", err)
178-
return err
179-
}
180-
181-
m.logger.Printf("SetMetadata successful")
182-
return nil
176+
return m.SetMetadata(ctx, metadata)
183177
},
184178
}
185179
}

machine.go

Lines changed: 9 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -588,10 +588,15 @@ func (m *Machine) sendCtrlAltDel(ctx context.Context) error {
588588
return err
589589
}
590590

591-
// EnableMetadata will append or replace the metadata handler and only will be
592-
// called when calling the Machine Start operation.
593-
func (m *Machine) EnableMetadata(metadata interface{}) {
594-
m.Handlers.FcInit = m.Handlers.FcInit.Swappend(NewSetMetadataHandler(metadata))
591+
// SetMetadata sets the machine's metadata for MDDS
592+
func (m *Machine) SetMetadata(ctx context.Context, metadata interface{}) error {
593+
if _, err := m.client.PutMmds(ctx, metadata); err != nil {
594+
m.logger.Errorf("Setting metadata: %s", err)
595+
return err
596+
}
597+
598+
m.logger.Printf("SetMetadata successful")
599+
return nil
595600
}
596601

597602
// UpdateGuestDrive will modify the current guest drive of ID index with the new

machine_test.go

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -637,7 +637,7 @@ func TestWaitForSocket(t *testing.T) {
637637

638638
func testSetMetadata(ctx context.Context, t *testing.T, m *Machine) {
639639
metadata := map[string]string{"key": "value"}
640-
_, err := m.client.PutMmds(ctx, metadata)
640+
err := m.SetMetadata(ctx, metadata)
641641
if err != nil {
642642
t.Errorf("failed to set metadata: %s", err)
643643
}

machineiface.go

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -17,13 +17,16 @@ import (
1717
"context"
1818
)
1919

20+
// This ensures the interface method signatures match that of Machine
21+
var _ MachineIface = (*Machine)(nil)
22+
2023
// MachineIface can be used for mocking and testing of the Machine. The Machine
2124
// is subject to change, meaning this interface would change.
2225
type MachineIface interface {
2326
Start(context.Context) error
2427
StopVMM() error
2528
Shutdown(context.Context) error
2629
Wait(context.Context) error
27-
EnableMetadata(interface{})
30+
SetMetadata(context.Context, interface{}) error
2831
UpdateGuestDrive(context.Context, string, string, ...PatchGuestDriveByIDOpt) error
2932
}

0 commit comments

Comments
 (0)