{ "info": { "author": "Strahinja Piperac", "author_email": "spiperac@denkei.org", "bugtrack_url": null, "classifiers": [], "description": "VirtAPI [![Build Status](https://travis-ci.org/spiperac/virtapi.svg?branch=master)](https://travis-ci.org/spiperac/virtapi)\n-----\n\n\nVirtAPI is awrapper and CLI tool(vatool) for automation of KVM/Libvirt machines.\nIt can be used to create/delete/{start,stop,restart}/clone/migrate virtual machines(domains) on local/remote KVM servers.\n* It's also working in nested envinroments, you can try it by creating VM inside digitalocean droplet for example.\"\n\nInstalation\n-----\n\nYou will need few more dependencies before installing actual virtapi package.\nI'll give an example for Ubuntu here:\n\n sudo apt install libvirt-bin libvirt-dev openssl libssl-dev -y\n\nAfter dependencies are satistfied, you can then install package from this reposutiry by running:\n\n sudo python setup.py install\n\nOr by installing it directly from PyPI ( for stable versions go with this):\n\n sudo pip install virtapi\n\n\nFeatures & TODO\n-----\n\nFutures:\n- Connect to the KVM local or remote host ( get host data/info/metrics)\n- Create new domain(virtual machine) from predefined templates in QCOW2 format or image, and based on selected plan size.\n- Delete domain and all of it resources ( disks attached etc...)\n- Clone/Migrate existing domain and it specifications.\n- Add/Delete templates for domain(VM) creation.\n- Add/Delete Plans for domain(vm), think of them as a digitalocean, aws plans. For example small plan is: 512MB for ram, 1 VCPU, and 15GB hdd drive space.\n- Manage additional disks and drives. You can \"hot plug\" them too.\n\nYou can use it as a CLI tool (vatool binary), but also you can plug it in your application as an API.\nAfter installing it as a package you will have vatool binary in your path.\n\nTODO:\n- Add more options for managing KVM/Libvirt Host.\n- Add ansible for provision of the hosts.\n- Better error handling.\n- Better logging.\n- In the future cover few more cloud APIs.\n\n\nDemo\n-----\n[![asciicast](https://asciinema.org/a/bBVzd6jvwVKTj8efqg6v83VEq.png)](https://asciinema.org/a/bBVzd6jvwVKTj8efqg6v83VEq)\n\n\nDevelopment\n-----\n\nThere are always things to be fixed or added, or simply forgoten things. So any suggestions/pull requests/issues are welcome, since i'm developing this\nin my free time.\n\nRequirements for development are in requirements.txt file inside package.\n\n\nContact\n-----\n\nYou can find me on twitter @0xbadarg\nor you can hit me an email at spiperac@denkei.org\n", "description_content_type": "", "docs_url": null, "download_url": "", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "http://github.com/spiperac/virtapi", "keywords": "", "license": "BSD", "maintainer": "", "maintainer_email": "", "name": "virtapi", "package_url": "https://pypi.org/project/virtapi/", "platform": "", "project_url": "https://pypi.org/project/virtapi/", "project_urls": { "Homepage": "http://github.com/spiperac/virtapi" }, "release_url": "https://pypi.org/project/virtapi/1.3.4/", "requires_dist": null, "requires_python": "", "summary": "VirtAPI is powerful libvirt/kvm wrapper with plugable API and bonus CLI tool out of the box.", "version": "1.3.4" }, "last_serial": 3830454, "releases": { "1.1.1": [ { "comment_text": "", "digests": { "md5": "bb61bb16f3e04aad52436bf80fafec67", "sha256": "1ac3306753d118eac01162d5ba6c833a94f09d14e7f75c28536b9dff9d0cc09f" }, "downloads": -1, "filename": "virtapi-1.1.1-py2-none-any.whl", "has_sig": false, "md5_digest": "bb61bb16f3e04aad52436bf80fafec67", "packagetype": "bdist_wheel", "python_version": "py2", "requires_python": null, "size": 27626, "upload_time": "2017-11-27T15:35:53", "url": "https://files.pythonhosted.org/packages/8a/33/9c96e820d298f17ae968bf603aef8285bdc9f7335710b5450bb341aaaf04/virtapi-1.1.1-py2-none-any.whl" }, { "comment_text": "", "digests": { "md5": "7c005f5aacc1281611698fd38e43013d", "sha256": "5609bc89cd6569cd719073219cad90bc2afbe1af00f4e09f8fc3dd590c6efeaa" }, "downloads": -1, "filename": "virtapi-1.1.1.tar.gz", "has_sig": false, "md5_digest": "7c005f5aacc1281611698fd38e43013d", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 19699, "upload_time": "2018-05-03T10:32:01", "url": "https://files.pythonhosted.org/packages/b7/ad/e8ff72e6f22b776f9530767fa1c5503a62ce03ad47ee5c583e85066ef7a5/virtapi-1.1.1.tar.gz" } ], "1.3.0": [ { "comment_text": "", "digests": { "md5": "fe3c42c75769e11c212c5a89e6de6127", "sha256": "27a6a91eba30926a25cf9289d215482d28a5323dc14bead42e59e553b7926da7" }, "downloads": -1, "filename": "virtapi-1.3.0.tar.gz", "has_sig": false, "md5_digest": "fe3c42c75769e11c212c5a89e6de6127", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 19669, "upload_time": "2018-05-03T10:33:29", "url": "https://files.pythonhosted.org/packages/ba/3f/fee103f8e616598eda5131e4afa0df87e14fbc57f6bc141098d8e7a16043/virtapi-1.3.0.tar.gz" } ], "1.3.4": [ { "comment_text": "", "digests": { "md5": "091f0846d0e2eede575b53823ff37a01", "sha256": "1c9abbf20fc0edc22d0de952d1cb1cd30536bb79c443090a832d8888a91f2829" }, "downloads": -1, "filename": "virtapi-1.3.4.tar.gz", "has_sig": false, "md5_digest": "091f0846d0e2eede575b53823ff37a01", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 22026, "upload_time": "2018-05-03T10:41:22", "url": "https://files.pythonhosted.org/packages/36/5b/d9eba05dbd6b5b85b1b5abc6d415040889d59c3e9d46d2d9f7bd7d5b0fdb/virtapi-1.3.4.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "091f0846d0e2eede575b53823ff37a01", "sha256": "1c9abbf20fc0edc22d0de952d1cb1cd30536bb79c443090a832d8888a91f2829" }, "downloads": -1, "filename": "virtapi-1.3.4.tar.gz", "has_sig": false, "md5_digest": "091f0846d0e2eede575b53823ff37a01", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 22026, "upload_time": "2018-05-03T10:41:22", "url": "https://files.pythonhosted.org/packages/36/5b/d9eba05dbd6b5b85b1b5abc6d415040889d59c3e9d46d2d9f7bd7d5b0fdb/virtapi-1.3.4.tar.gz" } ] }