[Python-modules-commits] [libcloud] 01/04: Imported Upstream version 1.4.0
Hans-Christoph Steiner
eighthave at moszumanska.debian.org
Mon Dec 19 20:06:58 UTC 2016
This is an automated email from the git hooks/post-receive script.
eighthave pushed a commit to branch master
in repository libcloud.
commit e6a617451879ae35bee55aa4e5cff841dd14df77
Author: Hans-Christoph Steiner <hans at eds.org>
Date: Mon Dec 19 20:53:43 2016 +0100
Imported Upstream version 1.4.0
---
.pylintrc | 2 +-
CHANGES.rst | 108 +-
PKG-INFO | 2 +-
README.rst | 2 +-
apache_libcloud.egg-info/PKG-INFO | 2 +-
apache_libcloud.egg-info/SOURCES.txt | 139 +-
demos/gce_demo.py | 237 +-
libcloud/__init__.py | 2 +-
libcloud/common/azure.py | 2 +
libcloud/common/azure_arm.py | 124 +
libcloud/common/base.py | 19 +-
libcloud/common/cloudsigma.py | 5 +
libcloud/common/dimensiondata.py | 5 +-
libcloud/common/google.py | 4 +-
libcloud/compute/drivers/azure_arm.py | 1281 +++++
libcloud/compute/drivers/digitalocean.py | 66 +-
libcloud/compute/drivers/dimensiondata.py | 606 ++-
libcloud/compute/drivers/ec2.py | 2 +-
libcloud/compute/drivers/ecs.py | 24 +-
libcloud/compute/drivers/gce.py | 1967 ++++++-
libcloud/compute/drivers/openstack.py | 3 +
libcloud/compute/drivers/ovh.py | 148 +-
libcloud/compute/drivers/profitbricks.py | 4101 ++++++++++++---
libcloud/compute/drivers/vultr.py | 113 +-
libcloud/compute/providers.py | 2 +
libcloud/compute/types.py | 5 +-
libcloud/container/drivers/docker.py | 28 +-
libcloud/container/drivers/rancher.py | 49 +-
libcloud/loadbalancer/drivers/alb.py | 321 ++
libcloud/loadbalancer/providers.py | 2 +
libcloud/loadbalancer/types.py | 1 +
libcloud/storage/drivers/google_storage.py | 18 +
libcloud/storage/drivers/s3.py | 12 +
libcloud/storage/providers.py | 2 +
libcloud/storage/types.py | 2 +
libcloud/test/common/test_google.py | 13 +-
...7_7777_7777_7777_777777777777_oauth2_token.json | 1 +
...9_999999999999_providers_Microsoft_Compute.json | 200 +
...Microsoft_Compute_locations_eastus_vmSizes.json | 28 +
.../fixtures/digitalocean/ex_change_kernel.json | 12 +
.../fixtures/digitalocean/ex_hard_reboot.json | 12 +
.../digitalocean_v2/create_volume_snapshot.json | 14 +
.../fixtures/digitalocean_v2/ex_change_kernel.json | 12 +
.../fixtures/digitalocean_v2/ex_hard_reboot.json | 12 +
.../digitalocean_v2/list_volume_snapshots.json | 44 +
.../compute/fixtures/dimensiondata/audit_log.csv | 25 +
.../fixtures/dimensiondata/server_GetServer.xml | 39 +
.../test/compute/fixtures/ecs/create_public_ip.xml | 6 +
.../gce/aggregated_instanceGroupManagers.json | 8 +-
.../gce/global_backendServices_web_service.json | 4 +-
.../fixtures/gce/global_instanceTemplates.json | 10 +-
.../gce/global_instanceTemplates_insert.json | 12 +
.../fixtures/gce/global_sslcertificates.json | 16 +
.../gce/global_sslcertificates_example.json | 10 +
.../fixtures/gce/global_sslcertificates_post.json | 13 +
..._operation_global_instanceTemplates_insert.json | 12 +
...ions_operation_global_sslcertificates_post.json | 13 +
..._zones_us_central1_a_instanceGroups_insert.json | 13 +
...tral1_a_instanceGroups_myname_addInstances.json | 13 +
...us_central1_a_instanceGroups_myname_delete.json | 13 +
...l1_a_instanceGroups_myname_removeInstances.json | 13 +
...ral1_a_instanceGroups_myname_setNamedPorts.json | 13 +
...s_us-east1_subnetworks_cf_972cf02e6ad49113.json | 11 +
.../zones_us-central1-a_instanceGroupManagers.json | 4 +-
...l1-a_instanceGroupManagers_myinstancegroup.json | 4 +-
...s-central1-a_instanceGroup_myinstancegroup.json | 4 +-
...-central1-a_instanceGroup_myinstancegroup2.json | 14 +
...l1-b_instanceGroupManagers_myinstancegroup.json | 4 +-
...s-central1-b_instanceGroup_myinstancegroup.json | 2 +-
.../zones_us-east1-b_instanceGroupManagers.json | 4 +-
...s_us-east1-b_instanceGroup_myinstancegroup.json | 4 +-
.../gce/zones_us_central1_a_instanceGroups.json | 29 +
.../zones_us_central1_a_instanceGroups_insert.json | 13 +
.../zones_us_central1_a_instanceGroups_myname.json | 12 +
...tral1_a_instanceGroups_myname_addInstances.json | 13 +
...us_central1_a_instanceGroups_myname_delete.json | 13 +
...ral1_a_instanceGroups_myname_listInstances.json | 15 +
...l1_a_instanceGroups_myname_removeInstances.json | 13 +
...ral1_a_instanceGroups_myname_setNamedPorts.json | 13 +
.../compute/fixtures/ovh/volume_snapshot_get.json | 22 +
.../fixtures/ovh/volume_snapshot_get_details.json | 10 +
.../fixtures/profitbricks/attach_volume.json | 34 +
.../fixtures/profitbricks/attach_volume.xml | 12 -
.../compute/fixtures/profitbricks/create_node.json | 37 +
.../compute/fixtures/profitbricks/create_node.xml | 13 -
.../fixtures/profitbricks/create_volume.json | 35 +
.../fixtures/profitbricks/create_volume.xml | 13 -
.../profitbricks/create_volume_snapshot.json | 30 +
.../compute/fixtures/profitbricks/destroy_node.xml | 12 -
.../fixtures/profitbricks/destroy_volume.xml | 12 -
.../fixtures/profitbricks/detach_volume.xml | 12 -
.../fixtures/profitbricks/ex_clear_datacenter.xml | 12 -
.../profitbricks/ex_create_datacenter.json | 20 +
.../fixtures/profitbricks/ex_create_datacenter.xml | 13 -
.../profitbricks/ex_create_firewall_rule.json | 24 +
.../fixtures/profitbricks/ex_create_ip_block.json | 22 +
.../fixtures/profitbricks/ex_create_lan.json | 17 +
.../profitbricks/ex_create_load_balancer.json | 18 +
.../profitbricks/ex_create_network_interface.json | 22 +
.../profitbricks/ex_create_network_interface.xml | 13 -
.../profitbricks/ex_describe_datacenter.json | 401 ++
.../profitbricks/ex_describe_datacenter.xml | 15 -
.../profitbricks/ex_describe_firewall_rule.json | 24 +
.../fixtures/profitbricks/ex_describe_image.json | 32 +
.../profitbricks/ex_describe_ip_block.json | 21 +
.../fixtures/profitbricks/ex_describe_lan.json | 24 +
.../profitbricks/ex_describe_load_balancer.json | 25 +
.../profitbricks/ex_describe_location.json | 12 +
.../ex_describe_network_interface.json | 31 +
.../profitbricks/ex_describe_network_interface.xml | 26 -
.../fixtures/profitbricks/ex_describe_node.json | 111 +
.../fixtures/profitbricks/ex_describe_node.xml | 77 -
.../profitbricks/ex_describe_snapshot.json | 30 +
.../fixtures/profitbricks/ex_describe_volume.json | 35 +
.../fixtures/profitbricks/ex_describe_volume.xml | 22 -
.../profitbricks/ex_destroy_datacenter.xml | 10 -
.../profitbricks/ex_destroy_network_interface.xml | 12 -
.../profitbricks/ex_list_attached_volumes.json | 112 +
.../fixtures/profitbricks/ex_list_datacenters.json | 52 +
.../fixtures/profitbricks/ex_list_datacenters.xml | 19 -
.../profitbricks/ex_list_firewall_rules.json | 79 +
.../fixtures/profitbricks/ex_list_ip_blocks.json | 50 +
.../fixtures/profitbricks/ex_list_lans.json | 157 +
.../profitbricks/ex_list_load_balanced_nics.json | 69 +
.../profitbricks/ex_list_load_balancers.json | 216 +
.../profitbricks/ex_list_network_interfaces.json | 69 +
.../profitbricks/ex_list_network_interfaces.xml | 75 -
.../profitbricks/ex_rename_datacenter.json | 46 +
.../fixtures/profitbricks/ex_set_inet_access.json | 31 +
.../fixtures/profitbricks/ex_start_node.xml | 10 -
.../compute/fixtures/profitbricks/ex_stop_node.xml | 10 -
.../fixtures/profitbricks/ex_update_datacenter.xml | 12 -
.../profitbricks/ex_update_firewall_rule.json | 25 +
.../fixtures/profitbricks/ex_update_image.json | 32 +
.../fixtures/profitbricks/ex_update_lan.json | 24 +
.../profitbricks/ex_update_load_balancer.json | 18 +
.../profitbricks/ex_update_network_interface.json | 31 +
.../profitbricks/ex_update_network_interface.xml | 12 -
.../fixtures/profitbricks/ex_update_node.json | 45 +
.../fixtures/profitbricks/ex_update_node.xml | 12 -
.../fixtures/profitbricks/ex_update_snapshot.json | 30 +
.../fixtures/profitbricks/ex_update_volume.json | 35 +
.../fixtures/profitbricks/ex_update_volume.xml | 12 -
.../compute/fixtures/profitbricks/list_images.json | 199 +
.../compute/fixtures/profitbricks/list_images.xml | 43 -
.../fixtures/profitbricks/list_locations.json | 43 +
.../compute/fixtures/profitbricks/list_nodes.json | 169 +
.../compute/fixtures/profitbricks/list_nodes.xml | 172 -
.../fixtures/profitbricks/list_snapshots.json | 37 +
.../fixtures/profitbricks/list_volumes.json | 112 +
.../compute/fixtures/profitbricks/list_volumes.xml | 66 -
.../compute/fixtures/profitbricks/reboot_node.xml | 10 -
.../compute/fixtures/vultr/create_key_pair.json | 3 +
.../test/compute/fixtures/vultr/create_node.json | 3 +
.../compute/fixtures/vultr/list_key_pairs.json | 8 +
libcloud/test/compute/test_azure_arm.py | 69 +
libcloud/test/compute/test_digitalocean_v2.py | 63 +
libcloud/test/compute/test_dimensiondata.py | 336 +-
libcloud/test/compute/test_ecs.py | 12 +-
libcloud/test/compute/test_gce.py | 404 +-
libcloud/test/compute/test_openstack.py | 8 +
libcloud/test/compute/test_ovh.py | 38 +
libcloud/test/compute/test_profitbricks.py | 5377 ++++++++++++++++++--
libcloud/test/compute/test_vultr.py | 40 +
.../fixtures/docker/linux_121/create_image.json | 1 -
.../{linux_121 => linux_124}/container_a68.json | 0
.../{linux_121 => linux_124}/containers.json | 0
.../{linux_121 => linux_124}/create_container.json | 0
.../fixtures/docker/linux_124/create_image.txt | 238 +
.../docker/{linux_121 => linux_124}/images.json | 0
.../docker/{linux_121 => linux_124}/logs.txt | 0
.../docker/{linux_121 => linux_124}/search.json | 0
.../docker/{linux_121 => linux_124}/version.json | 0
.../fixtures/docker/mac_124/create_image.json | 1 -
.../fixtures/docker/mac_124/create_image.txt | 238 +
.../fixtures/rancher/start_container.json | 109 +
libcloud/test/container/test_docker.py | 52 +-
libcloud/test/container/test_rancher.py | 23 +-
.../alb/describe_load_balancer_listeters.xml | 27 +
.../fixtures/alb/describe_load_balancer_rules.xml | 21 +
.../alb/describe_load_balancer_target_groups.xml | 29 +
.../fixtures/alb/describe_load_balancers.xml | 31 +
.../loadbalancer/fixtures/alb/describe_tags.xml | 18 +
.../fixtures/alb/describe_target_health.xml | 19 +
libcloud/test/loadbalancer/test_alb.py | 159 +
libcloud/test/secrets.py-dist | 1 +
186 files changed, 18521 insertions(+), 2411 deletions(-)
diff --git a/.pylintrc b/.pylintrc
index 56d02c2..14d137f 100644
--- a/.pylintrc
+++ b/.pylintrc
@@ -24,7 +24,7 @@ generated-members=async_request,objects
[VARIABLES]
-# Tells wether we should check for unused import in __init__ files.
+# Tells whether we should check for unused import in __init__ files.
init-import=no
# A regular expression matching names used for dummy variables (i.e. not used).
diff --git a/CHANGES.rst b/CHANGES.rst
index 4a56a4b..8917d83 100644
--- a/CHANGES.rst
+++ b/CHANGES.rst
@@ -1,8 +1,110 @@
Changelog
=========
-Changes in current version of Apache Libcloud
----------------------------------------------
+
+Changes in Apache Libcloud 1.4.0
+--------------------------------
+
+Compute
+~~~~~~~
+
+- Introduce new Azure ARM driver
+ [Peter Amstulz]
+
+- [ec2] Fix the bug that created the node at ecs driver and implement the method for creating public ip
+ (GITHUB-943)
+ [watermelo]
+
+- [profitbricks] changes to the ProfitBricks compute driver to drop support for the old SOAP api (now end of life) and provide support for v3 of the REST api.
+ (GITHUB-938)
+ [Matt Finucane]
+
+- [cloudsigma] Added Warsaw (waw) region
+ (GITHUB-942)
+ [Kamil Chmielewski]
+
+- [google compute] List images fix for projects > 500 images.
+ (GITHUB-939)
+ [Scott Crunkleton]
+
+- [ec2] Add st1 and sc1 volume types to valid types
+ (GITHUB-925)
+ [Sean Goller]
+
+- [digital ocean] add ex_change_kernel in DigitalOcean_v2 driver
+ (GITHUB-922)
+ [Rick van de Loo]
+
+- [digital ocean] add ex_hard_reboot in DigitalOcean_v2 driver
+ (GITHUB-920)
+ [Rick van de Loo]
+
+- [openstack] add ex_start_node for the openstack driver
+ (GITHUB-919)
+ [Rick van de Loo]
+
+- [vultr] Extra Attributes for Node Creation on Vultr
+ (GITHUB-917)
+ [Fahri Cihan Demirci]
+
+- [vultr] Implement SSH Key Create/Delete Methods for Vultr
+ (GITHUB-914)
+ [Fahri Cihan Demirci]
+
+- [dimension data] No longer throw error when powering off a node that is already stopped.
+ (GITHUB-912)
+ [Samuel Chong]
+
+- [dimension data] Refactor create_node for MCP2 to support CaaS API 2.3 feature.
+ Can now specify Network Adapter Name for primary and additional NIC. Parameters in create_node function is tailored for MCP2.
+ (GITHUB-902)
+ [Samuel Chong]
+
+- Volume snapshot operations, i.e. creating, listing and deleting volume snapshots, for the Digital Ocean driver.
+ (LIBCLOUD-861, GITHUB-909)
+ [Fahri Cihan Demirci]
+
+- Added snapshot management to OVH compute
+ (GITHUB-897)
+ [Anthony Monthe]
+
+- [GCE] Support for HTTP(S) proxies with BackendServices
+ (GITHUB-856
+ [Tom Melendez]
+
+Container
+~~~~~~~~~
+
+- [docker] As reported in the corresponding bug, the docker daemon will respond in an install_image call with all the messages
+ produced during the procedure parsed as json docs. In that case the response headers also contain the value 'transfer-encoding':'chunked'.
+ That kind of response can now be parsed properly by the DockerResponse parse_body method. Also, another small change is that previously
+ the id of the new image was marked in the json document as id, but now it's marked as sha256, so the regex used to discover the id
+ has been updated.
+ (GITHUB-918)
+ [Pavlos Tzianos]
+
+Load Balancing
+~~~~~~~~~~~~~~
+
+- Introduce AWS Application Load Balancer (ALB) driver
+ (LIBCLOUD-869, GITHUB-936)
+ [Anton Kozyrev]
+
+Storage
+~~~~~~~
+
+- [s3] Add AP-Southeast2 as region
+
+- [google] Prevent GCE auth to hide S3 auth
+ (GITHUB-921)
+ [Quentin Pradet]
+
+- [GCS] Fixed some google_storage.py URL cleaning
+ (GITHUB-901)
+ [Scott Crunkleton]
+
+Changes in Apache Libcloud 1.3.0
+--------------------------------
General
~~~~~~~
@@ -75,7 +177,7 @@ Compute
Container
~~~~~~~~~
-- Introduced new Racher driver
+- Introduced new Rancher driver
(GITHUB-876)
[Mario Loria]
diff --git a/PKG-INFO b/PKG-INFO
index bc11727..28d0d02 100644
--- a/PKG-INFO
+++ b/PKG-INFO
@@ -1,6 +1,6 @@
Metadata-Version: 1.1
Name: apache-libcloud
-Version: 1.3.0
+Version: 1.4.0
Summary: A standard Python library that abstracts away differences among multiple cloud provider APIs. For more information and documentation, please see http://libcloud.apache.org
Home-page: http://libcloud.apache.org/
Author: Apache Software Foundation
diff --git a/README.rst b/README.rst
index 2415052..6595d45 100644
--- a/README.rst
+++ b/README.rst
@@ -1,4 +1,4 @@
-Apache Libcloud - a unified interface into the cloud
+Apache Libcloud - a unified interface for the cloud
====================================================
.. image:: https://img.shields.io/badge/docs-latest-brightgreen.svg?style=flat
diff --git a/apache_libcloud.egg-info/PKG-INFO b/apache_libcloud.egg-info/PKG-INFO
index bc11727..28d0d02 100644
--- a/apache_libcloud.egg-info/PKG-INFO
+++ b/apache_libcloud.egg-info/PKG-INFO
@@ -1,6 +1,6 @@
Metadata-Version: 1.1
Name: apache-libcloud
-Version: 1.3.0
+Version: 1.4.0
Summary: A standard Python library that abstracts away differences among multiple cloud provider APIs. For more information and documentation, please see http://libcloud.apache.org
Home-page: http://libcloud.apache.org/
Author: Apache Software Foundation
diff --git a/apache_libcloud.egg-info/SOURCES.txt b/apache_libcloud.egg-info/SOURCES.txt
index d7e69d2..ec49ab4 100644
--- a/apache_libcloud.egg-info/SOURCES.txt
+++ b/apache_libcloud.egg-info/SOURCES.txt
@@ -43,6 +43,7 @@ libcloud/common/abiquo.py
libcloud/common/aliyun.py
libcloud/common/aws.py
libcloud/common/azure.py
+libcloud/common/azure_arm.py
libcloud/common/base.py
libcloud/common/brightbox.py
libcloud/common/buddyns.py
@@ -87,6 +88,7 @@ libcloud/compute/drivers/__init__.py
libcloud/compute/drivers/abiquo.py
libcloud/compute/drivers/auroracompute.py
libcloud/compute/drivers/azure.py
+libcloud/compute/drivers/azure_arm.py
libcloud/compute/drivers/bluebox.py
libcloud/compute/drivers/brightbox.py
libcloud/compute/drivers/bsnl.py
@@ -185,6 +187,7 @@ libcloud/loadbalancer/base.py
libcloud/loadbalancer/providers.py
libcloud/loadbalancer/types.py
libcloud/loadbalancer/drivers/__init__.py
+libcloud/loadbalancer/drivers/alb.py
libcloud/loadbalancer/drivers/brightbox.py
libcloud/loadbalancer/drivers/cloudstack.py
libcloud/loadbalancer/drivers/dimensiondata.py
@@ -278,6 +281,7 @@ libcloud/test/compute/__init__.py
libcloud/test/compute/test_abiquo.py
libcloud/test/compute/test_auroracompute.py
libcloud/test/compute/test_azure.py
+libcloud/test/compute/test_azure_arm.py
libcloud/test/compute/test_base.py
libcloud/test/compute/test_bluebox.py
libcloud/test/compute/test_brightbox.py
@@ -378,6 +382,9 @@ libcloud/test/compute/fixtures/azure/_3761b98b_673d_526c_8d55_fee918758e6e_servi
libcloud/test/compute/fixtures/azure/_3761b98b_673d_526c_8d55_fee918758e6e_services_storageservices_dss123.xml
libcloud/test/compute/fixtures/azure/_3761b98b_673d_526c_8d55_fee918758e6e_services_vmimages.xml
libcloud/test/compute/fixtures/azure/libcloud.pem
+libcloud/test/compute/fixtures/azure_arm/_77777777_7777_7777_7777_777777777777_oauth2_token.json
+libcloud/test/compute/fixtures/azure_arm/_subscriptions_99999999_9999_9999_9999_999999999999_providers_Microsoft_Compute.json
+libcloud/test/compute/fixtures/azure_arm/_subscriptions_99999999_9999_9999_9999_999999999999_providers_Microsoft_Compute_locations_eastus_vmSizes.json
libcloud/test/compute/fixtures/bluebox/api_block_products_json.json
libcloud/test/compute/fixtures/bluebox/api_block_templates_json.json
libcloud/test/compute/fixtures/bluebox/api_blocks_99df878c_6e5c_4945_a635_d94da9fd3146_json.json
@@ -606,6 +613,8 @@ libcloud/test/compute/fixtures/cloudstack/updateVMAffinityGroup_default.json
libcloud/test/compute/fixtures/digitalocean/create_image.json
libcloud/test/compute/fixtures/digitalocean/create_key_pair.json
libcloud/test/compute/fixtures/digitalocean/error.json
+libcloud/test/compute/fixtures/digitalocean/ex_change_kernel.json
+libcloud/test/compute/fixtures/digitalocean/ex_hard_reboot.json
libcloud/test/compute/fixtures/digitalocean/ex_power_on_node.json
libcloud/test/compute/fixtures/digitalocean/ex_shutdown_node.json
libcloud/test/compute/fixtures/digitalocean/get_image.json
@@ -616,9 +625,12 @@ libcloud/test/compute/fixtures/digitalocean_v2/create_image.json
libcloud/test/compute/fixtures/digitalocean_v2/create_key_pair.json
libcloud/test/compute/fixtures/digitalocean_v2/create_node.json
libcloud/test/compute/fixtures/digitalocean_v2/create_volume.json
+libcloud/test/compute/fixtures/digitalocean_v2/create_volume_snapshot.json
libcloud/test/compute/fixtures/digitalocean_v2/detach_volume.json
libcloud/test/compute/fixtures/digitalocean_v2/error.json
libcloud/test/compute/fixtures/digitalocean_v2/error_invalid_image.json
+libcloud/test/compute/fixtures/digitalocean_v2/ex_change_kernel.json
+libcloud/test/compute/fixtures/digitalocean_v2/ex_hard_reboot.json
libcloud/test/compute/fixtures/digitalocean_v2/ex_power_on_node.json
libcloud/test/compute/fixtures/digitalocean_v2/ex_rename_node.json
libcloud/test/compute/fixtures/digitalocean_v2/ex_shutdown_node.json
@@ -630,10 +642,12 @@ libcloud/test/compute/fixtures/digitalocean_v2/list_nodes.json
libcloud/test/compute/fixtures/digitalocean_v2/list_nodes_empty.json
libcloud/test/compute/fixtures/digitalocean_v2/list_nodes_page_1.json
libcloud/test/compute/fixtures/digitalocean_v2/list_sizes.json
+libcloud/test/compute/fixtures/digitalocean_v2/list_volume_snapshots.json
libcloud/test/compute/fixtures/digitalocean_v2/list_volumes.json
libcloud/test/compute/fixtures/digitalocean_v2/list_volumes_empty.json
libcloud/test/compute/fixtures/digitalocean_v2/reboot_node.json
libcloud/test/compute/fixtures/dimensiondata/_oec_0_9_8a8f6abc_2745_4d8a_9cbc_8dabe5a7d0e4_server.xml
+libcloud/test/compute/fixtures/dimensiondata/audit_log.csv
libcloud/test/compute/fixtures/dimensiondata/detailed_usage_report.csv
libcloud/test/compute/fixtures/dimensiondata/image_customerImage.xml
libcloud/test/compute/fixtures/dimensiondata/image_customerImage_2ffa36c8_1848_49eb_b4fa_9d908775f68c.xml
@@ -708,6 +722,7 @@ libcloud/test/compute/fixtures/dimensiondata/port_list_edit.xml
libcloud/test/compute/fixtures/dimensiondata/port_list_get.xml
libcloud/test/compute/fixtures/dimensiondata/port_list_lists.xml
libcloud/test/compute/fixtures/dimensiondata/report_usageMonitoring.xml
+libcloud/test/compute/fixtures/dimensiondata/server_GetServer.xml
libcloud/test/compute/fixtures/dimensiondata/server_addDisk.xml
libcloud/test/compute/fixtures/dimensiondata/server_addNic.xml
libcloud/test/compute/fixtures/dimensiondata/server_antiAffinityRule_list.xml
@@ -843,6 +858,7 @@ libcloud/test/compute/fixtures/ecs/create_disk.xml
libcloud/test/compute/fixtures/ecs/create_image.xml
libcloud/test/compute/fixtures/ecs/create_instance.xml
libcloud/test/compute/fixtures/ecs/create_node_describe_instances.xml
+libcloud/test/compute/fixtures/ecs/create_public_ip.xml
libcloud/test/compute/fixtures/ecs/create_security_group.xml
libcloud/test/compute/fixtures/ecs/create_snapshot.xml
libcloud/test/compute/fixtures/ecs/create_volume_describe_disks.xml
@@ -953,6 +969,7 @@ libcloud/test/compute/fixtures/gce/global_images_debian_7_wheezy_v20131120_delet
libcloud/test/compute/fixtures/gce/global_images_family_notfound.json
libcloud/test/compute/fixtures/gce/global_images_post.json
libcloud/test/compute/fixtures/gce/global_instanceTemplates.json
+libcloud/test/compute/fixtures/gce/global_instanceTemplates_insert.json
libcloud/test/compute/fixtures/gce/global_instanceTemplates_my_instance_template1.json
libcloud/test/compute/fixtures/gce/global_networks.json
libcloud/test/compute/fixtures/gce/global_networks_cf.json
@@ -970,6 +987,9 @@ libcloud/test/compute/fixtures/gce/global_routes_post.json
libcloud/test/compute/fixtures/gce/global_snapshots.json
libcloud/test/compute/fixtures/gce/global_snapshots_lcsnapshot.json
libcloud/test/compute/fixtures/gce/global_snapshots_lcsnapshot_delete.json
+libcloud/test/compute/fixtures/gce/global_sslcertificates.json
+libcloud/test/compute/fixtures/gce/global_sslcertificates_example.json
+libcloud/test/compute/fixtures/gce/global_sslcertificates_post.json
libcloud/test/compute/fixtures/gce/global_targetHttpProxies.json
libcloud/test/compute/fixtures/gce/global_targetHttpProxies_post.json
libcloud/test/compute/fixtures/gce/global_targetHttpProxies_web_proxy.json
@@ -992,11 +1012,13 @@ libcloud/test/compute/fixtures/gce/operations_operation_global_httpHealthChecks_
libcloud/test/compute/fixtures/gce/operations_operation_global_httpHealthChecks_post.json
libcloud/test/compute/fixtures/gce/operations_operation_global_image_post.json
libcloud/test/compute/fixtures/gce/operations_operation_global_images_debian7_delete.json
+libcloud/test/compute/fixtures/gce/operations_operation_global_instanceTemplates_insert.json
libcloud/test/compute/fixtures/gce/operations_operation_global_networks_lcnetwork_delete.json
libcloud/test/compute/fixtures/gce/operations_operation_global_networks_post.json
libcloud/test/compute/fixtures/gce/operations_operation_global_routes_lcdemoroute_delete.json
libcloud/test/compute/fixtures/gce/operations_operation_global_routes_post.json
libcloud/test/compute/fixtures/gce/operations_operation_global_snapshots_lcsnapshot_delete.json
+libcloud/test/compute/fixtures/gce/operations_operation_global_sslcertificates_post.json
libcloud/test/compute/fixtures/gce/operations_operation_global_targetHttpProxies_post.json
libcloud/test/compute/fixtures/gce/operations_operation_global_targetHttpProxies_web_proxy_delete.json
libcloud/test/compute/fixtures/gce/operations_operation_global_urlMaps_post.json
@@ -1033,6 +1055,11 @@ libcloud/test/compute/fixtures/gce/operations_operation_zones_us-central1-a_inst
libcloud/test/compute/fixtures/gce/operations_operation_zones_us-central1-a_instances_post.json
libcloud/test/compute/fixtures/gce/operations_operation_zones_us-central1-a_targetInstances_lctargetinstance_delete.json
libcloud/test/compute/fixtures/gce/operations_operation_zones_us-central1-a_targetInstances_post.json
+libcloud/test/compute/fixtures/gce/operations_operation_zones_us_central1_a_instanceGroups_insert.json
+libcloud/test/compute/fixtures/gce/operations_operation_zones_us_central1_a_instanceGroups_myname_addInstances.json
+libcloud/test/compute/fixtures/gce/operations_operation_zones_us_central1_a_instanceGroups_myname_delete.json
+libcloud/test/compute/fixtures/gce/operations_operation_zones_us_central1_a_instanceGroups_myname_removeInstances.json
+libcloud/test/compute/fixtures/gce/operations_operation_zones_us_central1_a_instanceGroups_myname_setNamedPorts.json
libcloud/test/compute/fixtures/gce/operations_operation_zones_us_central1_a_node_name_setMetadata_post.json
libcloud/test/compute/fixtures/gce/project.json
libcloud/test/compute/fixtures/gce/projects_centos-cloud_global_images.json
@@ -1084,6 +1111,7 @@ libcloud/test/compute/fixtures/gce/regions_us-central1_targetPools_libcloud-lb-d
libcloud/test/compute/fixtures/gce/regions_us-central1_targetPools_post.json
libcloud/test/compute/fixtures/gce/regions_us-central1_targetPools_www-pool.json
libcloud/test/compute/fixtures/gce/regions_us-east1.json
+libcloud/test/compute/fixtures/gce/regions_us-east1_subnetworks_cf_972cf02e6ad49113.json
libcloud/test/compute/fixtures/gce/setCommonInstanceMetadata_post.json
libcloud/test/compute/fixtures/gce/setUsageExportBucket_post.json
libcloud/test/compute/fixtures/gce/zones.json
@@ -1106,6 +1134,7 @@ libcloud/test/compute/fixtures/gce/zones_us-central1-a_instanceGroupManagers.jso
libcloud/test/compute/fixtures/gce/zones_us-central1-a_instanceGroupManagers_insert.json
libcloud/test/compute/fixtures/gce/zones_us-central1-a_instanceGroupManagers_myinstancegroup.json
libcloud/test/compute/fixtures/gce/zones_us-central1-a_instanceGroup_myinstancegroup.json
+libcloud/test/compute/fixtures/gce/zones_us-central1-a_instanceGroup_myinstancegroup2.json
libcloud/test/compute/fixtures/gce/zones_us-central1-a_instances.json
libcloud/test/compute/fixtures/gce/zones_us-central1-a_instances_lcnode-000.json
libcloud/test/compute/fixtures/gce/zones_us-central1-a_instances_lcnode-000_delete.json
@@ -1135,6 +1164,14 @@ libcloud/test/compute/fixtures/gce/zones_us-central1-b_instances_libcloud-lb-dem
libcloud/test/compute/fixtures/gce/zones_us-east1-b.json
libcloud/test/compute/fixtures/gce/zones_us-east1-b_instanceGroupManagers.json
libcloud/test/compute/fixtures/gce/zones_us-east1-b_instanceGroup_myinstancegroup.json
+libcloud/test/compute/fixtures/gce/zones_us_central1_a_instanceGroups.json
+libcloud/test/compute/fixtures/gce/zones_us_central1_a_instanceGroups_insert.json
+libcloud/test/compute/fixtures/gce/zones_us_central1_a_instanceGroups_myname.json
+libcloud/test/compute/fixtures/gce/zones_us_central1_a_instanceGroups_myname_addInstances.json
+libcloud/test/compute/fixtures/gce/zones_us_central1_a_instanceGroups_myname_delete.json
+libcloud/test/compute/fixtures/gce/zones_us_central1_a_instanceGroups_myname_listInstances.json
+libcloud/test/compute/fixtures/gce/zones_us_central1_a_instanceGroups_myname_removeInstances.json
+libcloud/test/compute/fixtures/gce/zones_us_central1_a_instanceGroups_myname_setNamedPorts.json
libcloud/test/compute/fixtures/gce/zones_us_central1_a_instances_custom_node.json
libcloud/test/compute/fixtures/gce/zones_us_central1_a_instances_node_name_setDiskAutoDelete.json
libcloud/test/compute/fixtures/gce/zones_us_central1_a_instances_node_name_setMachineType.json
@@ -1346,6 +1383,8 @@ libcloud/test/compute/fixtures/ovh/ssh_get.json
libcloud/test/compute/fixtures/ovh/ssh_get_detail.json
libcloud/test/compute/fixtures/ovh/volume_get.json
libcloud/test/compute/fixtures/ovh/volume_get_detail.json
+libcloud/test/compute/fixtures/ovh/volume_snapshot_get.json
+libcloud/test/compute/fixtures/ovh/volume_snapshot_get_details.json
libcloud/test/compute/fixtures/packet/device_create.json
libcloud/test/compute/fixtures/packet/devices.json
libcloud/test/compute/fixtures/packet/facilities.json
@@ -1353,33 +1392,50 @@ libcloud/test/compute/fixtures/packet/operatingsystems.json
libcloud/test/compute/fixtures/packet/plans.json
libcloud/test/compute/fixtures/packet/sshkey_create.json
libcloud/test/compute/fixtures/packet/sshkeys.json
-libcloud/test/compute/fixtures/profitbricks/attach_volume.xml
-libcloud/test/compute/fixtures/profitbricks/create_node.xml
-libcloud/test/compute/fixtures/profitbricks/create_volume.xml
-libcloud/test/compute/fixtures/profitbricks/destroy_node.xml
-libcloud/test/compute/fixtures/profitbricks/destroy_volume.xml
-libcloud/test/compute/fixtures/profitbricks/detach_volume.xml
-libcloud/test/compute/fixtures/profitbricks/ex_clear_datacenter.xml
-libcloud/test/compute/fixtures/profitbricks/ex_create_datacenter.xml
-libcloud/test/compute/fixtures/profitbricks/ex_create_network_interface.xml
-libcloud/test/compute/fixtures/profitbricks/ex_describe_datacenter.xml
-libcloud/test/compute/fixtures/profitbricks/ex_describe_network_interface.xml
-libcloud/test/compute/fixtures/profitbricks/ex_describe_node.xml
-libcloud/test/compute/fixtures/profitbricks/ex_describe_volume.xml
-libcloud/test/compute/fixtures/profitbricks/ex_destroy_datacenter.xml
-libcloud/test/compute/fixtures/profitbricks/ex_destroy_network_interface.xml
-libcloud/test/compute/fixtures/profitbricks/ex_list_datacenters.xml
-libcloud/test/compute/fixtures/profitbricks/ex_list_network_interfaces.xml
-libcloud/test/compute/fixtures/profitbricks/ex_start_node.xml
-libcloud/test/compute/fixtures/profitbricks/ex_stop_node.xml
-libcloud/test/compute/fixtures/profitbricks/ex_update_datacenter.xml
-libcloud/test/compute/fixtures/profitbricks/ex_update_network_interface.xml
-libcloud/test/compute/fixtures/profitbricks/ex_update_node.xml
-libcloud/test/compute/fixtures/profitbricks/ex_update_volume.xml
-libcloud/test/compute/fixtures/profitbricks/list_images.xml
-libcloud/test/compute/fixtures/profitbricks/list_nodes.xml
-libcloud/test/compute/fixtures/profitbricks/list_volumes.xml
-libcloud/test/compute/fixtures/profitbricks/reboot_node.xml
+libcloud/test/compute/fixtures/profitbricks/attach_volume.json
+libcloud/test/compute/fixtures/profitbricks/create_node.json
+libcloud/test/compute/fixtures/profitbricks/create_volume.json
+libcloud/test/compute/fixtures/profitbricks/create_volume_snapshot.json
+libcloud/test/compute/fixtures/profitbricks/ex_create_datacenter.json
+libcloud/test/compute/fixtures/profitbricks/ex_create_firewall_rule.json
+libcloud/test/compute/fixtures/profitbricks/ex_create_ip_block.json
+libcloud/test/compute/fixtures/profitbricks/ex_create_lan.json
+libcloud/test/compute/fixtures/profitbricks/ex_create_load_balancer.json
+libcloud/test/compute/fixtures/profitbricks/ex_create_network_interface.json
+libcloud/test/compute/fixtures/profitbricks/ex_describe_datacenter.json
+libcloud/test/compute/fixtures/profitbricks/ex_describe_firewall_rule.json
+libcloud/test/compute/fixtures/profitbricks/ex_describe_image.json
+libcloud/test/compute/fixtures/profitbricks/ex_describe_ip_block.json
+libcloud/test/compute/fixtures/profitbricks/ex_describe_lan.json
+libcloud/test/compute/fixtures/profitbricks/ex_describe_load_balancer.json
+libcloud/test/compute/fixtures/profitbricks/ex_describe_location.json
+libcloud/test/compute/fixtures/profitbricks/ex_describe_network_interface.json
+libcloud/test/compute/fixtures/profitbricks/ex_describe_node.json
+libcloud/test/compute/fixtures/profitbricks/ex_describe_snapshot.json
+libcloud/test/compute/fixtures/profitbricks/ex_describe_volume.json
+libcloud/test/compute/fixtures/profitbricks/ex_list_attached_volumes.json
+libcloud/test/compute/fixtures/profitbricks/ex_list_datacenters.json
+libcloud/test/compute/fixtures/profitbricks/ex_list_firewall_rules.json
+libcloud/test/compute/fixtures/profitbricks/ex_list_ip_blocks.json
+libcloud/test/compute/fixtures/profitbricks/ex_list_lans.json
+libcloud/test/compute/fixtures/profitbricks/ex_list_load_balanced_nics.json
+libcloud/test/compute/fixtures/profitbricks/ex_list_load_balancers.json
+libcloud/test/compute/fixtures/profitbricks/ex_list_network_interfaces.json
+libcloud/test/compute/fixtures/profitbricks/ex_rename_datacenter.json
+libcloud/test/compute/fixtures/profitbricks/ex_set_inet_access.json
+libcloud/test/compute/fixtures/profitbricks/ex_update_firewall_rule.json
+libcloud/test/compute/fixtures/profitbricks/ex_update_image.json
+libcloud/test/compute/fixtures/profitbricks/ex_update_lan.json
+libcloud/test/compute/fixtures/profitbricks/ex_update_load_balancer.json
+libcloud/test/compute/fixtures/profitbricks/ex_update_network_interface.json
+libcloud/test/compute/fixtures/profitbricks/ex_update_node.json
+libcloud/test/compute/fixtures/profitbricks/ex_update_snapshot.json
+libcloud/test/compute/fixtures/profitbricks/ex_update_volume.json
+libcloud/test/compute/fixtures/profitbricks/list_images.json
+libcloud/test/compute/fixtures/profitbricks/list_locations.json
+libcloud/test/compute/fixtures/profitbricks/list_nodes.json
+libcloud/test/compute/fixtures/profitbricks/list_snapshots.json
+libcloud/test/compute/fixtures/profitbricks/list_volumes.json
libcloud/test/compute/fixtures/rimuhosting/r_distributions.json
libcloud/test/compute/fixtures/rimuhosting/r_orders.json
libcloud/test/compute/fixtures/rimuhosting/r_orders_new_vps.json
@@ -1472,7 +1528,10 @@ libcloud/test/compute/fixtures/voxel/nodes.xml
libcloud/test/compute/fixtures/voxel/success.xml
libcloud/test/compute/fixtures/voxel/unauthorized.xml
libcloud/test/compute/fixtures/vpsnet/_available_clouds_api10json_templates.json
+libcloud/test/compute/fixtures/vultr/create_key_pair.json
+libcloud/test/compute/fixtures/vultr/create_node.json
libcloud/test/compute/fixtures/vultr/list_images.json
+libcloud/test/compute/fixtures/vultr/list_key_pairs.json
libcloud/test/compute/fixtures/vultr/list_locations.json
libcloud/test/compute/fixtures/vultr/list_nodes.json
libcloud/test/compute/fixtures/vultr/list_sizes.json
@@ -1483,17 +1542,17 @@ libcloud/test/container/test_docker_utils.py
libcloud/test/container/test_ecs.py
libcloud/test/container/test_kubernetes.py
libcloud/test/container/test_rancher.py
-libcloud/test/container/fixtures/docker/linux_121/container_a68.json
-libcloud/test/container/fixtures/docker/linux_121/containers.json
-libcloud/test/container/fixtures/docker/linux_121/create_container.json
-libcloud/test/container/fixtures/docker/linux_121/create_image.json
-libcloud/test/container/fixtures/docker/linux_121/images.json
-libcloud/test/container/fixtures/docker/linux_121/logs.txt
-libcloud/test/container/fixtures/docker/linux_121/search.json
-libcloud/test/container/fixtures/docker/linux_121/version.json
+libcloud/test/container/fixtures/docker/linux_124/container_a68.json
+libcloud/test/container/fixtures/docker/linux_124/containers.json
+libcloud/test/container/fixtures/docker/linux_124/create_container.json
+libcloud/test/container/fixtures/docker/linux_124/create_image.txt
+libcloud/test/container/fixtures/docker/linux_124/images.json
+libcloud/test/container/fixtures/docker/linux_124/logs.txt
+libcloud/test/container/fixtures/docker/linux_124/search.json
+libcloud/test/container/fixtures/docker/linux_124/version.json
libcloud/test/container/fixtures/docker/mac_124/containers.json
libcloud/test/container/fixtures/docker/mac_124/create_container.json
-libcloud/test/container/fixtures/docker/mac_124/create_image.json
+libcloud/test/container/fixtures/docker/mac_124/create_image.txt
libcloud/test/container/fixtures/docker/mac_124/search.json
libcloud/test/container/fixtures/docker/mac_124/version.json
libcloud/test/container/fixtures/docker_utils/v2_repositories_library_ubuntu.json
@@ -1535,6 +1594,7 @@ libcloud/test/container/fixtures/rancher/ex_list_stacks.json
libcloud/test/container/fixtures/rancher/ex_search_containers.json
libcloud/test/container/fixtures/rancher/ex_search_services.json
libcloud/test/container/fixtures/rancher/list_containers.json
+libcloud/test/container/fixtures/rancher/start_container.json
libcloud/test/container/fixtures/rancher/stop_container.json
libcloud/test/dns/__init__.py
libcloud/test/dns/test_auroradns.py
@@ -1855,6 +1915,7 @@ libcloud/test/dns/fixtures/zonomi/empty_zones_list.xml
libcloud/test/dns/fixtures/zonomi/list_records.xml
libcloud/test/dns/fixtures/zonomi/list_zones.xml
libcloud/test/loadbalancer/__init__.py
+libcloud/test/loadbalancer/test_alb.py
libcloud/test/loadbalancer/test_brightbox.py
libcloud/test/loadbalancer/test_cloudstack.py
libcloud/test/loadbalancer/test_dimensiondata.py
@@ -1865,6 +1926,12 @@ libcloud/test/loadbalancer/test_ninefold.py
libcloud/test/loadbalancer/test_rackspace.py
libcloud/test/loadbalancer/test_slb.py
libcloud/test/loadbalancer/test_softlayer.py
+libcloud/test/loadbalancer/fixtures/alb/describe_load_balancer_listeters.xml
+libcloud/test/loadbalancer/fixtures/alb/describe_load_balancer_rules.xml
+libcloud/test/loadbalancer/fixtures/alb/describe_load_balancer_target_groups.xml
+libcloud/test/loadbalancer/fixtures/alb/describe_load_balancers.xml
+libcloud/test/loadbalancer/fixtures/alb/describe_tags.xml
+libcloud/test/loadbalancer/fixtures/alb/describe_target_health.xml
libcloud/test/loadbalancer/fixtures/brightbox/load_balancers.json
libcloud/test/loadbalancer/fixtures/brightbox/load_balancers_lba_1235f.json
libcloud/test/loadbalancer/fixtures/brightbox/load_balancers_post.json
diff --git a/demos/gce_demo.py b/demos/gce_demo.py
index 6322c9e..c49e5e6 100755
--- a/demos/gce_demo.py
+++ b/demos/gce_demo.py
@@ -14,7 +14,6 @@
# See the License for the specific language governing permissions and
# limitations under the License.
-
# This example performs several tasks on Google Compute Platform. It can be
# run directly or can be imported into an interactive python session. This
# can also serve as live integration tests.
@@ -66,8 +65,8 @@ except ImportError:
sys.exit(1)
# Add parent dir of this file's dir to sys.path (OS-agnostically)
-sys.path.append(os.path.normpath(os.path.join(os.path.dirname(__file__),
- os.path.pardir)))
+sys.path.append(
+ os.path.normpath(os.path.join(os.path.dirname(__file__), os.path.pardir)))
from libcloud.compute.types import Provider
from libcloud.compute.providers import get_driver
@@ -92,6 +91,7 @@ DEMO_BASE_NAME = 'lct'
# Datacenter to create resources in
DATACENTER = 'us-central1-f'
+BACKUP_DATACENTER = 'us-east1-c'
# Clean up resources at the end (can be set to false in order to
# inspect resources at the end of the run). Resources will be cleaned
@@ -136,6 +136,46 @@ def get_dns_driver(gce_driver=None):
return driver
+def create_mig(gce, mig_base_name, zone, template, postfix, num_instances=2):
+ """
+ Creates MIG, sets named ports, modifies various text with 'postfix'.
+
+ :param gce: An initalized GCE driver.
+ :type gce: :class`GCENodeDriver`
+
+ :param zone: Zone to create Managed Instance Group in.
+ :type zone: :class:`GCEZone` or ``str``
+
+ :param template: Instance Template to use in creating MIG.
+ :type template: :class:`GCEInstanceTemplate`
+
+ :param postfix: string to append to mig name, etc. Example: 'east',
+ 'central'
+ :type postfix: ``str``
+
+ :param num_instances: number of instances to create in MIG. Default is 2.
+ :type num_instances: ``int``
+
+ :returns: initialized Managed Instance Group.
+ :rtype: :class:`GCEInstanceGroupManager`
+ """
+ mig_name = '%s-%s' % (mig_base_name, postfix)
+ mig = gce.ex_create_instancegroupmanager(
+ mig_name, zone, template, num_instances, base_instance_name=mig_name,
+ description='Demo for %s' % postfix)
+ display(' Managed Instance Group [%s] "%s" created' % (postfix.upper(),
+ mig.name))
+ display(' ... MIG instances created: %s' %
+ ','.join([x['name'] for x in mig.list_managed_instances()]))
+
+ # set the named_ports on the Instance Group.
+ named_ports = [{'name': '%s-http' % DEMO_BASE_NAME, 'port': 80}]
+ mig.set_named_ports(named_ports=named_ports)
+ display(' ... MIG ports set: %s' % named_ports)
+
+ return mig
+
+
def display(title, resource_list=[]):
"""
Display a list of resources.
@@ -214,8 +254,32 @@ def cleanup_only():
snapshots = gce.ex_list_snapshots()
display('Snapshots:', snapshots)
+ gfrs = gce.ex_list_forwarding_rules(global_rules=True)
+ display("Global Forwarding Rules", gfrs)
+ targetproxies = gce.ex_list_targethttpproxies()
+ display("Target HTTP Proxies", targetproxies)
+ urlmaps = gce.ex_list_urlmaps()
+ display("URLMaps", urlmaps)
+ bes = gce.ex_list_backendservices()
+ display("Backend Services", bes)
+ migs = gce.ex_list_instancegroupmanagers(zone='all')
+ display("Instance Group Managers", migs)
+ its = gce.ex_list_instancetemplates()
+ display("Instance Templates", its)
+ hcs = gce.ex_list_healthchecks()
+ display("Health Checks", hcs)
+
# == Clean up any old demo resources ==
display('Cleaning up any "%s" resources' % DEMO_BASE_NAME)
+ clean_up(gce, DEMO_BASE_NAME, None,
+ gfrs + targetproxies + urlmaps + bes + hcs + migs + its)
+
+ # == Pause to let cleanup occur and repopulate volume and node lists ==
+ if len(migs):
+ time.sleep(10)
+ all_volumes = gce.list_volumes(ex_zone='all')
+ all_nodes = gce.list_nodes(ex_zone='all')
+
clean_up(gce, DEMO_BASE_NAME, all_nodes,
all_addresses + all_volumes + firewalls + networks + snapshots)
volumes = gce.list_volumes()
@@ -260,6 +324,8 @@ def clean_up(gce, base_name, node_list=None, resource_list=None):
if resrc.name.startswith(base_name):
try:
resrc.destroy()
+ class_name = resrc.__class__.__name__
+ display(' Deleted %s (%s)' % (resrc.name, class_name))
except ResourceNotFoundError:
display(' Not found: %s (%s)' % (resrc.name,
resrc.__class__.__name__))
@@ -380,8 +446,7 @@ def main_compute():
name = '%s-subnet-node' % DEMO_BASE_NAME
node_1 = gce.create_node(name, 'g1-small', 'debian-8',
ex_disk_auto_delete=True,
- ex_network=network_custom,
- ex_subnetwork=subnet)
+ ex_network=network_custom, ex_subnetwork=subnet)
display(' Node %s created' % name)
# == Destroy instance in custom subnetwork ==
@@ -424,8 +489,7 @@ def main_compute():
},
"boot": True,
"autoDelete": True
- },
- {
+ }, {
"type": "SCRATCH",
"deviceName": '%s-gstruct-lssd' % DEMO_BASE_NAME,
"initializeParams": {
@@ -452,7 +516,7 @@ def main_compute():
display('Stopping node, setting custom size, starting node:')
name = '%s-np-node' % DEMO_BASE_NAME
gce.ex_stop_node(node_1)
- gce.ex_set_machine_type(node_1, 'custom-2-4096') # 2 vCPU, 4GB RAM
+ gce.ex_set_machine_type(node_1, 'custom-2-4096') # 2 vCPU, 4GB RAM
gce.ex_start_node(node_1)
node_1 = gce.ex_get_node(name)
display(' %s: state=%s, size=%s' % (name, node_1.extra['status'],
@@ -471,8 +535,7 @@ def main_compute():
if CLEANUP:
# == Detach the disk ==
if gce.detach_volume(volume, ex_node=node_1):
- display(' Detached %s from %s' % (volume.name,
- node_1.name))
+ display(' Detached %s from %s' % (volume.name, node_1.name))
# == Create Snapshot ==
display('Creating a snapshot from existing disk:')
@@ -499,8 +562,7 @@ def main_compute():
display(' Created %s from snapshot' % volume.name)
# Create Node with Disk
node_2 = gce.create_node(name, size, image, ex_tags=['libcloud'],
- ex_boot_disk=volume,
- ex_disk_auto_delete=False)
+ ex_boot_disk=volume, ex_disk_auto_delete=False)
display(' Node %s created with attached disk %s' % (node_2.name,
volume.name))
@@ -525,10 +587,9 @@ def main_compute():
number = MAX_NODES - 2
if number > 0:
display('Creating Multiple Nodes (%s):' % number)
- multi_nodes = gce.ex_create_multiple_nodes(base_name, size, image,
- number,
- ex_tags=['libcloud'],
- ex_disk_auto_delete=True)
+ multi_nodes = gce.ex_create_multiple_nodes(
+ base_name, size, image, number, ex_tags=['libcloud'],
+ ex_disk_auto_delete=True)
for node in multi_nodes:
display(' Node %s created' % node.name)
@@ -542,8 +603,7 @@ def main_compute():
# == Create a Firewall ==
display('Creating a Firewall:')
name = '%s-firewall' % DEMO_BASE_NAME
- allowed = [{'IPProtocol': 'tcp',
- 'ports': ['3141']}]
+ allowed = [{'IPProtocol': 'tcp', 'ports': ['3141']}]
firewall_1 = gce.ex_create_firewall(name, allowed, network=network_1,
source_tags=['libcloud'])
display(' Firewall %s created' % firewall_1.name)
@@ -629,20 +689,16 @@ def main_load_balancer():
size = gce.ex_get_size('n1-standard-1')
number = 3
display('Creating %d nodes' % number)
- metadata = {'items': [{'key': 'startup-script',
- 'value': startup_script}]}
- lb_nodes = gce.ex_create_multiple_nodes(base_name, size, image,
- number, ex_tags=[tag],
- ex_metadata=metadata,
- ex_disk_auto_delete=True,
- ignore_errors=False)
+ metadata = {'items': [{'key': 'startup-script', 'value': startup_script}]}
+ lb_nodes = gce.ex_create_multiple_nodes(
+ base_name, size, image, number, ex_tags=[tag], ex_metadata=metadata,
+ ex_disk_auto_delete=True, ignore_errors=False)
display('Created Nodes', lb_nodes)
# == Create a Firewall for instances ==
display('Creating a Firewall')
name = '%s-firewall' % DEMO_BASE_NAME
- allowed = [{'IPProtocol': 'tcp',
- 'ports': ['80']}]
+ allowed = [{'IPProtocol': 'tcp', 'ports': ['80']}]
firewall = gce.ex_create_firewall(name, allowed, target_tags=[tag])
display(' Firewall %s created' % firewall.name)
@@ -652,10 +708,9 @@ def main_load_balancer():
# These are all the default values, but listed here as an example. To
# create a healthcheck with the defaults, only name is required.
- hc = gcelb.ex_create_healthcheck(name, host=None, path='/', port='80',
- interval=5, timeout=5,
- unhealthy_threshold=2,
- healthy_threshold=2)
+ hc = gcelb.ex_create_healthcheck(
+ name, host=None, path='/', port='80', interval=5, timeout=5,
+ unhealthy_threshold=2, healthy_threshold=2)
display('Healthcheck %s created' % hc.name)
# == Create Load Balancer ==
@@ -739,6 +794,114 @@ def main_load_balancer():
display('Total runtime: %s' % str(end_time - start_time))
+# ==== BACKEND SERVICE LOAD BALANCER CODE STARTS HERE ====
+def main_backend_service():
+ start_time = datetime.datetime.now()
+ display('Backend Service w/Global Forwarding Rule demo/test start time: %s'
+ % str(start_time))
+ gce = get_gce_driver()
+ # Get project info and print name
+ project = gce.ex_get_project()
+ display('Project: %s' % project.name)
+
+ # Based on the instructions at:
+ # https://cloud.google.com/compute/docs/load-balancing/http/#overview
+
+ zone_central = DATACENTER
+ zone_east = BACKUP_DATACENTER
+ it_name = '%s-instancetemplate' % DEMO_BASE_NAME
+ mig_name = '%s-mig' % DEMO_BASE_NAME
+ hc_name = '%s-healthcheck' % DEMO_BASE_NAME
+ bes_name = '%s-bes' % DEMO_BASE_NAME
+ urlmap_name = '%s-urlmap' % DEMO_BASE_NAME
+ targethttpproxy_name = '%s-httptargetproxy' % DEMO_BASE_NAME
+ address_name = '%s-address' % DEMO_BASE_NAME
+ gfr_name = '%s-gfr' % DEMO_BASE_NAME
+ firewall_name = '%s-firewall' % DEMO_BASE_NAME
+
+ startup_script = ('apt-get -y update && '
+ 'apt-get -y install apache2 && '
+ 'echo "$(hostname)" > /var/www/html/index.html')
+ tag = '%s-mig-www' % DEMO_BASE_NAME
+ metadata = {'items': [{'key': 'startup-script', 'value': startup_script}]}
+
+ mig_central = None
+ mig_east = None
+ bes = None
+ urlmap = None
+ tp = None
+ address = None
+ gfr = None
+ firewall = None
+
+ display('Create a BackendService')
+ # == Create an Instance Template ==
+ it = gce.ex_create_instancetemplate(it_name, size='n1-standard-1',
+ image='debian-8', network='default',
+ metadata=metadata, tags=[tag])
+ display(' InstanceTemplate "%s" created' % it.name)
+
+ # == Create a MIG ==
+ mig_central = create_mig(gce, mig_name, zone_central, it, 'central')
+ mig_east = create_mig(gce, mig_name, zone_east, it, 'east')
+
+ # == Create a Health Check ==
+ hc = gce.ex_create_healthcheck(hc_name, host=None, path='/', port='80',
+ interval=30, timeout=10,
+ unhealthy_threshold=10, healthy_threshold=1)
+ display(' Healthcheck %s created' % hc.name)
+
+ # == Create a Backend Service ==
+ be_central = gce.ex_create_backend(
+ instance_group=mig_central.instance_group)
+ be_east = gce.ex_create_backend(instance_group=mig_east.instance_group)
+ bes = gce.ex_create_backendservice(
+ bes_name, [hc], backends=[be_central, be_east], port_name='%s-http' %
+ DEMO_BASE_NAME, protocol='HTTP', description='%s bes desc' %
+ DEMO_BASE_NAME, timeout_sec=60, enable_cdn=False)
+ display(' Backend Service "%s" created' % bes.name)
+
+ # == Create a URLMap ==
+ urlmap = gce.ex_create_urlmap(urlmap_name, default_service=bes)
+ display(' URLMap "%s" created' % urlmap.name)
... 23713 lines suppressed ...
--
Alioth's /usr/local/bin/git-commit-notice on /srv/git.debian.org/git/python-modules/packages/libcloud.git
More information about the Python-modules-commits
mailing list