{ "info": { "author": "Jukka Ojaniemi", "author_email": "jukka.ojaniemi@jyu.fi", "bugtrack_url": null, "classifiers": [ "Programming Language :: Python :: 2.6", "Programming Language :: Python :: 2.7" ], "description": "=======\r\nPikacon\r\n=======\r\n\r\nPikacon is a helper library which will reduce the amount of boilerplate your\r\nsoftware needs when it is using pika for creating connection to broker and\r\ndeclaring exchanges and queues. With pikacon you get your queues up and running easily without compromises.\r\n\r\nRequirements\r\n============\r\n\r\n* python 2.7\r\n* pika >= 0.9.8\r\n\r\nUsage\r\n=====\r\n\r\nPikacon provides helper class which can be imported to your program. Class\r\ntakes a path to .ini-style config file as a parameter and creates connection,\r\nexchanges, queues and bindings automatically from there. All you need to\r\nprovide is a proper config.\r\n\r\nCreation order is following:\r\n\r\n1. Connection\r\n2. Channel\r\n3. Exchanges\r\n4. Queues\r\n5. Bindings\r\n\r\nConfig\r\n======\r\n\r\nPikacon uses Pythons ConfigParser to get config for connection, exchanges and\r\nqueues.\r\n\r\nBroker\r\n------\r\n\r\nBroker is configured as in below example. Section name is broker and options\r\nare regular pika parameters for broker. If you want to configure ssl_options\r\ncreate new section for those and refer that section name in broker options.\r\nEg.::\r\n\r\n [broker]\r\n ...\r\n ssl = True\r\n ssl_options = my_ssl_options\r\n\r\n [my_ssl_options]\r\n ...\r\n\r\nExchange\r\n--------\r\n\r\nSection name for exchange consists of two parts divided by ':'. First part is\r\n'exchange' and second part is the name of the exchange. Eg.::\r\n\r\n [exchange:myexchange]\r\n ...\r\n\r\nThe actual options below exchange section are normal key = value parameters\r\nwhich are used in pika.\r\n\r\nQueue\r\n-----\r\n\r\nThe section for queue consits of two parts divided by ':'. First part is\r\n'queue' and second part is the name of the queue. Eg.::\r\n\r\n [queue:myqueue]\r\n ...\r\n\r\nThe options below queue section are::\r\n\r\n durable = True|False\r\n exclusive = True|False\r\n arguments = queue:queuename:arguments\r\n\r\nExtra arguments for the queue are provided by another section. Pikacon assumes\r\nthat the name of the arguments section follows following convention\r\n'queue:queuename:nameofargumentssection'.\r\n\r\nThe actual options below queue section are normal key = value parameters which\r\nare used in pika.\r\n\r\nBinding\r\n-------\r\n\r\nThe name of the binding section consists three parts divided by ':'. First\r\npart is always 'binding'. Second part is the name of the queue we're binding.\r\nThird part is name of the exchange where we're binding the queue. Eg.::\r\n\r\n [binding:myqueue:myexchange]\r\n ...\r\n\r\nThe actual options below binding section are normal key = value parameters\r\nwhich are used in pika.\r\n\r\nComplete configuration example\r\n------------------------------\r\n::\r\n\r\n [broker]\r\n host = localhost\r\n port = 5672\r\n username = guest\r\n password = guest\r\n virtual_host = /\r\n heartbeat = 60\r\n\r\n [exchange:exchangename]\r\n type = direct\r\n durable = False\r\n auto_delete = True\r\n\r\n [queue:testqueue1]\r\n durable = True\r\n exclusive = False\r\n\r\n [queue:testqueue2]\r\n durable = False\r\n exclusive = False\r\n\r\n [queue:testqueue3]\r\n durable = True\r\n exclusive = False\r\n arguments = queue:testqueue3:arguments\r\n\r\n [queue:testqueue4]\r\n durable = True\r\n exclusive = False\r\n\r\n [queue:testqueue3:arguments]\r\n x-message-ttl = 1800000\r\n x-dead-letter-exchange = exchangename\r\n x-dead-letter-routing-key = key4\r\n\r\n [binding:testqueue1:exchangename]\r\n routing_key = key1\r\n\r\n [binding:testqueue2:exchangename]\r\n routing_key = key2\r\n\r\n [binding:testqueue3:exchangename]\r\n routing_key = key3\r\n\r\n [binding:testqueue4:exchangename]\r\n routing_key = key4\r\n\r\nAbove example configures connection to broker at localhost. It defines one\r\ndirect exchange called exchangename and four queues called testqueue1,\r\ntestqueue2, testqueue3 and testqueue4. Testqueue3 has extra arguments which\r\ndefine dead letter exchange. All queues are bound to our only exchange with\r\nroutingkeys key1, key2, key3 and key4.\r\n\r\nCHANGELOG\r\n=========\r\n\r\n0.3.1 - 2012-12-02\r\n------------------\r\n\r\n* Fixed setup.py and README.rst.\r\n\r\n0.3 - 2012-12-02\r\n----------------\r\n\r\n* Requires Pika >= 0.9.8\r\n* Supports same parameter set for connections as pika does.\r\n* Shortened configuration file structure. Configuration files made for older\r\n versions of pikacon doesn't work anymore.", "description_content_type": null, "docs_url": null, "download_url": "UNKNOWN", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "https://github.com/pingviini/pikacon", "keywords": "", "license": "GPL", "maintainer": "", "maintainer_email": "", "name": "pikacon", "package_url": "https://pypi.org/project/pikacon/", "platform": "UNKNOWN", "project_url": "https://pypi.org/project/pikacon/", "project_urls": { "Download": "UNKNOWN", "Homepage": "https://github.com/pingviini/pikacon" }, "release_url": "https://pypi.org/project/pikacon/0.3.1/", "requires_dist": null, "requires_python": null, "summary": "Helper library for using pika.", "version": "0.3.1" }, "last_serial": 706036, "releases": { "0.1": [ { "comment_text": "", "digests": { "md5": "9c3f8f63043791270beb309ee85c6148", "sha256": "93b44a2eaac7c3520abf1dcb3ee30dad9cdec48b7c8d3c3e58216fc2b5341670" }, "downloads": -1, "filename": "pikacon-0.1.zip", "has_sig": false, "md5_digest": "9c3f8f63043791270beb309ee85c6148", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 9262, "upload_time": "2012-11-15T10:30:40", "url": "https://files.pythonhosted.org/packages/30/fe/355430c1120bfe6d06f1ba16e4795743a07536f6495f6cce6a81c935e733/pikacon-0.1.zip" } ], "0.2": [ { "comment_text": "", "digests": { "md5": "8bda1c2318dff6c292170469241651e1", "sha256": "c7d4dc02dc0b578a382a5ad66a832a9ea113c6e10e92e36c4bcb965fbb6fdd3f" }, "downloads": -1, "filename": "pikacon-0.2.zip", "has_sig": false, "md5_digest": "8bda1c2318dff6c292170469241651e1", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 9304, "upload_time": "2012-11-15T11:23:29", "url": "https://files.pythonhosted.org/packages/58/43/7cbebe8429b32d925fd8984a117eebc7eaf9b9c2b114b0e72d62621014be/pikacon-0.2.zip" } ], "0.3": [ { "comment_text": "", "digests": { "md5": "6256fe3a22eab33f60916b20d3ce9f93", "sha256": "3353f32353bb7027bbd14da913f33622757c2889db333b65c90dbbeba87be563" }, "downloads": -1, "filename": "pikacon-0.3.zip", "has_sig": false, "md5_digest": "6256fe3a22eab33f60916b20d3ce9f93", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 12347, "upload_time": "2012-12-02T11:55:14", "url": "https://files.pythonhosted.org/packages/05/77/19503d6f5d091cd8b2be874062be33dd5e3a49abaa89066d6c443959d07a/pikacon-0.3.zip" } ], "0.3.1": [ { "comment_text": "", "digests": { "md5": "67068256da4c3bd74c8e630afdb7ffc4", "sha256": "36e80af7644324d0a6c5adf20a21cf2ae4af69ddb082c27f899c864a6d1e55ba" }, "downloads": -1, "filename": "pikacon-0.3.1.zip", "has_sig": false, "md5_digest": "67068256da4c3bd74c8e630afdb7ffc4", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 12262, "upload_time": "2012-12-02T12:14:45", "url": "https://files.pythonhosted.org/packages/84/40/5924dcf82efcebd7250537fab8faeec085d271e6afd1ab534d9867d1b5f1/pikacon-0.3.1.zip" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "67068256da4c3bd74c8e630afdb7ffc4", "sha256": "36e80af7644324d0a6c5adf20a21cf2ae4af69ddb082c27f899c864a6d1e55ba" }, "downloads": -1, "filename": "pikacon-0.3.1.zip", "has_sig": false, "md5_digest": "67068256da4c3bd74c8e630afdb7ffc4", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 12262, "upload_time": "2012-12-02T12:14:45", "url": "https://files.pythonhosted.org/packages/84/40/5924dcf82efcebd7250537fab8faeec085d271e6afd1ab534d9867d1b5f1/pikacon-0.3.1.zip" } ] }