The following pull request was submitted through Github. It can be accessed and reviewed at: https://github.com/lxc/lxd/pull/4286
This e-mail was sent by the LXC bot, direct replies will not reach the author unless they happen to be subscribed to this list. === Description (from pull-request) === Signed-off-by: Stéphane Graber <[email protected]>
From 70611215213499377a4144651567735d57509359 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?St=C3=A9phane=20Graber?= <[email protected]> Date: Tue, 27 Feb 2018 15:21:04 -0500 Subject: [PATCH] tests: Fix race condition in import tests MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: Stéphane Graber <[email protected]> --- test/suites/backup.sh | 28 +++++++++++++++++++--------- 1 file changed, 19 insertions(+), 9 deletions(-) diff --git a/test/suites/backup.sh b/test/suites/backup.sh index 0b14a0b83..0abb6b187 100644 --- a/test/suites/backup.sh +++ b/test/suites/backup.sh @@ -5,6 +5,16 @@ test_container_import() { ( set -e + kill_lxc() { + pid=${1:-} + [ -n "${pid}" ] || return + ppid=$(ps -o ppid="" -p "${pid}") + kill -9 "${pid}" || true + + [ -n "${ppid}" ] || return + kill -9 "${ppid}" || true + } + # shellcheck disable=SC2030 LXD_DIR=${LXD_IMPORT_DIR} lxd_backend=$(storage_backend "$LXD_DIR") @@ -16,7 +26,7 @@ test_container_import() { pid=$(lxc info ctImport | grep ^Pid | awk '{print $2}') ! lxd import ctImport lxd import ctImport --force - kill -9 "${pid}" + kill_lxc "${pid}" lxd sql "PRAGMA foreign_keys=ON; DELETE FROM containers WHERE name='ctImport'" lxd sql "PRAGMA foreign_keys=ON; DELETE FROM storage_volumes WHERE name='ctImport'" lxd import ctImport --force @@ -29,7 +39,7 @@ test_container_import() { pid=$(lxc info ctImport | grep ^Pid | awk '{print $2}') ! lxd import ctImport lxd import ctImport --force - kill -9 "${pid}" + kill_lxc "${pid}" lxc info ctImport | grep snap0 lxc start ctImport lxc delete --force ctImport @@ -38,7 +48,7 @@ test_container_import() { lxc snapshot ctImport lxc start ctImport pid=$(lxc info ctImport | grep ^Pid | awk '{print $2}') - kill -9 "${pid}" + kill_lxc "${pid}" lxd sql "PRAGMA foreign_keys=ON; DELETE FROM containers WHERE name='ctImport'" ! lxd import ctImport lxd import ctImport --force @@ -50,7 +60,7 @@ test_container_import() { lxc snapshot ctImport lxc start ctImport pid=$(lxc info ctImport | grep ^Pid | awk '{print $2}') - kill -9 "${pid}" + kill_lxc "${pid}" lxd sql "PRAGMA foreign_keys=ON; DELETE FROM containers WHERE name='ctImport/snap0'" ! lxd import ctImport lxd import ctImport --force @@ -62,7 +72,7 @@ test_container_import() { lxc snapshot ctImport lxc start ctImport pid=$(lxc info ctImport | grep ^Pid | awk '{print $2}') - kill -9 "${pid}" + kill_lxc "${pid}" lxd sql "PRAGMA foreign_keys=ON; DELETE FROM containers WHERE name='ctImport'" lxd sql "PRAGMA foreign_keys=ON; DELETE FROM containers WHERE name='ctImport/snap0'" lxd sql "PRAGMA foreign_keys=ON; DELETE FROM storage_volumes WHERE name='ctImport'" @@ -76,7 +86,7 @@ test_container_import() { lxc snapshot ctImport lxc start ctImport pid=$(lxc info ctImport | grep ^Pid | awk '{print $2}') - kill -9 "${pid}" + kill_lxc "${pid}" lxd sql "PRAGMA foreign_keys=ON; DELETE FROM containers WHERE name='ctImport'" lxd sql "PRAGMA foreign_keys=ON; DELETE FROM containers WHERE name='ctImport/snap0'" lxd sql "PRAGMA foreign_keys=ON; DELETE FROM storage_volumes WHERE name='ctImport'" @@ -97,7 +107,7 @@ test_container_import() { rm -rf "${LXD_DIR}/storage-pools/lxdtest-$(basename "${LXD_DIR}")/snapshots/ctImport/snap0" fi pid=$(lxc info ctImport | grep ^Pid | awk '{print $2}') - kill -9 "${pid}" + kill_lxc "${pid}" lxd sql "PRAGMA foreign_keys=ON; DELETE FROM containers WHERE name='ctImport'" lxd sql "PRAGMA foreign_keys=ON; DELETE FROM containers WHERE name='ctImport/snap0'" lxd sql "PRAGMA foreign_keys=ON; DELETE FROM storage_volumes WHERE name='ctImport'" @@ -135,7 +145,7 @@ test_container_import() { ;; esac pid=$(lxc info ctImport | grep ^Pid | awk '{print $2}') - kill -9 "${pid}" + kill_lxc "${pid}" ! lxd import ctImport lxd import ctImport --force lxc info ctImport | grep snap0 @@ -167,7 +177,7 @@ test_container_import() { ;; esac pid=$(lxc info ctImport | grep ^Pid | awk '{print $2}') - kill -9 "${pid}" + kill_lxc "${pid}" ! lxd import ctImport lxd import ctImport --force lxc info ctImport | grep snap0
_______________________________________________ lxc-devel mailing list [email protected] http://lists.linuxcontainers.org/listinfo/lxc-devel
