{ "info": { "author": "Shekhar Tiwatne", "author_email": "pythonic@gmail.com", "bugtrack_url": null, "classifiers": [ "Programming Language :: Python", "Programming Language :: Python :: 3" ], "description": "Python wrapper for Digital Ocean `API\nV2 `__.\n\n|Latest Version|\n\n|Number of PyPI downloads|\n\n|Travis Build|\n\nInstallation\n------------\n\n.. code:: bash\n\n pip install dosa\n\nUsage\n-----\n\n.. code:: python\n\n import dosa\n\n API_KEY = 'Your API Key'\n dosa.set_debug() # enables debug logs\n\n client = dosa.Client(api_key=API_KEY)\n\n # Droplets\n client.droplets.list()\n status, result = client.droplets.create(name='terminator', region='nyc2',\\\n size='512mb', image='ubuntu-14-04-x32', ssh_keys=[12345])\n new_droplet_id = result['id']\n\n # Droplet\n new_droplet = client.Droplet(new_droplet_id)\n print(new_droplet.info())\n ## shortcuts\n new_droplet.status()\n new_droplet.ip_addresses()\n client.droplets.delete(new_droplet_id)\n\n # SSH Keys\n pub_key = open('~/.ssh/id_rsa.pub').read()\n client.keys.create(name='RSA key', public_key=pub_key)\n client.keys.list()\n\n # Images\n client.images.list()\n client.images.all()\n client.images.search('ubuntu', 'sgp1', show_op=True)\n\n # Domains\n client.domains.list()\n client.domains.all()\n client.domains.create(name='example.com', ip_address='1.2.3.4')\n client.domains.delete(id='example.com')\n\n ### Get specific domain\n domain = client.Domain(domain='example.com')\n domain.info()\n\n # Domain Records\n dr = client.DomainRecords(domain='example.com')\n dr.list()\n dr.create(type='A', name='example.com', data='162.10.66.0')\n\n ### Get specific domain record for a domain\n record = dr.Record(record_id='7976006')\n record.info()\n record.update(name='new.example.com')\n\n # Firewalls\n ## Create a firewall\n params = {\n 'inbound_rules': [{'ports': '22',\n 'protocol': 'tcp',\n 'sources': {'addresses': ['0.0.0.0/0', '::/0']}},\n {'ports': '80',\n 'protocol': 'tcp',\n 'sources': {'addresses': ['0.0.0.0/0', '::/0']}}],\n 'name': 'firewall',\n 'outbound_rules': [{'destinations': {'addresses': ['0.0.0.0/0', '::/0']},\n 'ports': 'all',\n 'protocol': 'tcp'}],\n 'tags': []}\n firewall = client.firewalls.create(**params)\n\n # search firewall by name\n firewall = client.firewalls.get_by_name('firewall')\n\n ## add a droplet to a firewall\n firewall.add_droplet(new_droplet_id)\n\n ## remove a droplet from a firewall\n firewall.remove_droplet(new_droplet_id)\n\n ## delete a firewall\n client.firewalls.delete(id=firewall.id)\n\n # Extras\n # $ ls keys/\n # rsa_pub1.id rsa_pub2.key rsa_pub3.key\n keys_dir = 'keys'\n client.sync_ssh_keys(keys_dir)\n\nNotes\n------\n\nImage search::\n\n >>> client.images.search('ubuntu', region='sgp1', show_op=True)\n\nAbove code snippets searches for images containing `ubuntu` in description or slug. Since region is specified (sgp1), only images in sgp1 region would be considered. If no region is specified all regions are included.\n\n\n\nCredits\n-------\n\nCreated while working on `Scroll.in `__'s project.\n\nDosa?\n-----\n\n|\"Paper Masala Dosa\" by SteveR- -\nhttp://www.flickr.com/photos/git/3936135033/. Licensed under Creative\nCommons Attribution 2.0 via Wikimedia Commons|\n\n.. |Latest Version| image:: https://badge.fury.io/py/dosa.svg\n :target: http://badge.fury.io/py/dosa\n.. |Number of PyPI downloads| image:: https://pypip.in/d/dosa/badge.png\n :target: https://crate.io/packages/dosa/\n.. |\"Paper Masala Dosa\" by SteveR- - http://www.flickr.com/photos/git/3936135033/. Licensed under Creative Commons Attribution 2.0 via Wikimedia Commons| image:: http://upload.wikimedia.org/wikipedia/commons/thumb/3/34/Paper_Masala_Dosa.jpg/640px-Paper_Masala_Dosa.jpg\n :target: http://commons.wikimedia.org/wiki/File:Paper_Masala_Dosa.jpg#mediaviewer/File:Paper_Masala_Dosa.jpg\n.. |Travis Build| image:: https://img.shields.io/travis/shon/dosa.svg\n :target: https://travis-ci.org/shon/dosa\n\n\n", "description_content_type": "", "docs_url": null, "download_url": "", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "https://github.com/shon/dosa/", "keywords": "", "license": "http://www.opensource.org/licenses/mit-license.php", "maintainer": "", "maintainer_email": "", "name": "dosa", "package_url": "https://pypi.org/project/dosa/", "platform": "", "project_url": "https://pypi.org/project/dosa/", "project_urls": { "Homepage": "https://github.com/shon/dosa/" }, "release_url": "https://pypi.org/project/dosa/0.10/", "requires_dist": [ "requests" ], "requires_python": "", "summary": "Python wrapper for Digital Ocean API V2", "version": "0.10" }, "last_serial": 5110278, "releases": { "0.1": [ { "comment_text": "", "digests": { "md5": "bdc0ffb30182af50fac932332df7199c", "sha256": "4792d8819a40419b0d72382f390a421d053c5cc7b38a81026f63fbf3dbf1ef06" }, "downloads": -1, "filename": "dosa-0.1.tar.gz", "has_sig": false, "md5_digest": "bdc0ffb30182af50fac932332df7199c", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 2155, "upload_time": "2014-07-04T13:24:36", "url": "https://files.pythonhosted.org/packages/8b/30/d710d6bec1ec1d4d93cd2cd67d227181697dc423b601e8bbcaba6831c815/dosa-0.1.tar.gz" } ], "0.10": [ { "comment_text": "", "digests": { "md5": "cbe747b412f22b3aae58eadd85e614cd", "sha256": "61493fd9360b291e8d4a40d6fa0159cb88e7fe6788a136daa3a3444dfef405f2" }, "downloads": -1, "filename": "dosa-0.10-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "cbe747b412f22b3aae58eadd85e614cd", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 14545, "upload_time": "2019-04-07T15:16:17", "url": "https://files.pythonhosted.org/packages/44/3d/0828ae9f7aac01fd7150e41c5af61a2330735c87c4fa7ba47759cd2bc9d0/dosa-0.10-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "81b458ecccf722e3442e6a69d72bc4de", "sha256": "d3535884264465ea8d4f648f849be5099d20483603d7bffc9c76015a37a4330f" }, "downloads": -1, "filename": "dosa-0.10.tar.gz", "has_sig": false, "md5_digest": "81b458ecccf722e3442e6a69d72bc4de", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 8978, "upload_time": "2019-04-07T15:16:19", "url": "https://files.pythonhosted.org/packages/ee/6f/64d74df1add54815ec5bff58de90a5d67c86a1e28471bf638d4273a793ba/dosa-0.10.tar.gz" } ], "0.2": [ { "comment_text": "", "digests": { "md5": "edf60482e3eb1461e3a23c4b2fa3a5e2", "sha256": "737eb74b71287a8e9343b53817ab5a6d765e14939249f503606873fa2f36c996" }, "downloads": -1, "filename": "dosa-0.2.tar.gz", "has_sig": false, "md5_digest": "edf60482e3eb1461e3a23c4b2fa3a5e2", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 2456, "upload_time": "2014-07-21T11:57:05", "url": "https://files.pythonhosted.org/packages/76/7d/cf12e94e39f68771df4c1c2619c9549441b3bfb691a1cf513114e8d72c35/dosa-0.2.tar.gz" } ], "0.3": [ { "comment_text": "", "digests": { "md5": "b10bc15970a0fd2bd0418211e683ef85", "sha256": "318b83593a78b1fc37beafae91595f72a71f96ac480a57675ca14f2a904c1c2e" }, "downloads": -1, "filename": "dosa-0.3.tar.gz", "has_sig": false, "md5_digest": "b10bc15970a0fd2bd0418211e683ef85", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 2795, "upload_time": "2014-07-22T17:32:41", "url": "https://files.pythonhosted.org/packages/af/b8/83828839408cc2f958e01db1de8e469602658c7ebc5798836d294329ec4f/dosa-0.3.tar.gz" } ], "0.4": [ { "comment_text": "", "digests": { "md5": "dab83e0427226e9121a85ad163f829c3", "sha256": "11151112e023563a1eab4ebb5adecace925e72d8fbc93bf4b99a65e657eafc40" }, "downloads": -1, "filename": "dosa-0.4.tar.gz", "has_sig": false, "md5_digest": "dab83e0427226e9121a85ad163f829c3", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 3586, "upload_time": "2014-07-23T11:54:13", "url": "https://files.pythonhosted.org/packages/be/44/f5df3869a251c07529d87b4653b69e1310e0a4093d9c65399feaa90e94ef/dosa-0.4.tar.gz" } ], "0.4.1": [ { "comment_text": "", "digests": { "md5": "ab72db0ad53f0386726bcaa735943f51", "sha256": "225a0abc50dcca95e975920939cc43fc5120c5d7e255207cc1723953d2c143f4" }, "downloads": -1, "filename": "dosa-0.4.1.tar.gz", "has_sig": false, "md5_digest": "ab72db0ad53f0386726bcaa735943f51", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 3642, "upload_time": "2014-07-28T11:14:17", "url": "https://files.pythonhosted.org/packages/7a/a7/633674beb9f1a06fc31bd32239b4e3633d50b0f6a696d597ea089bb1fae6/dosa-0.4.1.tar.gz" } ], "0.5": [ { "comment_text": "", "digests": { "md5": "05dc508e397446beccbc4abd3c88aa3b", "sha256": "297cc1fffaa818f200acfc1a5a498cd0c1d72e6825d150e2b7232983f347a133" }, "downloads": -1, "filename": "dosa-0.5.tar.gz", "has_sig": false, "md5_digest": "05dc508e397446beccbc4abd3c88aa3b", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 3848, "upload_time": "2014-11-04T11:29:19", "url": "https://files.pythonhosted.org/packages/21/97/5fd3221d48a025c4d622496f42d223b29627ef1b589d5345f723fcb8d084/dosa-0.5.tar.gz" } ], "0.6": [ { "comment_text": "", "digests": { "md5": "bc195ed95a4602f9874ab0ad0b0dc3c3", "sha256": "9655d22f9fee33178787722db9c269848fb873418689ca1719a72727d51cea1d" }, "downloads": -1, "filename": "dosa-0.6.tar.gz", "has_sig": false, "md5_digest": "bc195ed95a4602f9874ab0ad0b0dc3c3", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 4058, "upload_time": "2014-12-04T11:20:16", "url": "https://files.pythonhosted.org/packages/81/5b/f4de9746b80e8d7cb5763ab5d2997014f8382c3ebbd2b1d48d945d27284c/dosa-0.6.tar.gz" } ], "0.6.1": [ { "comment_text": "", "digests": { "md5": "45095cd4133e622557a003b8a30e382f", "sha256": "2b33599ccf9e1c9047c0e5da68f56770452295edfd64f1f8cdff2f37dda5bfaf" }, "downloads": -1, "filename": "dosa-0.6.1.tar.gz", "has_sig": false, "md5_digest": "45095cd4133e622557a003b8a30e382f", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 4055, "upload_time": "2014-12-04T12:03:28", "url": "https://files.pythonhosted.org/packages/81/db/885bc186c1dfdfb9f65d80a678c47e43073e597356a614e2d095294f6d08/dosa-0.6.1.tar.gz" } ], "0.6.2": [ { "comment_text": "", "digests": { "md5": "3c9cc4278d0bbf7cfb7053d0b36b34d0", "sha256": "ec4731651ea654bf25e20d99fda45869fda8d97ea9bfad9f4cc3f1d81b099cfa" }, "downloads": -1, "filename": "dosa-0.6.2.tar.gz", "has_sig": false, "md5_digest": "3c9cc4278d0bbf7cfb7053d0b36b34d0", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 4140, "upload_time": "2015-04-29T09:06:41", "url": "https://files.pythonhosted.org/packages/24/5d/e5ef0c980d467fd047c7e542833b65cb1eee0e40bd19a50301385fb42367/dosa-0.6.2.tar.gz" } ], "0.7": [ { "comment_text": "", "digests": { "md5": "7a87b5b5fa347eee36aa6c9f4400314b", "sha256": "1783305820fc3f0ed87ff5510be63e3c86130c5295e7d6f8b82ca89aec00d887" }, "downloads": -1, "filename": "dosa-0.7.tar.gz", "has_sig": false, "md5_digest": "7a87b5b5fa347eee36aa6c9f4400314b", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 4549, "upload_time": "2015-07-26T18:26:22", "url": "https://files.pythonhosted.org/packages/27/e3/9bc40a1e69075ae84e24dc66e58a1f11f3a5644ffdbc3c51bfa6625a2a65/dosa-0.7.tar.gz" } ], "0.8": [ { "comment_text": "", "digests": { "md5": "3fec8fc394c5006e675b846cffb367b0", "sha256": "c2162307c7bb66cb4167890d67668b7dd19c1b860e13cdd30b6398f855182131" }, "downloads": -1, "filename": "dosa-0.8.tar.gz", "has_sig": false, "md5_digest": "3fec8fc394c5006e675b846cffb367b0", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 4966, "upload_time": "2015-08-05T13:12:02", "url": "https://files.pythonhosted.org/packages/2a/93/44834c013d91368d18ae56d6f6203fa31e2a65eda6878e162df822e8a39a/dosa-0.8.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "cbe747b412f22b3aae58eadd85e614cd", "sha256": "61493fd9360b291e8d4a40d6fa0159cb88e7fe6788a136daa3a3444dfef405f2" }, "downloads": -1, "filename": "dosa-0.10-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "cbe747b412f22b3aae58eadd85e614cd", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 14545, "upload_time": "2019-04-07T15:16:17", "url": "https://files.pythonhosted.org/packages/44/3d/0828ae9f7aac01fd7150e41c5af61a2330735c87c4fa7ba47759cd2bc9d0/dosa-0.10-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "81b458ecccf722e3442e6a69d72bc4de", "sha256": "d3535884264465ea8d4f648f849be5099d20483603d7bffc9c76015a37a4330f" }, "downloads": -1, "filename": "dosa-0.10.tar.gz", "has_sig": false, "md5_digest": "81b458ecccf722e3442e6a69d72bc4de", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 8978, "upload_time": "2019-04-07T15:16:19", "url": "https://files.pythonhosted.org/packages/ee/6f/64d74df1add54815ec5bff58de90a5d67c86a1e28471bf638d4273a793ba/dosa-0.10.tar.gz" } ] }