コード例 #1
0
ファイル: test_cli.py プロジェクト: wikimedia/poppy-cli
 def setUp(self):
     self.broker_url = CONFIG_TEST_IN_MEMORY_URL
     self.queue_name = "test-message-queue"
     self.config = deepcopy(Queue.get_default_config())
     self.config["BROKER_URL"] = self.broker_url
     self.config["QUEUE_NAME"] = self.queue_name
     self.tq = Queue(self.config)
コード例 #2
0
    def setUp(self):
        self.broker_url = "kafka://kafka_hostname1;kafka_hostname2"
        self.queue_name = "test-message-queue"

        self.config = deepcopy(Queue.get_default_config())
        self.config["BROKER_URL"] = self.broker_url
        self.config["QUEUE_NAME"] = self.queue_name
コード例 #3
0
 def setUp(self):
     self.broker_url = "memory://"
     self.queue_name = "test-message-queue"
     self.config = deepcopy(Queue.get_default_config())
     self.config["BROKER_URL"] = self.broker_url
     self.config["QUEUE_NAME"] = self.queue_name
     self.tq = Queue(self.config)
コード例 #4
0
ファイル: test_cli.py プロジェクト: wikimedia/poppy-cli
    def setUp(self):
        self.queue_name = "test-poppy"
        self.admin_client = KafkaAdminClient(
            bootstrap_servers=get_kafka_servers(), client_id=self.__class__)

        bootstrap_kafka_tests(self.admin_client, self.queue_name)
        self.broker_url = f"kafka://{get_kafka_servers()}"
        self.config = deepcopy(Queue.get_default_config())
        self.config["BROKER_URL"] = self.broker_url
        self.config["QUEUE_NAME"] = self.queue_name
        self.config["CONSUMER_GROUP_ID"] = self.id()
コード例 #5
0
ファイル: cli.py プロジェクト: wikimedia/poppy-cli
"""Console script for poppy."""
import json
import sys
from contextlib import closing
from io import TextIOWrapper
from json.decoder import JSONDecodeError
from typing import Dict, Tuple

import click

from poppy.engine import ConfigDict, EmptyQueueException
from poppy.messsaging import Queue

DEFAULT_CONFIG: ConfigDict = Queue.get_default_config()


@click.group()
@click.option("--broker-url", help="Message queue broker URL", required=True)
@click.option("--queue-name", help="Message queue name", required=True)
@click.option(
    "--connection-timeout",
    type=int,
    help="Connection timeout (s)",
    default=DEFAULT_CONFIG["CONNECTION_TIMEOUT"],
    show_default=True,
)
@click.pass_context
def main(ctx: click.core.Context, broker_url: str, queue_name: str,
         connection_timeout: int):
    """Simple CLI for messaging"""