summaryrefslogtreecommitdiff
path: root/pkg/machine/e2e/ssh_test.go
diff options
context:
space:
mode:
authorOpenShift Merge Robot <openshift-merge-robot@users.noreply.github.com>2022-04-25 16:36:01 -0400
committerGitHub <noreply@github.com>2022-04-25 16:36:01 -0400
commit05bdb4139a02eb35220c23b8ae8fe355f6d91406 (patch)
tree59e3b673f018d25dde266b158c6b799c65c603f6 /pkg/machine/e2e/ssh_test.go
parent181c9d3ee3ad4820b9ae91f1f02faf7b9e65fc87 (diff)
parent833456e079c31111a15fedaa3ccd7f852e89e508 (diff)
downloadpodman-05bdb4139a02eb35220c23b8ae8fe355f6d91406.tar.gz
podman-05bdb4139a02eb35220c23b8ae8fe355f6d91406.tar.bz2
podman-05bdb4139a02eb35220c23b8ae8fe355f6d91406.zip
Merge pull request #13942 from baude/machinetests
Add podman machine test suite
Diffstat (limited to 'pkg/machine/e2e/ssh_test.go')
-rw-r--r--pkg/machine/e2e/ssh_test.go59
1 files changed, 59 insertions, 0 deletions
diff --git a/pkg/machine/e2e/ssh_test.go b/pkg/machine/e2e/ssh_test.go
new file mode 100644
index 000000000..90296fa10
--- /dev/null
+++ b/pkg/machine/e2e/ssh_test.go
@@ -0,0 +1,59 @@
+package e2e
+
+import (
+ . "github.com/onsi/ginkgo"
+ . "github.com/onsi/gomega"
+)
+
+var _ = Describe("podman machine ssh", func() {
+ var (
+ mb *machineTestBuilder
+ testDir string
+ )
+
+ BeforeEach(func() {
+ testDir, mb = setup()
+ })
+ AfterEach(func() {
+ teardown(originalHomeDir, testDir, mb)
+ })
+
+ It("bad machine name", func() {
+ name := randomString(12)
+ ssh := sshMachine{}
+ session, err := mb.setName(name).setCmd(ssh).run()
+ Expect(err).To(BeNil())
+ Expect(session.ExitCode()).To(Equal(125))
+ // TODO seems like stderr is not being returned; re-enabled when fixed
+ //Expect(session.outputToString()).To(ContainSubstring("not exist"))
+ })
+
+ It("ssh to non-running machine", func() {
+ name := randomString(12)
+ i := new(initMachine)
+ session, err := mb.setName(name).setCmd(i.withImagePath(mb.imagePath)).run()
+ Expect(err).To(BeNil())
+ Expect(session.ExitCode()).To(Equal(0))
+
+ ssh := sshMachine{}
+ sshSession, err := mb.setName(name).setCmd(ssh).run()
+ Expect(err).To(BeNil())
+ // TODO seems like stderr is not being returned; re-enabled when fixed
+ //Expect(sshSession.outputToString()).To(ContainSubstring("is not running"))
+ Expect(sshSession.ExitCode()).To(Equal(125))
+ })
+
+ It("ssh to running machine and check os-type", func() {
+ name := randomString(12)
+ i := new(initMachine)
+ session, err := mb.setName(name).setCmd(i.withImagePath(mb.imagePath).withNow()).run()
+ Expect(err).To(BeNil())
+ Expect(session.ExitCode()).To(Equal(0))
+
+ ssh := sshMachine{}
+ sshSession, err := mb.setName(name).setCmd(ssh.withSSHComand([]string{"cat", "/etc/os-release"})).run()
+ Expect(err).To(BeNil())
+ Expect(sshSession.ExitCode()).To(Equal(0))
+ Expect(sshSession.outputToString()).To(ContainSubstring("Fedora CoreOS"))
+ })
+})