Geoff Anderson created KAFKA-2851: ------------------------------------- Summary: system tests: error copying keytab file Key: KAFKA-2851 URL: https://issues.apache.org/jira/browse/KAFKA-2851 Project: Kafka Issue Type: Bug Reporter: Geoff Anderson Priority: Minor
It is best to use unique paths for temporary files on the test driver machine so that multiple test jobs don't conflict. If the test driver machine is running multiple ducktape jobs concurrently, as is the case with Confluent nightly test runs, conflicts can occur if the same canonical path is always used. In this case, security_config.py copies a file to /tmp/keytab on the test driver machine, while other jobs may remove this from the driver machine. Then you can get errors like this: {code} ==================================================================================================== test_id: 2015-11-17--001.kafkatest.tests.replication_test.ReplicationTest.test_replication_with_broker_failure.security_protocol=SASL_PLAINTEXT.failure_mode=clean_bounce status: FAIL run time: 1 minute 33.395 seconds Traceback (most recent call last): File "/var/lib/jenkins/workspace/kafka_system_tests/kafka/venv/local/lib/python2.7/site-packages/ducktape-0.3.8-py2.7.egg/ducktape/tests/runner.py", line 101, in run_all_tests result.data = self.run_single_test() File "/var/lib/jenkins/workspace/kafka_system_tests/kafka/venv/local/lib/python2.7/site-packages/ducktape-0.3.8-py2.7.egg/ducktape/tests/runner.py", line 151, in run_single_test return self.current_test_context.function(self.current_test) File "/var/lib/jenkins/workspace/kafka_system_tests/kafka/venv/local/lib/python2.7/site-packages/ducktape-0.3.8-py2.7.egg/ducktape/mark/_mark.py", line 331, in wrapper return functools.partial(f, *args, **kwargs)(*w_args, **w_kwargs) File "/var/lib/jenkins/workspace/kafka_system_tests/kafka/tests/kafkatest/tests/replication_test.py", line 132, in test_replication_with_broker_failure self.run_produce_consume_validate(core_test_action=lambda: failures[failure_mode](self)) File "/var/lib/jenkins/workspace/kafka_system_tests/kafka/tests/kafkatest/tests/produce_consume_validate.py", line 66, in run_produce_consume_validate core_test_action() File "/var/lib/jenkins/workspace/kafka_system_tests/kafka/tests/kafkatest/tests/replication_test.py", line 132, in <lambda> self.run_produce_consume_validate(core_test_action=lambda: failures[failure_mode](self)) File "/var/lib/jenkins/workspace/kafka_system_tests/kafka/tests/kafkatest/tests/replication_test.py", line 43, in clean_bounce test.kafka.restart_node(prev_leader_node, clean_shutdown=True) File "/var/lib/jenkins/workspace/kafka_system_tests/kafka/tests/kafkatest/services/kafka/kafka.py", line 275, in restart_node self.start_node(node) File "/var/lib/jenkins/workspace/kafka_system_tests/kafka/tests/kafkatest/services/kafka/kafka.py", line 123, in start_node self.security_config.setup_node(node) File "/var/lib/jenkins/workspace/kafka_system_tests/kafka/tests/kafkatest/services/security/security_config.py", line 130, in setup_node node.account.scp_to(MiniKdc.LOCAL_KEYTAB_FILE, SecurityConfig.KEYTAB_PATH) File "/var/lib/jenkins/workspace/kafka_system_tests/kafka/venv/local/lib/python2.7/site-packages/ducktape-0.3.8-py2.7.egg/ducktape/cluster/remoteaccount.py", line 174, in scp_to return self._ssh_quiet(self.scp_to_command(src, dest, recursive)) File "/var/lib/jenkins/workspace/kafka_system_tests/kafka/venv/local/lib/python2.7/site-packages/ducktape-0.3.8-py2.7.egg/ducktape/cluster/remoteaccount.py", line 219, in _ssh_quiet raise e CalledProcessError: Command 'scp -o 'HostName 52.33.250.202' -o 'Port 22' -o 'UserKnownHostsFile /dev/null' -o 'StrictHostKeyChecking no' -o 'PasswordAuthentication no' -o 'IdentityFile /var/lib/jenkins/muckrake.pem' -o 'IdentitiesOnly yes' -o 'LogLevel FATAL' /tmp/keytab ubuntu@worker2:/mnt/security/keytab' returned non-zero exit status 1 {code} -- This message was sent by Atlassian JIRA (v6.3.4#6332)