{ "info": { "author": "Cloudbase Solutions Srl", "author_email": "info@cloudbasesolutions.com", "bugtrack_url": null, "classifiers": [ "Environment :: Console", "Intended Audience :: Information Technology", "Intended Audience :: System Administrators", "License :: OSI Approved :: Apache Software License", "Operating System :: POSIX :: Linux", "Programming Language :: Python", "Programming Language :: Python :: 2", "Programming Language :: Python :: 2.7", "Programming Language :: Python :: 3", "Programming Language :: Python :: 3.4" ], "description": "Python bindings to the Coriolis migration API\n=============================================\n\n* License: Apache License, Version 2.0\n* `PyPi`_ - package installation\n\n.. _PyPi: https://pypi.python.org/pypi/python-coriolisclient\n\nCommand-line API\n----------------\n\nThe Coriolis Command-line API offers an interface over the REST API provided by\nthe Coriolis migration service.\n\nCoriolis uses Keystone for identity management. Credentials and endpoints can\nbe provided via environment variables or command line parameters in the same\nway supported by most OpenStack command line interface (CLI) tools, e.g.::\n\n export OS_AUTH_URL=http://example.com:5000/v2.0\n export OS_USERNAME=admin\n export OS_PASSWORD=blahblah\n export OS_TENANT_NAME=admin\n\nSecrets\n-------\n\nIn order to migrate virtual workloads, Coriolis requires access to external\nenvironments, e.g. VMware vSphere, AWS, Azure, etc.\n\nConnection details including credentials can be stored in Barbican,\nOpenStack's project for secure storage and secrets management::\n\n VMWARE_CONN_INFO='{\"host\": \"example.com\", \"port\": 443, \"username\":\n \"user@example.com\", \"password\": \"blahblah\", \"allow_untrusted\": true}'\n\n barbican secret store --payload \"$VMWARE_CONN_INFO\" \\\n --payload-content-type \"text/plain\"\n\nThe returned ``Secret href`` is the id of the secret to be referenced in order\nto access its content.\n\n\nProviders\n---------\n\nA ``provider`` is a registered extension that supports a given cloud or\nvirtual environment, like OpenStack, Azure, AWS, VMware vSphere, etc.\n\nThere are two types of providers: origin and destination. For example, when\nmigrating a VM from VMware vSphere to OpenStack, ``wmware_vsphere`` is the\norigin and ``openstack`` the destination.\n\nTarget environment\n------------------\n\nA target environment defines a set of provider specific parameters that can\noverride default options set by the Coriolis work processes. For example in the\ncase of the OpenStack's provider, the following JSON formatted values allow to\nspecify a custom mapping between origin and Neutron networks, along with a\nspecific Nova flavor for the migrated instance and a custom worker image name::\n\n TARGET_ENV='{\"network_map\": {\"VM Network Local\": \"public\", \"VM Network\":\n \"private\"}, \"flavor_name\": \"m1.small\", \"migr_image_name\": \"Nano\"}'\n\n\nStarting a migration\n--------------------\n\nVarious types of virtual workloads can be migrated, including instances,\ntemplates, network configurations and storage.\n\nThe following command migrates a virtual machine named ``VM1`` from VMware\nvSphere to OpenStack::\n\n coriolis migration create --origin-provider vmware_vsphere\n --destination-provider openstack --origin-connection-secret $SECRET_REF\n --instance VM1 --target-environment \"$TARGET_ENV\"\n\nList all migrations\n-------------------\n\nThe following command retrieves a list of all migrations, including their\nstatus::\n\n coriolis migration list\n\nShow migration details\n----------------------\n\nMigrations can be fairly long running tasks. This command is very useful to\nretrieve the current status and all progress updates::\n\n coriolis migration show \n\nCancel a migration\n------------------\n\nA pending or running migration can be canceled anytime::\n\n coriolis migration cancel \n\nDelete a migation\n-----------------\n\nOnly migrations in pending or error state can be deleted. Running migrations\nneed to be first cancelled::\n\n coriolis migration delete \n\n\nPython API\n----------\n\nThe Python interface matches the underlying REST API, it's used by the CLI and\ncan be employed in 3rd party projects::\n\n >>> from coriolisclient import client\n >>> c = client.Client(session=keystone_session)\n >>> c.migrations.list()\n [...]\n >>> c.migrations.get(migration_id)\n [...]", "description_content_type": null, "docs_url": null, "download_url": "UNKNOWN", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "http://cloudbase.it", "keywords": null, "license": "UNKNOWN", "maintainer": null, "maintainer_email": null, "name": "python-coriolisclient", "package_url": "https://pypi.org/project/python-coriolisclient/", "platform": "UNKNOWN", "project_url": "https://pypi.org/project/python-coriolisclient/", "project_urls": { "Download": "UNKNOWN", "Homepage": "http://cloudbase.it" }, "release_url": "https://pypi.org/project/python-coriolisclient/1.0.0.dev1/", "requires_dist": null, "requires_python": null, "summary": "Coriolis Command-line Client", "version": "1.0.0.dev1" }, "last_serial": 2011299, "releases": { "1.0.0.dev1": [ { "comment_text": "", "digests": { "md5": "3a89915c3c0ab841a12a2681b57c3c27", "sha256": "36fbe70dab3fb8e56e6df83a161aee3f1c1fbaa4acc9f5b02f60ce958badd07f" }, "downloads": -1, "filename": "python-coriolisclient-1.0.0.dev1.tar.gz", "has_sig": false, "md5_digest": "3a89915c3c0ab841a12a2681b57c3c27", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 16150, "upload_time": "2016-03-16T23:32:11", "url": "https://files.pythonhosted.org/packages/96/b1/ac08ef3dda9a3c250055eb7a7538a895b1ababcfe979f4e5e833ce3a6475/python-coriolisclient-1.0.0.dev1.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "3a89915c3c0ab841a12a2681b57c3c27", "sha256": "36fbe70dab3fb8e56e6df83a161aee3f1c1fbaa4acc9f5b02f60ce958badd07f" }, "downloads": -1, "filename": "python-coriolisclient-1.0.0.dev1.tar.gz", "has_sig": false, "md5_digest": "3a89915c3c0ab841a12a2681b57c3c27", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 16150, "upload_time": "2016-03-16T23:32:11", "url": "https://files.pythonhosted.org/packages/96/b1/ac08ef3dda9a3c250055eb7a7538a895b1ababcfe979f4e5e833ce3a6475/python-coriolisclient-1.0.0.dev1.tar.gz" } ] }