{ "info": { "author": "Dustin Oprea", "author_email": "myselfasunder@gmail.com", "bugtrack_url": null, "classifiers": [], "description": "Overview\n--------\n\nA low-cost, dynamic-DNS client using Amazon's Route53 (currently $.50/zone).\n\nBased on code from `How and why I'm not running my own DNS `_.\n\n\nInstallation\n------------\n\nUse PyPI::\n\n $ sudo pip install awsdd\n\n\nPrerequisites\n-------------\n\nYou must already have an A-record for your domain name in the Route53 zone. In \norder to be able to remove the record, prior to creating a new one (if the IP \nhas changed), we need to know the TTL value of the current record, which is \nused by the *boto* library to identify the current record.\n\nIf you see the following error, it might mean that the TTL disagreed from our default::\n\n boto.route53.exception.DNSServerError: DNSServerError: 400 Bad Request\n \n SenderInvalidChangeBatchTried to delete resource record set [name='dustinhome.us.', type='A'] but the values provided do not match the current valuesbe44faea-f41c-11e3-a846-5921f19aa715\n\nIn this case, try looking-up your current TTL value in the Route53 console, and setting it into the ADD_OLD_TTL environment variable.\n\n\nSettings\n--------\n\n*awsdd* needs your AWS API credentials, the zone-ID, and the domain name that \nyou're updating. All of these things can either be defined as environment \nvariables or passed as command-line parameters. Our convention is to provide \nthe AWS credentials via the environment (which is common), and pass the rest as\nparameters.\n\nThe command-line parameters can be found via command-line help. The supported \nenvironment variables are these, and shouldn't need an explanation:\n\n- USER_DOMAIN\n- ZONE_ID\n- ACCESS_KEY_ID\n- SECRET_ACCESS_KEY\n\n\nUsage\n-----\n\nIt's straight-forward. Just pass it the right information::\n\n $ ADD_ACCESS_KEY_ID=XXXXXXXXXX ADD_SECRET_ACCESS_KEY=YYYYYYYYYY add_update -d -z \n\n\nScheduling\n----------\n\nThere are a lot of different ways to choose how to get the configuration values \ninto *awsdd* and some people might also have different preferences for how \noften it runs. So, we leave it to the user to schedule it into Cron.\n\nFor your convenience, this is an example of such a job, which updates every \nfour hours::\n\n 0 */4 * * * /usr/local/bin/add_update -d -z -a -s \n\n\nDebugging\n---------\n\nBy setting the DEBUG environment variable to \"1\", you'll get some more verbosity::\n\n 2014-06-14 19:46:47,057 - add.aws - DEBUG - Updating DNS for domain [ddd.eee].\n 2014-06-14 19:46:47,057 - add.aws - DEBUG - Fetching current IP.\n 2014-06-14 19:46:47,077 - requests.packages.urllib3.connectionpool - INFO - Starting new HTTP connection (1): wtfismyip.com\n 2014-06-14 19:46:47,281 - requests.packages.urllib3.connectionpool - DEBUG - \"GET /text HTTP/1.1\" 200 13\n 2014-06-14 19:46:47,281 - add.aws - DEBUG - Current IP: [49.139.31.75]\n 2014-06-14 19:46:47,581 - add.aws - DEBUG - Current DNS value: [1.2.3.4]\n 2014-06-14 19:46:47,716 - add.aws - INFO - IP update complete.", "description_content_type": "", "docs_url": null, "download_url": "", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "https://github.com/dsoprea/AwsDynDns", "keywords": "aws r53 route53 boto dyndns dns client", "license": "GPL 2", "maintainer": "", "maintainer_email": "", "name": "awsdd", "package_url": "https://pypi.org/project/awsdd/", "platform": "", "project_url": "https://pypi.org/project/awsdd/", "project_urls": { "Homepage": "https://github.com/dsoprea/AwsDynDns" }, "release_url": "https://pypi.org/project/awsdd/0.2.6/", "requires_dist": null, "requires_python": "", "summary": "An AWS (Route53)-based dynamic DNS client.", "version": "0.2.6" }, "last_serial": 4393554, "releases": { "0.2.0": [ { "comment_text": "", "digests": { "md5": "ab6d08f4236a569a66b047ec08daea9d", "sha256": "d4591a1d6a33ced46ec5a00e577563dd26dfe30a7668562b564e0f0145c4447c" }, "downloads": -1, "filename": "awsdd-0.2.0-py2-none-any.whl", "has_sig": false, "md5_digest": "ab6d08f4236a569a66b047ec08daea9d", "packagetype": "bdist_wheel", "python_version": "2.7", "requires_python": null, "size": 7192, "upload_time": "2014-06-15T00:00:35", "url": "https://files.pythonhosted.org/packages/1a/4a/7c5421b3e3ab7c575ca617d9ad72a2c1800f903490eae74b4897981133a8/awsdd-0.2.0-py2-none-any.whl" }, { "comment_text": "", "digests": { "md5": "8496e468aaa2a75313df844470f55d3d", "sha256": "a050cd733efddf250232febbceac8873e51e7257f561746b09324df852f5d9f6" }, "downloads": -1, "filename": "awsdd-0.2.0.tar.gz", "has_sig": false, "md5_digest": "8496e468aaa2a75313df844470f55d3d", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 2825, "upload_time": "2014-06-15T00:00:32", "url": "https://files.pythonhosted.org/packages/72/11/584015102c634527256a727d249f1f2aad10c69130d4cdc2f9b7b3a6df5e/awsdd-0.2.0.tar.gz" } ], "0.2.1": [ { "comment_text": "", "digests": { "md5": "f208438ba96589be9a5035a485b6ee55", "sha256": "b1c4803f244e49ca484dd8dd38aa02cfed2bef05112579012860b69fc86149a6" }, "downloads": -1, "filename": "awsdd-0.2.1-py2-none-any.whl", "has_sig": false, "md5_digest": "f208438ba96589be9a5035a485b6ee55", "packagetype": "bdist_wheel", "python_version": "2.7", "requires_python": null, "size": 12017, "upload_time": "2014-06-15T04:51:41", "url": "https://files.pythonhosted.org/packages/ae/89/babdc6fd06bca96c75a8cd9061bee388b5c07cad5ac8a8b74bd44789e83f/awsdd-0.2.1-py2-none-any.whl" }, { "comment_text": "", "digests": { "md5": "001e68acac7afed2c839bfdf0b7a840f", "sha256": "9605cc112f7f3888fa6860fa1be30d74aa5425f340ff527ba206bf3b2eef405b" }, "downloads": -1, "filename": "awsdd-0.2.1.tar.gz", "has_sig": false, "md5_digest": "001e68acac7afed2c839bfdf0b7a840f", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 4507, "upload_time": "2014-06-15T04:51:40", "url": "https://files.pythonhosted.org/packages/62/41/0fd5d97c6b767503c1f842d8190c7a2df08fce1b6fbfaf49c9acd2124e22/awsdd-0.2.1.tar.gz" } ], "0.2.2": [ { "comment_text": "", "digests": { "md5": "cf0925f12cae46496cbc4f09b9640fb6", "sha256": "b00543ec25479120cde03ca3d98a12ef5d3993b48f3c9050d40595e088e6d423" }, "downloads": -1, "filename": "awsdd-0.2.2-py2-none-any.whl", "has_sig": false, "md5_digest": "cf0925f12cae46496cbc4f09b9640fb6", "packagetype": "bdist_wheel", "python_version": "2.7", "requires_python": null, "size": 12017, "upload_time": "2014-06-15T15:37:24", "url": "https://files.pythonhosted.org/packages/fa/a3/33543a9be90bd29f961fb0ab69690b28d2d2d2f797b592fb68d707ab91a7/awsdd-0.2.2-py2-none-any.whl" }, { "comment_text": "", "digests": { "md5": "a34e055cacf4057a5a01f1cab61e632b", "sha256": "b37c51fa2fd43800937effddce8a01a9408733e14415fc2dc06338ef181ccf0d" }, "downloads": -1, "filename": "awsdd-0.2.2.tar.gz", "has_sig": false, "md5_digest": "a34e055cacf4057a5a01f1cab61e632b", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 4611, "upload_time": "2014-06-15T15:37:21", "url": "https://files.pythonhosted.org/packages/65/46/8981c3a5f9ea11ee2f983588cb5796800548747a34eed2f5f4cc846e5682/awsdd-0.2.2.tar.gz" } ], "0.2.3": [ { "comment_text": "", "digests": { "md5": "14c8592e80920afd2b9e4b10b5c786b0", "sha256": "ee512f7fee121137e6ca74c8ac0e38a5222d9763f1a9bad746ba2b0c697c5a6d" }, "downloads": -1, "filename": "awsdd-0.2.3-py2-none-any.whl", "has_sig": false, "md5_digest": "14c8592e80920afd2b9e4b10b5c786b0", "packagetype": "bdist_wheel", "python_version": "2.7", "requires_python": null, "size": 13557, "upload_time": "2014-06-15T16:03:07", "url": "https://files.pythonhosted.org/packages/86/25/76bffe67bd2148ae97870b324e05928209cff753413846340ff4b7de289e/awsdd-0.2.3-py2-none-any.whl" }, { "comment_text": "", "digests": { "md5": "d7aa9d97827e7222669a403052dd9311", "sha256": "a95cec1b7b316f71a66127f6e0bfa781b31299190eda0cbfb7cb475b72912ca5" }, "downloads": -1, "filename": "awsdd-0.2.3.tar.gz", "has_sig": false, "md5_digest": "d7aa9d97827e7222669a403052dd9311", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 4693, "upload_time": "2014-06-15T16:03:04", "url": "https://files.pythonhosted.org/packages/88/6b/64404b02d533f3c8b9094d47f207a563349c6de16e2bccb10c4cc8233e77/awsdd-0.2.3.tar.gz" } ], "0.2.4": [ { "comment_text": "", "digests": { "md5": "f3f6b420197ef8e2a18c04a85f53326a", "sha256": "2ac18b848e6dbce5a3833482b20f8177513ce7d64f12cb802bdd54b9d20e4575" }, "downloads": -1, "filename": "awsdd-0.2.4.tar.gz", "has_sig": false, "md5_digest": "f3f6b420197ef8e2a18c04a85f53326a", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 4495, "upload_time": "2018-10-19T06:02:26", "url": "https://files.pythonhosted.org/packages/44/d4/8598d230aa01a4e9c275e3fc8d038793db60fee873d791aa027e91a2ee24/awsdd-0.2.4.tar.gz" } ], "0.2.5": [ { "comment_text": "", "digests": { "md5": "d213dae5ac98fb5d2e7d0782543ea471", "sha256": "e4e2c4ebb6458ee13a1aa48c208591eb6c4764866456701d425dcbc01c30211a" }, "downloads": -1, "filename": "awsdd-0.2.5.tar.gz", "has_sig": false, "md5_digest": "d213dae5ac98fb5d2e7d0782543ea471", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 4698, "upload_time": "2018-10-19T09:33:38", "url": "https://files.pythonhosted.org/packages/ab/9b/a8e121d7f8a7261aa6c75e1c9259be40814ce739ce32c0557717ce3f9570/awsdd-0.2.5.tar.gz" } ], "0.2.6": [ { "comment_text": "", "digests": { "md5": "344344af22a634a2e45adaca25f4d290", "sha256": "20f1f3b572ca78e7fe03b88bda94206c1e0ae51cc848a0fa1f1d3625c7f2ef4b" }, "downloads": -1, "filename": "awsdd-0.2.6.tar.gz", "has_sig": false, "md5_digest": "344344af22a634a2e45adaca25f4d290", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 4711, "upload_time": "2018-10-19T09:37:01", "url": "https://files.pythonhosted.org/packages/fe/5f/78f24a2c9defaa12a4263c8ce4ab916d2447d2d41dc6ea548eb9a353534e/awsdd-0.2.6.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "344344af22a634a2e45adaca25f4d290", "sha256": "20f1f3b572ca78e7fe03b88bda94206c1e0ae51cc848a0fa1f1d3625c7f2ef4b" }, "downloads": -1, "filename": "awsdd-0.2.6.tar.gz", "has_sig": false, "md5_digest": "344344af22a634a2e45adaca25f4d290", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 4711, "upload_time": "2018-10-19T09:37:01", "url": "https://files.pythonhosted.org/packages/fe/5f/78f24a2c9defaa12a4263c8ce4ab916d2447d2d41dc6ea548eb9a353534e/awsdd-0.2.6.tar.gz" } ] }