Skip to content

Commit 1d95f09

Browse files
committed
Use variadic function
1 parent 4579674 commit 1d95f09

File tree

5 files changed

+27
-38
lines changed

5 files changed

+27
-38
lines changed

pkg/os/filesystem/api.go

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -52,7 +52,7 @@ func (filesystemAPI) PathExists(path string) (bool, error) {
5252
func pathValid(path string) (bool, error) {
5353
cmd := `Test-Path $Env:remotepath`
5454
cmdEnv := fmt.Sprintf("remotepath=%s", path)
55-
output, err := utils.RunPowershellCmdWithEnv(cmd, cmdEnv)
55+
output, err := utils.RunPowershellCmd(cmd, cmdEnv)
5656
if err != nil {
5757
return false, fmt.Errorf("returned output: %s, error: %v", string(output), err)
5858
}

pkg/os/iscsi/api.go

Lines changed: 16 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -22,8 +22,8 @@ func (APIImplementor) AddTargetPortal(portal *TargetPortal) error {
2222
cmdLine := fmt.Sprintf(
2323
`New-IscsiTargetPortal -TargetPortalAddress ${Env:iscsi_tp_address} ` +
2424
`-TargetPortalPortNumber ${Env:iscsi_tp_port}`)
25-
out, err := utils.RunPowershellCmdWithEnvs(cmdLine, []string{fmt.Sprintf("iscsi_tp_address=%s", portal.Address),
26-
fmt.Sprintf("iscsi_tp_port=%d", portal.Port)})
25+
out, err := utils.RunPowershellCmd(cmdLine, fmt.Sprintf("iscsi_tp_address=%s", portal.Address),
26+
fmt.Sprintf("iscsi_tp_port=%d", portal.Port))
2727
if err != nil {
2828
return fmt.Errorf("error adding target portal. cmd %s, output: %s, err: %v", cmdLine, string(out), err)
2929
}
@@ -38,8 +38,8 @@ func (APIImplementor) DiscoverTargetPortal(portal *TargetPortal) ([]string, erro
3838
`ConvertTo-Json -InputObject @(Get-IscsiTargetPortal -TargetPortalAddress ` +
3939
`${Env:iscsi_tp_address} -TargetPortalPortNumber ${Env:iscsi_tp_port} | ` +
4040
`Get-IscsiTarget | Select-Object -ExpandProperty NodeAddress)`)
41-
out, err := utils.RunPowershellCmdWithEnvs(cmdLine, []string{fmt.Sprintf("iscsi_tp_address=%s", portal.Address),
42-
fmt.Sprintf("iscsi_tp_port=%d", portal.Port)})
41+
out, err := utils.RunPowershellCmd(cmdLine, fmt.Sprintf("iscsi_tp_address=%s", portal.Address),
42+
fmt.Sprintf("iscsi_tp_port=%d", portal.Port))
4343
if err != nil {
4444
return nil, fmt.Errorf("error discovering target portal. cmd: %s, output: %s, err: %w", cmdLine, string(out), err)
4545
}
@@ -78,8 +78,8 @@ func (APIImplementor) RemoveTargetPortal(portal *TargetPortal) error {
7878
`-TargetPortalPortNumber ${Env:iscsi_tp_port} | Remove-IscsiTargetPortal ` +
7979
`-Confirm:$false`)
8080

81-
out, err := utils.RunPowershellCmdWithEnvs(cmdLine, []string{fmt.Sprintf("iscsi_tp_address=%s", portal.Address),
82-
fmt.Sprintf("iscsi_tp_port=%d", portal.Port)})
81+
out, err := utils.RunPowershellCmd(cmdLine, fmt.Sprintf("iscsi_tp_address=%s", portal.Address),
82+
fmt.Sprintf("iscsi_tp_port=%d", portal.Port))
8383
if err != nil {
8484
return fmt.Errorf("error removing target portal. cmd %s, output: %s, err: %w", cmdLine, string(out), err)
8585
}
@@ -98,19 +98,19 @@ func (APIImplementor) ConnectTarget(portal *TargetPortal, iqn string,
9898
` -AuthenticationType ${Env:iscsi_auth_type}`)
9999

100100
if chapUser != "" {
101-
cmdLine += fmt.Sprintf(` -ChapUsername ${Env:iscsi_chap_user}`)
101+
cmdLine += ` -ChapUsername ${Env:iscsi_chap_user}`
102102
}
103103

104104
if chapSecret != "" {
105-
cmdLine += fmt.Sprintf(` -ChapSecret ${Env:iscsi_chap_secret}`)
105+
cmdLine += ` -ChapSecret ${Env:iscsi_chap_secret}`
106106
}
107107

108-
out, err := utils.RunPowershellCmdWithEnvs(cmdLine, []string{fmt.Sprintf("iscsi_tp_address=%s", portal.Address),
108+
out, err := utils.RunPowershellCmd(cmdLine, fmt.Sprintf("iscsi_tp_address=%s", portal.Address),
109109
fmt.Sprintf("iscsi_tp_port=%d", portal.Port),
110110
fmt.Sprintf("iscsi_target_iqn=%s", iqn),
111111
fmt.Sprintf("iscsi_auth_type=%s", authType),
112112
fmt.Sprintf("iscsi_chap_user=%s", chapUser),
113-
fmt.Sprintf("iscsi_chap_secret=%s", chapSecret)})
113+
fmt.Sprintf("iscsi_chap_secret=%s", chapSecret))
114114
if err != nil {
115115
return fmt.Errorf("error connecting to target portal. cmd %s, output: %s, err: %w", cmdLine, string(out), err)
116116
}
@@ -126,9 +126,9 @@ func (APIImplementor) DisconnectTarget(portal *TargetPortal, iqn string) error {
126126
` | Get-IscsiTarget | Where-Object { $_.NodeAddress -eq ${Env:iscsi_target_iqn} }) ` +
127127
`-Confirm:$false`)
128128

129-
out, err := utils.RunPowershellCmdWithEnvs(cmdLine, []string{fmt.Sprintf("iscsi_tp_address=%s", portal.Address),
129+
out, err := utils.RunPowershellCmd(cmdLine, fmt.Sprintf("iscsi_tp_address=%s", portal.Address),
130130
fmt.Sprintf("iscsi_tp_port=%d", portal.Port),
131-
fmt.Sprintf("iscsi_target_iqn=%s", iqn)})
131+
fmt.Sprintf("iscsi_target_iqn=%s", iqn))
132132
if err != nil {
133133
return fmt.Errorf("error disconnecting from target portal. cmd %s, output: %s, err: %w", cmdLine, string(out), err)
134134
}
@@ -147,9 +147,9 @@ func (APIImplementor) GetTargetDisks(portal *TargetPortal, iqn string) ([]string
147147
`$ids = $c | Get-Disk | Select -ExpandProperty Number | Out-String -Stream; ` +
148148
`ConvertTo-Json -InputObject @($ids)`)
149149

150-
out, err := utils.RunPowershellCmdWithEnvs(cmdLine, []string{fmt.Sprintf("iscsi_tp_address=%s", portal.Address),
150+
out, err := utils.RunPowershellCmd(cmdLine, fmt.Sprintf("iscsi_tp_address=%s", portal.Address),
151151
fmt.Sprintf("iscsi_tp_port=%d", portal.Port),
152-
fmt.Sprintf("iscsi_target_iqn=%s", iqn)})
152+
fmt.Sprintf("iscsi_target_iqn=%s", iqn))
153153
if err != nil {
154154
return nil, fmt.Errorf("error getting target disks. cmd %s, output: %s, err: %w", cmdLine, string(out), err)
155155
}
@@ -164,9 +164,8 @@ func (APIImplementor) GetTargetDisks(portal *TargetPortal, iqn string) ([]string
164164
}
165165

166166
func (APIImplementor) SetMutualChapSecret(mutualChapSecret string) error {
167-
cmdLine := fmt.Sprintf(
168-
`Set-IscsiChapSecret -ChapSecret ${Env:iscsi_mutual_chap_secret}`)
169-
out, err := utils.RunPowershellCmdWithEnvs(cmdLine, []string{fmt.Sprintf("iscsi_mutual_chap_secret=%s", mutualChapSecret)})
167+
cmdLine := `Set-IscsiChapSecret -ChapSecret ${Env:iscsi_mutual_chap_secret}`
168+
out, err := utils.RunPowershellCmd(cmdLine, fmt.Sprintf("iscsi_mutual_chap_secret=%s", mutualChapSecret))
170169
if err != nil {
171170
return fmt.Errorf("error setting mutual chap secret. cmd %s,"+
172171
" output: %s, err: %v", cmdLine, string(out), err)

pkg/os/smb/api.go

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -25,7 +25,7 @@ func New() SmbAPI {
2525
func (SmbAPI) IsSmbMapped(remotePath string) (bool, error) {
2626
cmdLine := `$(Get-SmbGlobalMapping -RemotePath $Env:smbremotepath -ErrorAction Stop).Status `
2727
cmdEnv := fmt.Sprintf("smbremotepath=%s", remotePath)
28-
out, err := utils.RunPowershellCmdWithEnv(cmdLine, cmdEnv)
28+
out, err := utils.RunPowershellCmd(cmdLine, cmdEnv)
2929
if err != nil {
3030
return false, fmt.Errorf("error checking smb mapping. cmd %s, output: %s, err: %v", remotePath, string(out), err)
3131
}
@@ -52,7 +52,7 @@ func (SmbAPI) NewSmbLink(remotePath, localPath string) error {
5252
}
5353

5454
cmdLine := `New-Item -ItemType SymbolicLink $Env:smblocalPath -Target $Env:smbremotepath`
55-
output, err := utils.RunPowershellCmdWithEnvs(cmdLine, []string{fmt.Sprintf("smbremotepath=%s", remotePath), fmt.Sprintf("smblocalpath=%s", localPath)})
55+
output, err := utils.RunPowershellCmd(cmdLine, fmt.Sprintf("smbremotepath=%s", remotePath), fmt.Sprintf("smblocalpath=%s", localPath))
5656
if err != nil {
5757
return fmt.Errorf("error linking %s to %s. output: %s, err: %v", remotePath, localPath, string(output), err)
5858
}
@@ -67,17 +67,17 @@ func (SmbAPI) NewSmbGlobalMapping(remotePath, username, password string) error {
6767
`;$Credential = New-Object -TypeName System.Management.Automation.PSCredential -ArgumentList $Env:smbuser, $PWord` +
6868
`;New-SmbGlobalMapping -RemotePath $Env:smbremotepath -Credential $Credential -RequirePrivacy $true`)
6969

70-
if output, err := utils.RunPowershellCmdWithEnvs(cmdLine, []string{fmt.Sprintf("smbuser=%s", username),
70+
if output, err := utils.RunPowershellCmd(cmdLine, fmt.Sprintf("smbuser=%s", username),
7171
fmt.Sprintf("smbpassword=%s", password),
72-
fmt.Sprintf("smbremotepath=%s", remotePath)}); err != nil {
72+
fmt.Sprintf("smbremotepath=%s", remotePath)); err != nil {
7373
return fmt.Errorf("NewSmbGlobalMapping failed. output: %q, err: %v", string(output), err)
7474
}
7575
return nil
7676
}
7777

7878
func (SmbAPI) RemoveSmbGlobalMapping(remotePath string) error {
7979
cmd := `Remove-SmbGlobalMapping -RemotePath $Env:smbremotepath -Force`
80-
if output, err := utils.RunPowershellCmdWithEnvs(cmd, []string{fmt.Sprintf("smbremotepath=%s", remotePath)}); err != nil {
80+
if output, err := utils.RunPowershellCmd(cmd, fmt.Sprintf("smbremotepath=%s", remotePath)); err != nil {
8181
return fmt.Errorf("UnmountSmbShare failed. output: %q, err: %v", string(output), err)
8282
}
8383
return nil

pkg/os/system/api.go

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -56,7 +56,7 @@ func (APIImplementor) GetService(name string) (*ServiceInfo, error) {
5656
script := `Get-Service -Name $env:ServiceName | Select-Object DisplayName, Status, StartType | ` +
5757
`ConvertTo-JSON`
5858
cmdEnv := fmt.Sprintf("ServiceName=%s", name)
59-
out, err := utils.RunPowershellCmdWithEnv(script, cmdEnv)
59+
out, err := utils.RunPowershellCmd(script, cmdEnv)
6060
if err != nil {
6161
return nil, fmt.Errorf("error querying service name=%s. cmd: %s, output: %s, error: %v", name, script, string(out), err)
6262
}
@@ -73,7 +73,7 @@ func (APIImplementor) GetService(name string) (*ServiceInfo, error) {
7373
func (APIImplementor) StartService(name string) error {
7474
script := `Start-Service -Name $env:ServiceName`
7575
cmdEnv := fmt.Sprintf("ServiceName=%s", name)
76-
out, err := utils.RunPowershellCmdWithEnv(script, cmdEnv)
76+
out, err := utils.RunPowershellCmd(script, cmdEnv)
7777
if err != nil {
7878
return fmt.Errorf("error starting service name=%s. cmd: %s, output: %s, error: %v", name, script, string(out), err)
7979
}
@@ -83,7 +83,7 @@ func (APIImplementor) StartService(name string) error {
8383

8484
func (APIImplementor) StopService(name string, force bool) error {
8585
script := `Stop-Service -Name $env:ServiceName -Force:$([System.Convert]::ToBoolean($env:Force))`
86-
out, err := utils.RunPowershellCmdWithEnvs(script, []string{fmt.Sprintf("ServiceName=%s", name), fmt.Sprintf("Force=%t", force)})
86+
out, err := utils.RunPowershellCmd(script, fmt.Sprintf("ServiceName=%s", name), fmt.Sprintf("Force=%t", force))
8787
if err != nil {
8888
return fmt.Errorf("error stopping service name=%s. cmd: %s, output: %s, error: %v", name, script, string(out), err)
8989
}

pkg/utils/utils.go

Lines changed: 2 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -9,19 +9,9 @@ import (
99

1010
const MaxPathLengthWindows = 260
1111

12-
func RunPowershellCmd(command string) ([]byte, error) {
13-
return RunPowershellCmdWithEnvs(command, nil)
14-
}
15-
16-
func RunPowershellCmdWithEnv(command string, env string) ([]byte, error) {
17-
return RunPowershellCmdWithEnvs(command, []string{env})
18-
}
19-
20-
func RunPowershellCmdWithEnvs(command string, envs []string) ([]byte, error) {
12+
func RunPowershellCmd(command string, envs ...string) ([]byte, error) {
2113
cmd := exec.Command("powershell", "-Mta", "-NoProfile", "-Command", command)
22-
if envs != nil {
23-
cmd.Env = append(os.Environ(), envs...)
24-
}
14+
cmd.Env = append(os.Environ(), envs...)
2515
klog.V(8).Infof("Executing command: %q", cmd.String())
2616
out, err := cmd.CombinedOutput()
2717
return out, err

0 commit comments

Comments
 (0)