From e50ad6f118125dc2a8cc51aac6048763e2fe701b Mon Sep 17 00:00:00 2001 From: Andrew Klychkov Date: Thu, 28 Oct 2021 00:00:14 +0300 Subject: [PATCH] ansible-test: Set max number of open files in containers to 10240 (#75498) --- changelogs/fragments/ansible-test-docker-ulimit.yml | 2 ++ test/lib/ansible_test/_internal/docker_util.py | 6 ++++++ 2 files changed, 8 insertions(+) create mode 100644 changelogs/fragments/ansible-test-docker-ulimit.yml diff --git a/changelogs/fragments/ansible-test-docker-ulimit.yml b/changelogs/fragments/ansible-test-docker-ulimit.yml new file mode 100644 index 00000000000..9469977934a --- /dev/null +++ b/changelogs/fragments/ansible-test-docker-ulimit.yml @@ -0,0 +1,2 @@ +minor_changes: + - ansible-test - Change the maximum number of open files in a test container from the default to ``10240``. diff --git a/test/lib/ansible_test/_internal/docker_util.py b/test/lib/ansible_test/_internal/docker_util.py index da113f02a1e..cab2451f86d 100644 --- a/test/lib/ansible_test/_internal/docker_util.py +++ b/test/lib/ansible_test/_internal/docker_util.py @@ -37,6 +37,10 @@ DOCKER_COMMANDS = [ 'podman', ] +# Max number of open files in a docker container. +# Passed with --ulimit option to the docker run command. +MAX_NUM_OPEN_FILES = 10240 + class DockerCommand: """Details about the available docker command.""" @@ -232,6 +236,8 @@ def docker_run( # Only when the network is not the default bridge network. options.extend(['--network', network]) + options.extend(['--ulimit', 'nofile=%s' % MAX_NUM_OPEN_FILES]) + for _iteration in range(1, 3): try: stdout = docker_command(args, [command] + options + [image] + cmd, capture=True)[0]