diff options
author | OpenShift Merge Robot <openshift-merge-robot@users.noreply.github.com> | 2019-03-01 08:43:25 -0800 |
---|---|---|
committer | GitHub <noreply@github.com> | 2019-03-01 08:43:25 -0800 |
commit | 55f80719a6b73c23c579bd4cc68cd8c382e7f860 (patch) | |
tree | 3c949283191697f7ef0557649140ca4a1c9c9034 /test/e2e/systemd_test.go | |
parent | c80416f0346200c7906cfc16c6101594653a0ad6 (diff) | |
parent | f67859ffb396be13cb8c4b8d91343b77de4eb288 (diff) | |
download | podman-55f80719a6b73c23c579bd4cc68cd8c382e7f860.tar.gz podman-55f80719a6b73c23c579bd4cc68cd8c382e7f860.tar.bz2 podman-55f80719a6b73c23c579bd4cc68cd8c382e7f860.zip |
Merge pull request #2481 from cevich/sysexec_waitcomplete
Fix SystemExec completion race
Diffstat (limited to 'test/e2e/systemd_test.go')
-rw-r--r-- | test/e2e/systemd_test.go | 22 |
1 files changed, 9 insertions, 13 deletions
diff --git a/test/e2e/systemd_test.go b/test/e2e/systemd_test.go index a7e7a1500..252361288 100644 --- a/test/e2e/systemd_test.go +++ b/test/e2e/systemd_test.go @@ -53,31 +53,27 @@ WantedBy=multi-user.target sys_file := ioutil.WriteFile("/etc/systemd/system/redis.service", []byte(systemd_unit_file), 0644) Expect(sys_file).To(BeNil()) + defer func() { + stop := SystemExec("bash", []string{"-c", "systemctl stop redis"}) + os.Remove("/etc/systemd/system/redis.service") + SystemExec("bash", []string{"-c", "systemctl daemon-reload"}) + Expect(stop.ExitCode()).To(Equal(0)) + }() create := podmanTest.Podman([]string{"create", "-d", "--name", "redis", "redis"}) create.WaitWithDefaultTimeout() Expect(create.ExitCode()).To(Equal(0)) - enable := SystemExec("bash", []string{"-c", "systemctl daemon-reload && systemctl enable --now redis"}) - enable.WaitWithDefaultTimeout() + enable := SystemExec("bash", []string{"-c", "systemctl daemon-reload"}) Expect(enable.ExitCode()).To(Equal(0)) start := SystemExec("bash", []string{"-c", "systemctl start redis"}) - start.WaitWithDefaultTimeout() + Expect(start.ExitCode()).To(Equal(0)) logs := SystemExec("bash", []string{"-c", "journalctl -n 20 -u redis"}) - logs.WaitWithDefaultTimeout() + Expect(logs.ExitCode()).To(Equal(0)) status := SystemExec("bash", []string{"-c", "systemctl status redis"}) - status.WaitWithDefaultTimeout() Expect(status.OutputToString()).To(ContainSubstring("active (running)")) - - cleanup := SystemExec("bash", []string{"-c", "systemctl stop redis && systemctl disable redis"}) - cleanup.WaitWithDefaultTimeout() - Expect(cleanup.ExitCode()).To(Equal(0)) - os.Remove("/etc/systemd/system/redis.service") - sys_clean := SystemExec("bash", []string{"-c", "systemctl daemon-reload"}) - sys_clean.WaitWithDefaultTimeout() - Expect(sys_clean.ExitCode()).To(Equal(0)) }) }) |