diff --git a/google_guest_agent/network/manager/netplan_linux.go b/google_guest_agent/network/manager/netplan_linux.go index 787a290a..5cf43a71 100644 --- a/google_guest_agent/network/manager/netplan_linux.go +++ b/google_guest_agent/network/manager/netplan_linux.go @@ -222,16 +222,16 @@ func (n *netplan) SetupEthernetInterface(ctx context.Context, config *cfg.Sectio func (n *netplan) reloadConfigs(ctx context.Context) error { logger.Infof("Reloading netplan configs...") + // Avoid restarting netplan. + if err := run.Quiet(ctx, "netplan", "generate"); err != nil { + return fmt.Errorf("error generating netplan based config: %w", err) + } + // Avoid restarting systemd-networkd. if err := run.Quiet(ctx, "networkctl", "reload"); err != nil { return fmt.Errorf("error reloading systemd-networkd network configs: %v", err) } - // Avoid restarting netplan. - if err := run.Quiet(ctx, "netplan", "apply"); err != nil { - return fmt.Errorf("error applying netplan changes: %w", err) - } - return nil } diff --git a/google_guest_agent/network/manager/netplan_linux_test.go b/google_guest_agent/network/manager/netplan_linux_test.go index 51c0a7fc..754b3767 100644 --- a/google_guest_agent/network/manager/netplan_linux_test.go +++ b/google_guest_agent/network/manager/netplan_linux_test.go @@ -219,7 +219,7 @@ func TestSetupVlanInterface(t *testing.T) { t.Errorf("SetupVlanInterface(ctx, nil, %+v) failed unexpectedly with error: %v", nics, err) } - wantCmds := []string{"netplan apply", "networkctl reload"} + wantCmds := []string{"netplan generate", "networkctl reload"} gotCmds := runner.executedCommands sort.Strings(gotCmds)