Skip to content

Commit 23fd254

Browse files
committed
refactor: Add helper function for run cmd
Signed-off-by: Anders F Björklund <[email protected]>
1 parent 88f9b9d commit 23fd254

File tree

1 file changed

+12
-20
lines changed

1 file changed

+12
-20
lines changed

Diff for: cmd/limactl/guest_install.go

+12-20
Original file line numberDiff line numberDiff line change
@@ -27,6 +27,14 @@ func newGuestInstallCommand() *cobra.Command {
2727
return guestInstallCommand
2828
}
2929

30+
func runCmd(name string, flags []string, args ...string) error {
31+
cmd := exec.Command(name, append(flags, args...)...)
32+
cmd.Stdout = os.Stdout
33+
cmd.Stderr = os.Stderr
34+
logrus.Debugf("executing %v", cmd.Args)
35+
return cmd.Run()
36+
}
37+
3038
func guestInstallAction(_ *cobra.Command, args []string) error {
3139
instName := DefaultInstanceName
3240
if len(args) > 0 {
@@ -61,20 +69,12 @@ func guestInstallAction(_ *cobra.Command, args []string) error {
6169
bin := prefix + "/bin/lima-guestagent"
6270
logrus.Infof("Copying %q to %s", guestAgentBinary, hostname)
6371
scpArgs := []string{guestAgentBinary, hostname + ":" + tmp}
64-
scpCmd := exec.Command("scp", append(sshFlags, scpArgs...)...)
65-
scpCmd.Stdout = os.Stdout
66-
scpCmd.Stderr = os.Stderr
67-
logrus.Debugf("executing %v", scpCmd.Args)
68-
if err := scpCmd.Run(); err != nil {
72+
if err := runCmd("scp", sshFlags, scpArgs...); err != nil {
6973
return nil
7074
}
7175
logrus.Infof("Installing %s to %s", tmp, bin)
7276
sshArgs := []string{hostname, "sudo", "install", "-m", "755", tmp, bin}
73-
sshCmd := exec.Command("ssh", append(sshFlags, sshArgs...)...)
74-
sshCmd.Stdout = os.Stdout
75-
sshCmd.Stderr = os.Stderr
76-
logrus.Debugf("executing %v", sshCmd.Args)
77-
if err := sshCmd.Run(); err != nil {
77+
if err := runCmd("ssh", sshFlags, sshArgs...); err != nil {
7878
return nil
7979
}
8080

@@ -88,20 +88,12 @@ func guestInstallAction(_ *cobra.Command, args []string) error {
8888
tmp := "/tmp/nerdctl-full.tgz"
8989
logrus.Infof("Copying %q to %s", nerdctlFilename, hostname)
9090
scpArgs := []string{nerdctlArchive, hostname + ":" + tmp}
91-
scpCmd := exec.Command("scp", append(sshFlags, scpArgs...)...)
92-
scpCmd.Stdout = os.Stdout
93-
scpCmd.Stderr = os.Stderr
94-
logrus.Debugf("executing %v", scpCmd.Args)
95-
if err := scpCmd.Run(); err != nil {
91+
if err := runCmd("scp", sshFlags, scpArgs...); err != nil {
9692
return nil
9793
}
9894
logrus.Infof("Installing %s in %s", tmp, prefix)
9995
sshArgs := []string{hostname, "sudo", "tar", "Cxzf", prefix, tmp}
100-
sshCmd := exec.Command("ssh", append(sshFlags, sshArgs...)...)
101-
sshCmd.Stdout = os.Stdout
102-
sshCmd.Stderr = os.Stderr
103-
logrus.Debugf("executing %v", sshCmd.Args)
104-
if err := sshCmd.Run(); err != nil {
96+
if err := runCmd("ssh", sshFlags, sshArgs...); err != nil {
10597
return nil
10698
}
10799
}

0 commit comments

Comments
 (0)