Это сообщение приходит здесь
Я работаю над последовательными шагами для подключения и проверки ответа из очереди rabbit_mq
Работает шаг 'Сервер кролика'как и ожидалось, но я не уверен, что глобальная переменная канала является лучшим подходом для создания канала и удаления его на другом этапе. также я не уверен, что вызов подпроцесса для получения ip контейнера докера - лучший способ сделать это либо с
, с другой стороны, в то время как я вызываю on_message_callback для получения сообщения из очереди, 'context' - это гдея хочу сохранить данные ответов кролика, что-то вроде «context.variable»
Любая помощь с моими вопросами будет полезна
@step(u'The rabbit server "{server_name}"')
def set_default_messages_server(context, server_name):
global channel
context.rabbit_server = server_name
connection = pika.BlockingConnection(pika.ConnectionParameters(
host=get_ip_from_docker_container(server_name)))
channel = connection.channel()
def get_ip_from_docker_container(container_name):
return subprocess.check_output('docker exec -it {} hostname -i'.format(container_name).split())
(в другом .py файле)
def on_message_callback(ch, method, properties, body):
print " [x] Received %r" % (body,)
print " [x] Done"
context.rabbit.data = body
Ошибка on_message_callback: «контекст» не определен