{ "info": { "author": "Will Maie, Matthew Hooker, Tom Wanielista, Ilja Bobkevic", "author_email": "wcmaier@m.aier.us, mwhooker@gmail.com, tom@simple.com, ilja.bobkevic@unibet.com", "bugtrack_url": null, "classifiers": [], "description": "===========\nunbound-ec2\n===========\n\n|Build Status| |Version|\n\nThis module uses the `Unbound`_ DNS resolver to answer simple DNS queries using EC2 API calls.\nFor example, the following query would match an EC2 instance with a ``Name`` tag of ``foo.example.com``:\n\n.. _`Unbound`: http://unbound.net\n.. _`DescribeInstances`: http://docs.aws.amazon.com/AWSEC2/latest/APIReference/ApiReference-query-DescribeInstances.html\n.. |Build Status| image:: http://img.shields.io/travis/unibet/unbound-ec2.svg?style=flat\n :target: https://travis-ci.org/unibet/unbound-ec2\n :alt: Build Status\n.. |Version| image:: http://img.shields.io/pypi/v/unbound-ec2.svg?style=flat\n :target: https://pypi.python.org/pypi/unbound-ec2/\n :alt: Version\n\n.. code-block:: sh\n\n $ dig -p 5003 @127.0.0.1 foo.dev.example.com\n ; <<>> DiG 9.8.1-P1 <<>> -p 5003 @127.0.0.1 foo.dev.example.com\n ; (1 server found)\n ;; global options: +cmd\n ;; Got answer:\n ;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 5696\n ;; flags: qr aa rd ra; QUERY: 1, ANSWER: 2, AUTHORITY: 0, ADDITIONAL: 0\n\n ;; QUESTION SECTION:\n ;foo.dev.example.com.\tIN\tA\n\n ;; ANSWER SECTION:\n foo.dev.example.com. 300 IN\tA\t10.0.0.2\n foo.dev.example.com. 300 IN\tA\t10.0.0.1\n\n ;; Query time: 81 msec\n ;; SERVER: 127.0.0.1#5003(127.0.0.1)\n ;; WHEN: Sat Sep 28 23:27:16 2013\n ;; MSG SIZE rcvd: 77\n\nInstallation\n------------\n\nOn Debian family, install the ``unbound``, ``python-unbound`` system packages.\n\nOn Redhat family, install the ``unbound``, ``unbound-python`` system packages.\n\nThen, install ``unbound-ec2``:\n\n.. code-block:: sh\n\n $ pip install unbound-ec2\n\n\nConfiguration\n-------------\n\nThe following settings must be added to your Unbound configuration:\n\n.. code-block:: yaml\n\n server:\n chroot: \"\"\n module-config: \"validator python iterator\"\n\n python:\n python-script: \"/etc/unbound/unbound_ec2_script\"\n\n\nEC2 module can be configured by specifying values in /etc/unbound/unbound_ec2.conf or setting environment variables in\n``/etc/default/unbound``.\n\nSee unbound_ec2.conf.example and default_unbound.example for more information.\n\nYou can also define ``AWS_ACCESS_KEY`` and ``AWS_SECRET_ACCESS_KEY`` entries in the environment directory.\nWhen ``unbound-ec2`` is run on an EC2 instance, though, it will automatically use an IAM instance profile if one is available.\n\n\nConfiguration - zone forwarding\n-------------------------------\n\nBy default unbound will control the whole zone configured for the plugin, however in some cases you might want to delegate\nsubdomains to other authoritative name servers. Unbound allows this by using the forward-zone directive:\n\n.. code-block:: yaml\n\n forward-zone:\n name: \"sub-y.sub-x.example.com\"\n forward-addr: \"ns1.sub-y.sub-x.example.com\"\n\n\nAdditionally, the unbound-ec2 plugin has to be configured with a comma separated list of all subdomains to be forwarded\nin the [main] section of the unbound_ec2.conf configuration file:\n\n.. code-block:: sh\n\n forwarded_zones = sub-y.sub-x.example.com\n\n\nConsiderations\n--------------\n\n``unbound-ec2`` queries the EC2 API to answer requests about names inside the specified ``zone``.\nAll other requests are handled normally by Unbound's caching resolver if caching type server was chosen.\n\nFor requests for names within the specified ``zone``, ``unbound_ec2`` calls `DescribeInstances`_\nand filters the results using defined lookup filters (default is instances in the ``running`` state).\n\nWhen more than one instance matches the ``DescribeInstances`` query, ``unbound-ec2`` will return multiple A records in a round-robin. \nIn case of caching type server, query results will be cached by Unbound, and a TTL (default: 300 seconds) is defined\nto encourage well-behaved clients to cache the information themselves.\n\nIPv6 are not yet supported.\n\nUnit tests\n----------\n\nRun with\n\n.. code-block:: sh\n\n $ python setup.py test", "description_content_type": null, "docs_url": null, "download_url": "", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "https://github.com/unibet/unbound-ec2", "keywords": "", "license": "Apache License 2.0", "maintainer": "", "maintainer_email": "", "name": "unbound-ec2", "package_url": "https://pypi.org/project/unbound-ec2/", "platform": "Posix; MacOS X", "project_url": "https://pypi.org/project/unbound-ec2/", "project_urls": { "Homepage": "https://github.com/unibet/unbound-ec2" }, "release_url": "https://pypi.org/project/unbound-ec2/1.3.0/", "requires_dist": null, "requires_python": "", "summary": "Unbound DNS resolver to answer simple DNS queries using EC2 API calls", "version": "1.3.0" }, "last_serial": 2458954, "releases": { "1.0.0": [ { "comment_text": "", "digests": { "md5": "2f025bf78d0f308de0cf03d250f6a1ea", "sha256": "5c93510044e3c41978a7b0d6985108f0888fdc99aee978fe37e73683053168f9" }, "downloads": -1, "filename": "unbound_ec2-1.0.0-py2.6.egg", "has_sig": false, "md5_digest": "2f025bf78d0f308de0cf03d250f6a1ea", "packagetype": "bdist_egg", "python_version": "2.6", "requires_python": null, "size": 18728, "upload_time": "2015-11-19T13:38:11", "url": "https://files.pythonhosted.org/packages/a9/04/a4c4279fdda39905a702fc808a9f44e59364e15f961aa01c987bac013428/unbound_ec2-1.0.0-py2.6.egg" }, { "comment_text": "", "digests": { "md5": "e559a4375251fb9445f21abbdb4f9930", "sha256": "156e9137754522db8615fd4da5579a19638b473f3da9d2b1c22a0f1f3423b9e6" }, "downloads": -1, "filename": "unbound-ec2-1.0.0.tar.gz", "has_sig": false, "md5_digest": "e559a4375251fb9445f21abbdb4f9930", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 7704, "upload_time": "2015-11-19T13:38:07", "url": "https://files.pythonhosted.org/packages/3b/70/04e085b55177157cbdf1b45e16543ea27b5c1435872892b57485b57d4019/unbound-ec2-1.0.0.tar.gz" } ], "1.0.1": [ { "comment_text": "", "digests": { "md5": "5f0997c0561fe5cc702faf3b78325da2", "sha256": "a551de81c6503f5e7c96f681e8f0fda69b7ac89c2a87290e7841d5a203cc4305" }, "downloads": -1, "filename": "unbound_ec2-1.0.1-py2.7.egg", "has_sig": false, "md5_digest": "5f0997c0561fe5cc702faf3b78325da2", "packagetype": "bdist_egg", "python_version": "2.7", "requires_python": null, "size": 18705, "upload_time": "2015-11-19T14:59:25", "url": "https://files.pythonhosted.org/packages/39/94/2ff2620055f3bc80557b4d29b858f8f8a602d2046339c60ec6fe6f1accaf/unbound_ec2-1.0.1-py2.7.egg" }, { "comment_text": "", "digests": { "md5": "bd36d5ba7556eb732b1c488a603255e7", "sha256": "dbd2993ea07139e258df29ad94cb4a379d60e4361122478e62a0f7f349dffa78" }, "downloads": -1, "filename": "unbound-ec2-1.0.1.tar.gz", "has_sig": false, "md5_digest": "bd36d5ba7556eb732b1c488a603255e7", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 7957, "upload_time": "2015-11-19T14:59:22", "url": "https://files.pythonhosted.org/packages/a6/41/e814ebced988cf1a1e7fe16423f5531550c48d1901b1930025ef7fc7529b/unbound-ec2-1.0.1.tar.gz" } ], "1.0.2": [ { "comment_text": "", "digests": { "md5": "c3656c87e3fe2db81b4876372d5123a8", "sha256": "695664c95d2c63907fab740f62b0f3857664f47949cb3f232f3f558c9e947b39" }, "downloads": -1, "filename": "unbound_ec2-1.0.2-py2.6.egg", "has_sig": false, "md5_digest": "c3656c87e3fe2db81b4876372d5123a8", "packagetype": "bdist_egg", "python_version": "2.6", "requires_python": null, "size": 18792, "upload_time": "2015-11-19T15:20:39", "url": "https://files.pythonhosted.org/packages/b4/21/7ab9a9948b7928318386c61454de2120a12f964c0d9fce3abf59036fe195/unbound_ec2-1.0.2-py2.6.egg" }, { "comment_text": "", "digests": { "md5": "b7054ca3d3c1d28c6832531e3c89b161", "sha256": "aba66efc6fb19c090bf1dcfce543f5988abf24bfde9971ca5b4e229a4236ab9a" }, "downloads": -1, "filename": "unbound-ec2-1.0.2.tar.gz", "has_sig": false, "md5_digest": "b7054ca3d3c1d28c6832531e3c89b161", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 8405, "upload_time": "2015-11-19T15:20:22", "url": "https://files.pythonhosted.org/packages/4a/ff/7ee36c4c515b6aa85a08d2a819b8060661d4f4faf72a18bbaf4cfbb84932/unbound-ec2-1.0.2.tar.gz" } ], "1.0.3": [], "1.0.4": [ { "comment_text": "", "digests": { "md5": "8f2b7099229a60404107212240c10c9d", "sha256": "93a120dad80bcf261b76d1990602d5f4943e9b4b7c22eb98b9fae3e723ce02c2" }, "downloads": -1, "filename": "unbound-ec2-1.0.4.tar.gz", "has_sig": false, "md5_digest": "8f2b7099229a60404107212240c10c9d", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 9950, "upload_time": "2015-11-23T15:28:25", "url": "https://files.pythonhosted.org/packages/68/56/cb193f618f33e5832fabf3de4915d3b6f5839196b9464f54633f96eab262/unbound-ec2-1.0.4.tar.gz" } ], "1.0.5": [ { "comment_text": "", "digests": { "md5": "682d25b8cbdb13f288409bf72007e2b6", "sha256": "380fd56e6c5c7e21b591fcc97b7755c6f519d281b1089b52dee4b530aed51be0" }, "downloads": -1, "filename": "unbound-ec2-1.0.5.tar.gz", "has_sig": false, "md5_digest": "682d25b8cbdb13f288409bf72007e2b6", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 9880, "upload_time": "2015-11-24T14:35:27", "url": "https://files.pythonhosted.org/packages/40/b2/28c377a6abc0d6dfccc3a9f6212e3fa9df432eded01b4d2e9484e931cf36/unbound-ec2-1.0.5.tar.gz" } ], "1.1.0": [ { "comment_text": "", "digests": { "md5": "0297477c57e63e5057bf2760b1503fc0", "sha256": "92213b0f45bdb60c5f95271513779c94a99abbb320f856c2d8a0a0eebdb35f17" }, "downloads": -1, "filename": "unbound-ec2-1.1.0.tar.gz", "has_sig": false, "md5_digest": "0297477c57e63e5057bf2760b1503fc0", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 10195, "upload_time": "2015-11-25T15:20:33", "url": "https://files.pythonhosted.org/packages/f2/a1/0136c7cb432558cd91127fe8071020bbe2d4343787b939bcd4d885c2948b/unbound-ec2-1.1.0.tar.gz" } ], "1.1.1": [ { "comment_text": "", "digests": { "md5": "99b84760b13743431746650395c95276", "sha256": "30d2ea7ba278d21671e2b7fd6b735b8a1122a74179e184fedf2ae3926a16bfd7" }, "downloads": -1, "filename": "unbound_ec2-1.1.1-py2.7.egg", "has_sig": false, "md5_digest": "99b84760b13743431746650395c95276", "packagetype": "bdist_egg", "python_version": "2.7", "requires_python": null, "size": 19410, "upload_time": "2015-11-26T10:20:36", "url": "https://files.pythonhosted.org/packages/74/b9/61fd49a929c8ed877cce4e6f8cb5cec086eab8325904efdae063872cd626/unbound_ec2-1.1.1-py2.7.egg" }, { "comment_text": "", "digests": { "md5": "a913a25e0682479e45a58ce80dcbc587", "sha256": "ecccf900a47f0585f45cb7f54e66a5073ae9f32304cce85269d4d63004284655" }, "downloads": -1, "filename": "unbound-ec2-1.1.1.tar.gz", "has_sig": false, "md5_digest": "a913a25e0682479e45a58ce80dcbc587", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 8642, "upload_time": "2015-11-26T10:20:26", "url": "https://files.pythonhosted.org/packages/73/26/396a73dd07e85e680248d805e7cb44aee9fe14be85fa4dd423c0a031fb4a/unbound-ec2-1.1.1.tar.gz" } ], "1.1.2": [ { "comment_text": "", "digests": { "md5": "860084a82c42e19d8e061ce98fc7a775", "sha256": "0e60d2ee3da657800c35f3299ee099044993814861b35668dbd9d63274edf05f" }, "downloads": -1, "filename": "unbound_ec2-1.1.2-py2.7.egg", "has_sig": false, "md5_digest": "860084a82c42e19d8e061ce98fc7a775", "packagetype": "bdist_egg", "python_version": "2.7", "requires_python": null, "size": 19394, "upload_time": "2015-11-26T12:25:56", "url": "https://files.pythonhosted.org/packages/88/ef/1b8fa84aa5683ed47673167cd7b1671f3ed27e85ed0ae9706ef24a3ee7ea/unbound_ec2-1.1.2-py2.7.egg" }, { "comment_text": "", "digests": { "md5": "095c9aba6e3e626654f961fc56c05d72", "sha256": "6464e608faaf82f41926f9b7da99ad16bd1242d4b2a407d6398638f7fba1a9fa" }, "downloads": -1, "filename": "unbound-ec2-1.1.2.tar.gz", "has_sig": false, "md5_digest": "095c9aba6e3e626654f961fc56c05d72", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 8641, "upload_time": "2015-11-26T12:25:49", "url": "https://files.pythonhosted.org/packages/b0/b8/2fc24247042e71449ade3658476df3bc13cdd85488a40ba47f2ee41dd2d1/unbound-ec2-1.1.2.tar.gz" } ], "1.1.3": [ { "comment_text": "", "digests": { "md5": "e4e6c0830b2be251de8ff75060a054be", "sha256": "6a696a485df966ec4bbd6b76b12678c375bc03ab6247d7a73fa61e8cdf5d58d6" }, "downloads": -1, "filename": "unbound_ec2-1.1.3-py2.6.egg", "has_sig": false, "md5_digest": "e4e6c0830b2be251de8ff75060a054be", "packagetype": "bdist_egg", "python_version": "2.6", "requires_python": null, "size": 19601, "upload_time": "2015-11-26T13:58:18", "url": "https://files.pythonhosted.org/packages/cb/3f/dd52c53e2f2ea01239fade02d566eca83f844f1f506d4ebd948710ec6579/unbound_ec2-1.1.3-py2.6.egg" }, { "comment_text": "", "digests": { "md5": "bd0dfb7a9e0550003c14971519d81073", "sha256": "c04f52b6b3bab9a6dfde1c919e9073607c80424de7f1295311fb1a9a19cfe781" }, "downloads": -1, "filename": "unbound-ec2-1.1.3.tar.gz", "has_sig": false, "md5_digest": "bd0dfb7a9e0550003c14971519d81073", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 8680, "upload_time": "2015-11-26T13:58:09", "url": "https://files.pythonhosted.org/packages/73/7c/6874520ec82c0505284e7ab44b845075389cb3a8b9750651afd54e15ef74/unbound-ec2-1.1.3.tar.gz" } ], "1.2.0": [ { "comment_text": "", "digests": { "md5": "cf64e85b58cabba61e2c326d095f7b81", "sha256": "db8239b1fa47bdb19dba26a749c4c4d1d2415f14ea70c634d1e4800eae6af4ce" }, "downloads": -1, "filename": "unbound_ec2-1.2.0-py2.6.egg", "has_sig": false, "md5_digest": "cf64e85b58cabba61e2c326d095f7b81", "packagetype": "bdist_egg", "python_version": "2.6", "requires_python": null, "size": 19826, "upload_time": "2016-04-22T10:58:42", "url": "https://files.pythonhosted.org/packages/e5/b3/aea01125fdc854d8bad39dd65e69e9667bfa3814fd4c1b3037d640f6ea89/unbound_ec2-1.2.0-py2.6.egg" }, { "comment_text": "", "digests": { "md5": "180f25c94002193198342e16adf9fbc8", "sha256": "362288460ad427f23252f8c192537a9c5114d33c7456291f4199bc31931bf6de" }, "downloads": -1, "filename": "unbound-ec2-1.2.0.tar.gz", "has_sig": false, "md5_digest": "180f25c94002193198342e16adf9fbc8", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 8794, "upload_time": "2016-04-22T10:58:23", "url": "https://files.pythonhosted.org/packages/8b/1b/58bb454061e25f857e20b200d94c6b20c4ba4a050eff8f4ce86e47fd7ff2/unbound-ec2-1.2.0.tar.gz" } ], "1.3.0": [ { "comment_text": "", "digests": { "md5": "500211852fcc58a6e4ceb894e05c3c26", "sha256": "2a57a6e2f9e9ebd0a825be7df89cd2da27135d9edf20539bbe610213e75039c0" }, "downloads": -1, "filename": "unbound_ec2-1.3.0-py2.7.egg", "has_sig": false, "md5_digest": "500211852fcc58a6e4ceb894e05c3c26", "packagetype": "bdist_egg", "python_version": "2.7", "requires_python": null, "size": 20548, "upload_time": "2016-11-14T09:03:22", "url": "https://files.pythonhosted.org/packages/81/f9/35f15c715a3f4dd0af75f4b67a2f6a8f356940c7fa0319c072e1c7385fe1/unbound_ec2-1.3.0-py2.7.egg" }, { "comment_text": "", "digests": { "md5": "2640ea405962efdb024358fb50d44594", "sha256": "f5bd7c81a2cfe8f837c265328bbb9e867e07e2af7c49865049010e782618ab89" }, "downloads": -1, "filename": "unbound-ec2-1.3.0.tar.gz", "has_sig": false, "md5_digest": "2640ea405962efdb024358fb50d44594", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 10252, "upload_time": "2016-11-14T09:03:18", "url": "https://files.pythonhosted.org/packages/be/c4/ba4569bbfffa5c8df98dcbcf41c3c822a43ff70646d96f7525f271fe3b16/unbound-ec2-1.3.0.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "500211852fcc58a6e4ceb894e05c3c26", "sha256": "2a57a6e2f9e9ebd0a825be7df89cd2da27135d9edf20539bbe610213e75039c0" }, "downloads": -1, "filename": "unbound_ec2-1.3.0-py2.7.egg", "has_sig": false, "md5_digest": "500211852fcc58a6e4ceb894e05c3c26", "packagetype": "bdist_egg", "python_version": "2.7", "requires_python": null, "size": 20548, "upload_time": "2016-11-14T09:03:22", "url": "https://files.pythonhosted.org/packages/81/f9/35f15c715a3f4dd0af75f4b67a2f6a8f356940c7fa0319c072e1c7385fe1/unbound_ec2-1.3.0-py2.7.egg" }, { "comment_text": "", "digests": { "md5": "2640ea405962efdb024358fb50d44594", "sha256": "f5bd7c81a2cfe8f837c265328bbb9e867e07e2af7c49865049010e782618ab89" }, "downloads": -1, "filename": "unbound-ec2-1.3.0.tar.gz", "has_sig": false, "md5_digest": "2640ea405962efdb024358fb50d44594", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 10252, "upload_time": "2016-11-14T09:03:18", "url": "https://files.pythonhosted.org/packages/be/c4/ba4569bbfffa5c8df98dcbcf41c3c822a43ff70646d96f7525f271fe3b16/unbound-ec2-1.3.0.tar.gz" } ] }