mirror of
https://github.com/containers/podman.git
synced 2026-03-19 07:08:38 -04:00
Merge pull request #7295 from baude/msiremotefixes
podman-remote fixes for msi and client
This commit is contained in:
@@ -290,6 +290,7 @@ func resolveDestination() (string, string) {
|
||||
|
||||
cfg, err := config.ReadCustomConfig()
|
||||
if err != nil {
|
||||
logrus.Warning(errors.Wrap(err, "unable to read local containers.conf"))
|
||||
return registry.DefaultAPIAddress(), ""
|
||||
}
|
||||
|
||||
|
||||
@@ -124,6 +124,7 @@ func add(cmd *cobra.Command, args []string) error {
|
||||
cfg.Engine.ServiceDestinations = map[string]config.Destination{
|
||||
args[0]: dst,
|
||||
}
|
||||
cfg.Engine.ActiveService = args[0]
|
||||
} else {
|
||||
cfg.Engine.ServiceDestinations[args[0]] = dst
|
||||
}
|
||||
@@ -181,12 +182,20 @@ func getUDS(cmd *cobra.Command, uri *url.URL) (string, error) {
|
||||
authMethods = append(authMethods, ssh.PublicKeysCallback(a.Signers))
|
||||
}
|
||||
|
||||
config := &ssh.ClientConfig{
|
||||
if len(authMethods) == 0 {
|
||||
pass, err := terminal.ReadPassword(fmt.Sprintf("%s's login password:", uri.User.Username()))
|
||||
if err != nil {
|
||||
return "", err
|
||||
}
|
||||
authMethods = append(authMethods, ssh.Password(string(pass)))
|
||||
}
|
||||
|
||||
cfg := &ssh.ClientConfig{
|
||||
User: uri.User.Username(),
|
||||
Auth: authMethods,
|
||||
HostKeyCallback: ssh.InsecureIgnoreHostKey(),
|
||||
}
|
||||
dial, err := ssh.Dial("tcp", uri.Host, config)
|
||||
dial, err := ssh.Dial("tcp", uri.Host, cfg)
|
||||
if err != nil {
|
||||
return "", errors.Wrapf(err, "failed to connect to %q", uri.Host)
|
||||
}
|
||||
|
||||
@@ -24,8 +24,7 @@
|
||||
<CreateFolder/>
|
||||
</Component>
|
||||
<Component Id="MainExecutable" Guid="73752F94-6589-4C7B-ABED-39D655A19714">
|
||||
<File Id="520C6E17-77A2-4F41-9611-30FA763A0702" Name="podman-remote-windows.exe" Source="bin/podman-remote-windows.exe"/>
|
||||
<File Id="A14218A0-4180-44AC-B109-7C63B3099DCA" Name="podman.bat" Source="podman.bat" KeyPath="yes"/>
|
||||
<File Id="520C6E17-77A2-4F41-9611-30FA763A0702" Name="podman.exe" Source="bin/podman-remote-windows.exe" KeyPath="yes"/>
|
||||
</Component>
|
||||
</Directory>
|
||||
</Directory>
|
||||
@@ -33,7 +32,7 @@
|
||||
</Directory>
|
||||
|
||||
<Property Id="setx" Value="setx.exe"/>
|
||||
<CustomAction Id="ChangePath" ExeCommand="PATH "%PATH%;[INSTALLDIR] "" Property="setx" Execute="deferred" Impersonate="yes" Return="check"/>
|
||||
<CustomAction Id="ChangePath" ExeCommand="PATH "%PATH%;[INSTALLDIR]"" Property="setx" Execute="deferred" Impersonate="yes" Return="check"/>
|
||||
|
||||
<Feature Id="Complete" Level="1">
|
||||
<ComponentRef Id="INSTALLDIR_Component"/>
|
||||
|
||||
@@ -180,8 +180,9 @@ func pingNewConnection(ctx context.Context) error {
|
||||
}
|
||||
|
||||
func sshClient(_url *url.URL, secure bool, passPhrase string, identity string) (Connection, error) {
|
||||
// if you modify the authmethods or their conditionals, you will also need to make similar
|
||||
// changes in the client (currently cmd/podman/system/connection/add getUDS).
|
||||
authMethods := []ssh.AuthMethod{}
|
||||
|
||||
if len(identity) > 0 {
|
||||
auth, err := terminal.PublicKey(identity, []byte(passPhrase))
|
||||
if err != nil {
|
||||
@@ -205,6 +206,13 @@ func sshClient(_url *url.URL, secure bool, passPhrase string, identity string) (
|
||||
if pw, found := _url.User.Password(); found {
|
||||
authMethods = append(authMethods, ssh.Password(pw))
|
||||
}
|
||||
if len(authMethods) == 0 {
|
||||
pass, err := terminal.ReadPassword("Login password:")
|
||||
if err != nil {
|
||||
return Connection{}, err
|
||||
}
|
||||
authMethods = append(authMethods, ssh.Password(string(pass)))
|
||||
}
|
||||
|
||||
callback := ssh.InsecureIgnoreHostKey()
|
||||
if secure {
|
||||
|
||||
Reference in New Issue
Block a user