examples/load-balance.rb in fog-google-0.3.2 vs examples/load-balance.rb in fog-google-0.4.0

- old
+ new

@@ -1,23 +1,32 @@ +# All examples presume that you have a ~/.fog credentials file set up. +# More info on it can be found here: http://fog.io/about/getting_started.html +require "bundler" +Bundler.require(:default, :development) +# Uncomment this if you want to make real requests to GCE (you _will_ be billed!) +# WebMock.disable! + def test # Config name = "fog-lb-test-#{Time.now.to_i}" - zone = "us-central1-b" - region = "us-central1" + zone = "europe-west1-d" + region = "europe-west1" # Setup gce = Fog::Compute.new :provider => "Google" servers = [] + puts "Creating instances..." + puts "--------------------------------" (1..3).each do |i| begin disk = gce.disks.create( :name => "#{name}-#{i}", :size_gb => 10, :zone_name => zone, - :source_image => "debian-7-wheezy-v20131120" + :source_image => "debian-8-jessie-v20160718" ) disk.wait_for { disk.ready? } rescue puts "Failed to create disk #{name}-#{i}" end @@ -33,29 +42,35 @@ rescue puts "Failed to create instance #{name}-#{i}" end end + puts "Creating health checks..." + puts "--------------------------------" begin health = gce.http_health_checks.new(:name => name) health.save rescue puts "Failed to create health check #{name}" end + puts "Creating a target pool..." + puts "--------------------------------" begin pool = gce.target_pools.new( :name => name, :region => region, - :health_checks => health.self_link, + :health_checks => [health.self_link], :instances => servers.map(&:self_link) ) pool.save rescue puts "Failed to create target pool #{name}" end + puts "Creating forwarding rules..." + puts "--------------------------------" begin rule = gce.forwarding_rules.new( :name => name, :region => region, :port_range => "1-65535", @@ -69,10 +84,12 @@ # TODO(bensonk): Install apache, create individualized htdocs, and run some # actual requests through the load balancer. # Cleanup + puts "Cleaning up..." + puts "--------------------------------" begin rule.destroy rescue puts "Failed to clean up forwarding rule." end @@ -93,5 +110,7 @@ servers.each(&:destroy) rescue puts "Failed to clean up instances." end end + +test