mirror of
https://github.com/containers/podman.git
synced 2025-06-23 02:18:13 +08:00
wsl: machine tests for ssh
a couple of small corrections for the ssh tests on WSL. we need to check for a different os type and windows emits a warning in stderr. Signed-off-by: Brent Baude <bbaude@redhat.com>
This commit is contained in:
@ -1,6 +1,7 @@
|
|||||||
package e2e_test
|
package e2e_test
|
||||||
|
|
||||||
import (
|
import (
|
||||||
|
"github.com/containers/podman/v4/pkg/machine"
|
||||||
. "github.com/onsi/ginkgo/v2"
|
. "github.com/onsi/ginkgo/v2"
|
||||||
. "github.com/onsi/gomega"
|
. "github.com/onsi/gomega"
|
||||||
. "github.com/onsi/gomega/gexec"
|
. "github.com/onsi/gomega/gexec"
|
||||||
@ -43,6 +44,7 @@ var _ = Describe("podman machine ssh", func() {
|
|||||||
})
|
})
|
||||||
|
|
||||||
It("ssh to running machine and check os-type", func() {
|
It("ssh to running machine and check os-type", func() {
|
||||||
|
wsl := testProvider.VMType() == machine.WSLVirt
|
||||||
name := randomString()
|
name := randomString()
|
||||||
i := new(initMachine)
|
i := new(initMachine)
|
||||||
session, err := mb.setName(name).setCmd(i.withImagePath(mb.imagePath).withNow()).run()
|
session, err := mb.setName(name).setCmd(i.withImagePath(mb.imagePath).withNow()).run()
|
||||||
@ -53,13 +55,22 @@ var _ = Describe("podman machine ssh", func() {
|
|||||||
sshSession, err := mb.setName(name).setCmd(ssh.withSSHCommand([]string{"cat", "/etc/os-release"})).run()
|
sshSession, err := mb.setName(name).setCmd(ssh.withSSHCommand([]string{"cat", "/etc/os-release"})).run()
|
||||||
Expect(err).ToNot(HaveOccurred())
|
Expect(err).ToNot(HaveOccurred())
|
||||||
Expect(sshSession).To(Exit(0))
|
Expect(sshSession).To(Exit(0))
|
||||||
|
|
||||||
|
if wsl {
|
||||||
|
Expect(sshSession.outputToString()).To(ContainSubstring("Fedora Linux"))
|
||||||
|
} else {
|
||||||
Expect(sshSession.outputToString()).To(ContainSubstring("Fedora CoreOS"))
|
Expect(sshSession.outputToString()).To(ContainSubstring("Fedora CoreOS"))
|
||||||
|
}
|
||||||
|
|
||||||
// keep exit code
|
// keep exit code
|
||||||
sshSession, err = mb.setName(name).setCmd(ssh.withSSHCommand([]string{"false"})).run()
|
sshSession, err = mb.setName(name).setCmd(ssh.withSSHCommand([]string{"false"})).run()
|
||||||
Expect(err).ToNot(HaveOccurred())
|
Expect(err).ToNot(HaveOccurred())
|
||||||
Expect(sshSession).To(Exit(1))
|
Expect(sshSession).To(Exit(1))
|
||||||
Expect(sshSession.outputToString()).To(Equal(""))
|
Expect(sshSession.outputToString()).To(Equal(""))
|
||||||
|
|
||||||
|
// WSL will often emit an error message about the ssh key and keychains
|
||||||
|
if !wsl {
|
||||||
Expect(sshSession.errorToString()).To(Equal(""))
|
Expect(sshSession.errorToString()).To(Equal(""))
|
||||||
|
}
|
||||||
})
|
})
|
||||||
})
|
})
|
||||||
|
Reference in New Issue
Block a user