Merge remote-tracking branch 'upstream/trunk' into trunk
Project: http://git-wip-us.apache.org/repos/asf/libcloud/repo Commit: http://git-wip-us.apache.org/repos/asf/libcloud/commit/9dadf460 Tree: http://git-wip-us.apache.org/repos/asf/libcloud/tree/9dadf460 Diff: http://git-wip-us.apache.org/repos/asf/libcloud/diff/9dadf460 Branch: refs/heads/trunk Commit: 9dadf460d99c7d6832ff8142f68c319006db6a62 Parents: d963e1d 90b263c Author: Juan Font Alonso <juanfontalo...@gmail.com> Authored: Sat Feb 6 20:06:39 2016 +0100 Committer: Juan Font Alonso <juanfontalo...@gmail.com> Committed: Sat Feb 6 20:06:39 2016 +0100 ---------------------------------------------------------------------- .ratignore | 2 + .travis.yml | 50 +- CHANGES.rst | 208 +++- README.rst | 2 + .../generate_provider_feature_matrix_table.py | 63 +- contrib/scrape-ec2-prices.py | 2 + doap_libcloud.rdf | 14 + .../_static/images/provider_logos/backblaze.png | Bin 0 -> 6864 bytes docs/_static/images/provider_logos/bsnl.png | Bin 0 -> 63094 bytes .../images/provider_logos/cloudflare.png | Bin 0 -> 19863 bytes docs/_static/images/provider_logos/docker.png | Bin 0 -> 6607 bytes docs/_static/images/provider_logos/indosat.png | Bin 0 -> 16388 bytes .../images/provider_logos/internetsolutions.png | Bin 0 -> 13746 bytes .../images/provider_logos/kubernetes.png | Bin 0 -> 6357 bytes docs/_static/images/provider_logos/med-one.png | Bin 0 -> 9880 bytes docs/_static/images/provider_logos/ntta.png | Bin 0 -> 7497 bytes docs/_static/images/provider_logos/triton.png | Bin 0 -> 14866 bytes docs/_static/images/supported_providers.png | Bin 110558 -> 102086 bytes docs/backup/_supported_methods.rst | 13 + docs/backup/_supported_providers.rst | 13 + docs/backup/api.rst | 22 + docs/backup/drivers/dimensiondata.rst | 66 ++ docs/backup/drivers/index.rst | 12 + docs/backup/examples.rst | 16 + docs/backup/index.rst | 40 + docs/backup/supported_providers.rst | 14 + .../_supported_methods_block_storage.rst | 26 +- .../_supported_methods_image_management.rst | 26 +- .../_supported_methods_key_pair_management.rst | 26 +- docs/compute/_supported_methods_main.rst | 26 +- docs/compute/_supported_providers.rst | 164 ++-- docs/compute/drivers/auroracompute.rst | 2 +- docs/compute/drivers/bsnl.rst | 69 ++ docs/compute/drivers/cloudstack.rst | 6 +- docs/compute/drivers/dimensiondata.rst | 5 +- docs/compute/drivers/indosat.rst | 72 ++ docs/compute/drivers/internetsolutions.rst | 69 ++ docs/compute/drivers/medone.rst | 74 ++ docs/compute/drivers/ntta.rst | 77 ++ docs/compute/drivers/onapp.rst | 2 +- docs/compute/drivers/openstack.rst | 2 +- docs/compute/drivers/packet.rst | 2 +- docs/conf.py | 42 +- docs/container/_supported_methods.rst | 15 + docs/container/_supported_providers.rst | 15 + docs/container/api.rst | 19 + docs/container/drivers/docker.rst | 26 + docs/container/drivers/ecs.rst | 58 ++ docs/container/drivers/index.rst | 12 + docs/container/drivers/joyent.rst | 64 ++ docs/container/drivers/kubernetes.rst | 47 + docs/container/examples.rst | 33 + docs/container/index.rst | 83 ++ docs/container/supported_providers.rst | 14 + docs/container/utilities.rst | 7 + docs/development.rst | 5 +- docs/dns/_supported_methods.rst | 2 + docs/dns/_supported_providers.rst | 2 + docs/dns/drivers/auroradns.rst | 19 + docs/dns/drivers/cloudflare.rst | 30 + docs/dns/drivers/digital_ocean.rst | 2 +- docs/dns/drivers/dnsimple.rst | 6 +- docs/dns/drivers/durabledns.rst | 4 +- docs/dns/drivers/godaddy.rst | 8 +- docs/dns/drivers/liquidweb.rst | 4 +- docs/dns/drivers/pointdns.rst | 4 +- docs/dns/drivers/vultr.rst | 4 +- docs/dns/drivers/worldwidedns.rst | 4 +- docs/dns/drivers/zonomi.rst | 4 +- docs/examples/backup/create_backup_from_node.py | 41 + .../examples/compute/bsnl/instantiate_driver.py | 9 + .../compute/indosat/instantiate_driver.py | 9 + .../internetsolutions/instantiate_driver.py | 9 + .../compute/medone/instantiate_driver.py | 9 + .../examples/compute/ntta/instantiate_driver.py | 9 + .../container/docker/deploy_container.py | 10 + .../container/docker/instantiate_driver.py | 9 + docs/examples/container/docker_hub.py | 20 + .../container/ecs/container_registry.py | 30 + docs/examples/container/ecs/deploy_container.py | 24 + .../container/ecs/instantiate_driver.py | 14 + docs/examples/container/install_and_deploy.py | 12 + .../container/joyent/instantiate_driver.py | 9 + .../examples/container/kubernetes/docker_hub.py | 20 + .../container/kubernetes/instantiate_driver.py | 14 + .../examples/container/working_with_clusters.py | 24 + .../dns/auroradns/enable_disable_record.py | 2 +- docs/examples/dns/auroradns/health_checks.py | 21 + .../dns/cloudflare/instantiate_driver.py | 5 + .../examples/http_proxy/constructor_argument.py | 8 + .../storage/backblaze_b2/instantiate.py | 8 + docs/index.rst | 4 + docs/loadbalancer/drivers/dimensiondata.rst | 2 +- docs/loadbalancer/drivers/elb.rst | 14 +- docs/loadbalancer/drivers/gce.rst | 6 +- docs/loadbalancer/drivers/index.rst | 4 +- docs/other/ssl-certificate-validation.rst | 52 + docs/other/using-http-proxy.rst | 6 +- docs/storage/_supported_methods_cdn.rst | 6 + docs/storage/_supported_methods_main.rst | 6 + docs/storage/_supported_providers.rst | 8 +- docs/storage/drivers/auroraobjects.rst | 9 +- docs/storage/drivers/backblaze_b2.rst | 40 + docs/storage/drivers/s3.rst | 2 +- docs/supported_providers.rst | 26 + docs/upgrade_notes.rst | 13 +- libcloud/__init__.py | 2 +- libcloud/backup/__init__.py | 0 libcloud/backup/base.py | 489 ++++++++++ libcloud/backup/drivers/__init__.py | 0 libcloud/backup/drivers/dimensiondata.py | 650 +++++++++++++ libcloud/backup/drivers/dummy.py | 41 + libcloud/backup/drivers/ebs.py | 422 ++++++++ libcloud/backup/drivers/gce.py | 478 +++++++++ libcloud/backup/providers.py | 37 + libcloud/backup/types.py | 63 ++ libcloud/common/abiquo.py | 2 +- libcloud/common/aws.py | 72 +- libcloud/common/base.py | 42 +- libcloud/common/dimensiondata.py | 456 ++++++++- libcloud/common/exceptions.py | 2 +- libcloud/common/google.py | 195 ++-- libcloud/common/onapp.py | 5 +- libcloud/common/openstack.py | 38 +- libcloud/common/openstack_identity.py | 14 +- libcloud/compute/base.py | 6 +- libcloud/compute/deployment.py | 2 +- libcloud/compute/deprecated.py | 50 + libcloud/compute/drivers/abiquo.py | 4 +- libcloud/compute/drivers/azure.py | 36 +- libcloud/compute/drivers/bsnl.py | 56 ++ libcloud/compute/drivers/ciscoccs.py | 56 ++ libcloud/compute/drivers/cloudframes.py | 435 --------- libcloud/compute/drivers/cloudsigma.py | 8 +- libcloud/compute/drivers/cloudstack.py | 17 +- libcloud/compute/drivers/digitalocean.py | 4 +- libcloud/compute/drivers/dimensiondata.py | 347 +++++-- libcloud/compute/drivers/ec2.py | 85 +- libcloud/compute/drivers/ecp.py | 4 +- libcloud/compute/drivers/gce.py | 109 ++- libcloud/compute/drivers/hostvirtual.py | 9 +- libcloud/compute/drivers/hpcloud.py | 99 -- libcloud/compute/drivers/ibm_sce.py | 753 -------------- libcloud/compute/drivers/indosat.py | 56 ++ libcloud/compute/drivers/internetsolutions.py | 56 ++ libcloud/compute/drivers/linode.py | 24 +- libcloud/compute/drivers/medone.py | 56 ++ libcloud/compute/drivers/nephoscale.py | 14 +- libcloud/compute/drivers/ninefold.py | 29 - libcloud/compute/drivers/ntta.py | 56 ++ libcloud/compute/drivers/openstack.py | 2 + libcloud/compute/drivers/opsource.py | 620 ------------ libcloud/compute/drivers/profitbricks.py | 4 +- libcloud/compute/drivers/runabove.py | 4 +- libcloud/compute/drivers/vcloud.py | 104 +- libcloud/compute/drivers/vsphere.py | 2 +- libcloud/compute/providers.py | 34 +- libcloud/compute/ssh.py | 57 +- libcloud/compute/types.py | 106 +- libcloud/container/__init__.py | 0 libcloud/container/base.py | 416 ++++++++ libcloud/container/drivers/__init__.py | 0 libcloud/container/drivers/docker.py | 656 +++++++++++++ libcloud/container/drivers/dummy.py | 46 + libcloud/container/drivers/ecs.py | 627 ++++++++++++ libcloud/container/drivers/joyent.py | 73 ++ libcloud/container/drivers/kubernetes.py | 405 ++++++++ libcloud/container/providers.py | 39 + libcloud/container/types.py | 76 ++ libcloud/container/utils/__init__.py | 0 libcloud/container/utils/docker.py | 177 ++++ libcloud/data/pricing.json | 323 +++--- libcloud/dns/drivers/auroradns.py | 387 +++++++- libcloud/dns/drivers/cloudflare.py | 2 +- libcloud/dns/drivers/pointdns.py | 2 +- libcloud/dns/drivers/rackspace.py | 5 +- libcloud/dns/types.py | 2 - libcloud/httplib_ssl.py | 68 +- libcloud/loadbalancer/base.py | 2 +- libcloud/loadbalancer/drivers/dimensiondata.py | 10 +- libcloud/storage/base.py | 4 +- libcloud/storage/drivers/backblaze_b2.py | 462 +++++++++ libcloud/storage/drivers/google_storage.py | 55 +- libcloud/storage/drivers/s3.py | 40 +- libcloud/storage/providers.py | 8 +- libcloud/storage/types.py | 3 + libcloud/test/__init__.py | 5 +- libcloud/test/backup/__init__.py | 36 + ...745_4d8a_9cbc_8dabe5a7d0e4_server_server.xml | 49 + ...2f_4314_8725_c8a4f4d13a87_backup_DISABLE.xml | 7 + ...92f_4314_8725_c8a4f4d13a87_backup_ENABLE.xml | 18 + ...92f_4314_8725_c8a4f4d13a87_backup_EXISTS.xml | 7 + ..._692f_4314_8725_c8a4f4d13a87_backup_INFO.xml | 16 + ...4_8725_c8a4f4d13a87_backup_INFO_DISABLED.xml | 7 + ...4_8725_c8a4f4d13a87_backup_INFO_NOCLIENT.xml | 2 + ...4314_8725_c8a4f4d13a87_backup_INFO_NOJOB.xml | 11 + ...c_b39d_3b72be0384c8_remove_backup_client.xml | 7 + ...d_3b72be0384c8_remove_backup_client_BUSY.xml | 7 + ...5_c8a4f4d13a87_backup_client_SUCCESS_PUT.xml | 13 + ...8a4f4d13a87_backup_client_schedulePolicy.xml | 5 + ...c8a4f4d13a87_backup_client_storagePolicy.xml | 6 + ...314_8725_c8a4f4d13a87_backup_client_type.xml | 6 + ...92f_4314_8725_c8a4f4d13a87_backup_modify.xml | 7 + .../dimensiondata/oec_0_9_myaccount.xml | 26 + libcloud/test/backup/test_base.py | 29 + libcloud/test/backup/test_dimensiondata.py | 368 +++++++ libcloud/test/common/test_aws.py | 53 +- libcloud/test/common/test_base.py | 44 + libcloud/test/common/test_google.py | 135 +-- libcloud/test/common/test_retry_limit.py | 15 + .../fixtures/cloudframes/_cloudspace_find.xml | 18 - .../compute/fixtures/cloudframes/_lan_find.xml | 18 - .../cloudframes/_machine_createFromTemplate.xml | 17 - .../fixtures/cloudframes/_machine_delete.xml | 17 - .../cloudframes/_machine_find_physical.xml | 18 - .../cloudframes/_machine_find_templates.xml | 18 - .../_machine_find_virtualdesktop.xml | 17 - .../cloudframes/_machine_find_virtualserver.xml | 24 - .../cloudframes/_machine_listSnapshots.xml | 82 -- ...uid_01dedf71-0c37-441e-9687-085f8bb116ea.xml | 104 -- ...uid_0c4da918-9f88-4049-a09c-8ab69142736a.xml | 105 -- ...uid_1dd57d0d-0e23-471d-9f34-b673c7c18bc3.xml | 104 -- ...uid_2aea45ee-3ea5-4b4f-88f0-7d4d48bed643.xml | 104 -- ...uid_64f325ef-28ac-4907-bd37-572a13178edd.xml | 104 -- ...uid_96b2af78-88a0-48a6-a5bd-258e1d00c0b9.xml | 104 -- ...uid_9a6b3101-b4ac-4ecb-b114-67d89994ac9b.xml | 104 -- ...uid_c52e4a42-72fe-4f34-bb80-c57d237fcbf9.xml | 103 -- ...uid_d3c98151-f064-45fc-a90a-23c481723895.xml | 104 -- ...uid_dea11e50-1b53-4046-8589-cf52eb7b0d25.xml | 104 -- .../fixtures/cloudframes/_machine_reboot.xml | 17 - .../fixtures/cloudframes/_machine_rollback.xml | 17 - .../fixtures/cloudframes/_machine_snapshot.xml | 17 - .../fixtures/cloudframes/_machine_start.xml | 17 - .../fixtures/cloudframes/_machine_stop.xml | 17 - ...abe5a7d0e4_infrastructure_datacenter_NA9.xml | 54 + ...bc_8dabe5a7d0e4_network_addPublicIpBlock.xml | 12 +- ...4d8a_9cbc_8dabe5a7d0e4_server_server_NA3.xml | 50 + ...cbc_8dabe5a7d0e4_server_server_paginated.xml | 50 + .../projects_coreos-cloud_global_images.json | 1 + .../fixtures/ibm_sce/allocate_address.xml | 1 - .../compute/fixtures/ibm_sce/attach_volume.xml | 1 - .../test/compute/fixtures/ibm_sce/create.xml | 1 - .../compute/fixtures/ibm_sce/create_volume.xml | 1 - .../test/compute/fixtures/ibm_sce/delete.xml | 1 - .../compute/fixtures/ibm_sce/delete_address.xml | 1 - .../compute/fixtures/ibm_sce/destroy_image.xml | 1 - .../compute/fixtures/ibm_sce/destroy_volume.xml | 1 - .../compute/fixtures/ibm_sce/detach_volume.xml | 1 - .../test/compute/fixtures/ibm_sce/images.xml | 2 - .../test/compute/fixtures/ibm_sce/instances.xml | 1 - .../fixtures/ibm_sce/instances_deleted.xml | 1 - .../compute/fixtures/ibm_sce/list_addresses.xml | 1 - .../fixtures/ibm_sce/list_storage_offerings.xml | 1 - .../compute/fixtures/ibm_sce/list_volumes.xml | 1 - .../test/compute/fixtures/ibm_sce/locations.xml | 1 - .../compute/fixtures/ibm_sce/reboot_active.xml | 1 - .../test/compute/fixtures/ibm_sce/sizes.xml | 1 - ...f6abc_2745_4d8a_9cbc_8dabe5a7d0e4_server.xml | 6 - ...c_2745_4d8a_9cbc_8dabe5a7d0e4_datacenter.xml | 12 - ...8a_9cbc_8dabe5a7d0e4_networkWithLocation.xml | 11 - ..._4d8a_9cbc_8dabe5a7d0e4_server_11_delete.xml | 7 - ...8dabe5a7d0e4_server_11_delete_INPROGRESS.xml | 7 - ...d8a_9cbc_8dabe5a7d0e4_server_11_poweroff.xml | 7 - ...abe5a7d0e4_server_11_poweroff_INPROGRESS.xml | 7 - ...4d8a_9cbc_8dabe5a7d0e4_server_11_restart.xml | 6 - ...dabe5a7d0e4_server_11_restart_INPROGRESS.xml | 7 - ...d8a_9cbc_8dabe5a7d0e4_server_11_shutdown.xml | 6 - ...abe5a7d0e4_server_11_shutdown_INPROGRESS.xml | 7 - ...5_4d8a_9cbc_8dabe5a7d0e4_server_11_start.xml | 7 - ..._8dabe5a7d0e4_server_11_start_INPROGRESS.xml | 7 - ...5_4d8a_9cbc_8dabe5a7d0e4_server_deployed.xml | 46 - ...a_9cbc_8dabe5a7d0e4_server_pendingDeploy.xml | 26 - .../fixtures/opsource/oec_0_9_base_image.xml | 339 ------- .../fixtures/opsource/oec_0_9_myaccount.xml | 26 - ...ask_2518935e_b315_4d8e_9e99_9275f751877c.xml | 32 + ...ask_fab4b26f_4f2e_4d49_ad01_ae9324bbfe48.xml | 32 + ...ask_fe75d3af_f5a3_44a5_b016_ae0bdadfc32b.xml | 32 + ...b_48ca_8a78_3b70ee65ef6b_create_snapshot.xml | 32 + ..._48ca_8a78_3b70ee65ef6b_remove_snapshots.xml | 32 + ...b_48ca_8a78_3b70ee65ef6b_revert_snapshot.xml | 32 + libcloud/test/compute/test_azure.py | 2 +- libcloud/test/compute/test_cloudframes.py | 292 ------ libcloud/test/compute/test_digitalocean_v1.py | 4 + libcloud/test/compute/test_digitalocean_v2.py | 7 + libcloud/test/compute/test_dimensiondata.py | 242 ++++- libcloud/test/compute/test_ec2.py | 28 +- libcloud/test/compute/test_elasticstack.py | 10 - libcloud/test/compute/test_gce.py | 1 + libcloud/test/compute/test_ibm_sce.py | 325 ------- libcloud/test/compute/test_openstack.py | 3 + libcloud/test/compute/test_opsource.py | 251 ----- libcloud/test/compute/test_profitbricks.py | 10 +- libcloud/test/compute/test_ssh_client.py | 85 +- libcloud/test/compute/test_types.py | 70 ++ libcloud/test/compute/test_vcloud.py | 69 ++ libcloud/test/container/__init__.py | 30 + .../fixtures/docker/container_a68.json | 163 ++++ .../container/fixtures/docker/containers.json | 143 +++ .../fixtures/docker/create_container.json | 4 + .../container/fixtures/docker/create_image.json | 1 + .../test/container/fixtures/docker/images.json | 50 + .../test/container/fixtures/docker/logs.txt | 1 + .../test/container/fixtures/docker/search.json | 202 ++++ .../test/container/fixtures/docker/version.json | 10 + .../v2_repositories_library_ubuntu.json | 15 + .../v2_repositories_library_ubuntu_tags.json | 975 +++++++++++++++++++ ...repositories_library_ubuntu_tags_latest.json | 11 + .../container/fixtures/ecs/createcluster.json | 11 + .../container/fixtures/ecs/createservice.json | 30 + .../container/fixtures/ecs/deletecluster.json | 11 + .../container/fixtures/ecs/deleteservice.json | 30 + .../fixtures/ecs/describeclusters.json | 14 + .../fixtures/ecs/describerepositories.json | 8 + .../fixtures/ecs/describeservices.json | 33 + .../container/fixtures/ecs/describetasks.json | 35 + .../fixtures/ecs/getauthorizationtoken.json | 9 + .../container/fixtures/ecs/listclusters.json | 1 + .../test/container/fixtures/ecs/listimages.json | 7 + .../container/fixtures/ecs/listservices.json | 6 + .../test/container/fixtures/ecs/listtasks.json | 8 + .../fixtures/ecs/registertaskdefinition.json | 21 + .../test/container/fixtures/ecs/runtask.json | 26 + .../test/container/fixtures/ecs/stoptask.json | 42 + .../fixtures/kubernetes/_api_v1_namespaces.json | 44 + .../kubernetes/_api_v1_namespaces_default.json | 19 + .../_api_v1_namespaces_default_DELETE.json | 20 + .../_api_v1_namespaces_default_pods_POST.json | 47 + .../kubernetes/_api_v1_namespaces_test.json | 19 + .../fixtures/kubernetes/_api_v1_nodes.json | 81 ++ .../kubernetes/_api_v1_nodes_127_0_0_1.json | 73 ++ .../fixtures/kubernetes/_api_v1_pods.json | 94 ++ libcloud/test/container/test_base.py | 29 + libcloud/test/container/test_docker.py | 212 ++++ libcloud/test/container/test_docker_utils.py | 78 ++ libcloud/test/container/test_ecs.py | 206 ++++ libcloud/test/container/test_kubernetes.py | 150 +++ .../dns/fixtures/auroradns/zone_create.json | 11 + .../fixtures/auroradns/zone_example_com.json | 11 + .../zone_example_com_health_check.json | 14 + .../zone_example_com_health_checks.json | 44 + .../zone_example_com_record_localhost.json | 12 + .../auroradns/zone_example_com_records.json | 38 + .../test/dns/fixtures/auroradns/zone_list.json | 24 + libcloud/test/dns/fixtures/cloudflare/nul.json | 10 - libcloud/test/dns/fixtures/cloudflare/nul_.json | 10 + libcloud/test/dns/test_auroradns.py | 280 ++++++ libcloud/test/dns/test_cloudflare.py | 3 +- libcloud/test/file_fixtures.py | 19 +- .../test/loadbalancer/test_dimensiondata.py | 13 +- libcloud/test/secrets.py-dist | 6 + .../fixtures/backblaze_b2/b2_create_bucket.json | 6 + .../fixtures/backblaze_b2/b2_delete_bucket.json | 6 + .../backblaze_b2/b2_delete_file_version.json | 4 + .../backblaze_b2/b2_get_upload_url.json | 5 + .../fixtures/backblaze_b2/b2_hide_file.json | 7 + .../fixtures/backblaze_b2/b2_list_buckets.json | 22 + .../backblaze_b2/b2_list_file_names.json | 34 + .../backblaze_b2/b2_list_file_versions.json | 69 ++ .../fixtures/backblaze_b2/b2_upload_file.json | 10 + libcloud/test/storage/test_backblaze_b2.py | 213 ++++ libcloud/test/storage/test_google_storage.py | 130 +-- libcloud/test/test_httplib_ssl.py | 37 + libcloud/utils/files.py | 2 +- libcloud/utils/misc.py | 96 +- libcloud/utils/networking.py | 2 +- requirements-tests.txt | 4 +- setup.py | 9 +- tox.ini | 17 +- 368 files changed, 15248 insertions(+), 5865 deletions(-) ----------------------------------------------------------------------