Merge pull request #38269 from excitoon-favorites/integrationtestsfixes

Don't try to kill empty list of containers in `integration/runner` II
This commit is contained in:
Alexander Tokmakov 2022-06-28 17:35:48 +03:00 committed by GitHub
commit e23f1fa774
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
2 changed files with 9 additions and 13 deletions

View File

@ -30,8 +30,8 @@ set -e
# cleanup for retry run if volume is not recreated
# shellcheck disable=SC2046
{
docker kill $(docker ps -aq) || true
docker rm $(docker ps -aq) || true
docker ps -aq | xargs -r docker kill || true
docker ps -aq | xargs -r docker rm || true
}
echo "Start tests"

View File

@ -25,7 +25,7 @@ VOLUME_NAME = "clickhouse_integration_tests"
CONTAINER_NAME = f"{VOLUME_NAME}_{random_str()}"
CONFIG_DIR_IN_REPO = "programs/server"
INTERGATION_DIR_IN_REPO = "tests/integration"
INTEGRATION_DIR_IN_REPO = "tests/integration"
SRC_DIR_IN_REPO = "src"
DIND_INTEGRATION_TESTS_IMAGE_NAME = "clickhouse/integration-tests-runner"
@ -84,7 +84,7 @@ def check_args_and_update_paths(args):
)
else:
args.cases_dir = os.path.abspath(
os.path.join(CLICKHOUSE_ROOT, INTERGATION_DIR_IN_REPO)
os.path.join(CLICKHOUSE_ROOT, INTEGRATION_DIR_IN_REPO)
)
logging.info("Cases dir is not set. Will use %s" % (args.cases_dir))
@ -392,15 +392,11 @@ if __name__ == "__main__":
command=args.command,
)
try:
print("Trying to kill container", CONTAINER_NAME, "if it's already running")
subprocess.check_call(
f'docker kill $(docker ps -a -q --filter name={CONTAINER_NAME} --format="{{{{.ID}}}}")',
shell=True,
)
print("Container killed")
except:
print("Nothing to kill")
containers = subprocess.check_output(f"docker ps -a -q --filter name={CONTAINER_NAME} --format={{{{.ID}}}}", shell=True, universal_newlines=True).splitlines()
if containers:
print(f"Trying to kill containers name={CONTAINER_NAME} ids={containers}")
subprocess.check_call(f"docker kill {' '.join(containers)}", shell=True)
print(f"Containers {containers} killed")
print(("Running pytest container as: '" + cmd + "'."))
subprocess.check_call(cmd, shell=True)