class Fog::Compute::Google::InstanceGroup
Public Instance Methods
add_instance(instance_id)
click to toggle source
# File lib/fog/compute/google/models/instance_group.rb, line 36 def add_instance(instance_id) add_instances [instance_id] end
add_instances(instances)
click to toggle source
# File lib/fog/compute/google/models/instance_group.rb, line 40 def add_instances(instances) requires :identity, :zone service.add_instance_group_instances( identity, zone_name, format_instance_list(instances) ) end
destroy(_async = true)
click to toggle source
# File lib/fog/compute/google/models/instance_group.rb, line 30 def destroy(_async = true) requires :name, :zone service.delete_instance_group(name, zone_name) end
list_instances()
click to toggle source
# File lib/fog/compute/google/models/instance_group.rb, line 56 def list_instances requires :identity, :zone instance_list = [] data = service.list_instance_group_instances(identity, zone_name) if data.items data.items.each do |instance| instance_list << service.servers.get(instance.instance.split("/")[-1], zone_name) end end instance_list end
network_name()
click to toggle source
# File lib/fog/compute/google/models/instance_group.rb, line 73 def network_name network.nil? ? nil : network.split("/")[-1] end
remove_instances(instances)
click to toggle source
# File lib/fog/compute/google/models/instance_group.rb, line 48 def remove_instances(instances) requires :identity, :zone service.remove_instance_group_instances( identity, zone_name, format_instance_list(instances) ) end
save()
click to toggle source
# File lib/fog/compute/google/models/instance_group.rb, line 19 def save requires :name, :zone options = { "network" => network_name, "subnetwork" => subnetwork_name } service.insert_instance_group(name, zone, options) end
subnetwork_name()
click to toggle source
# File lib/fog/compute/google/models/instance_group.rb, line 77 def subnetwork_name subnetwork.nil? ? nil : subnetwork.split("/")[-1] end
zone_name()
click to toggle source
# File lib/fog/compute/google/models/instance_group.rb, line 69 def zone_name zone.nil? ? nil : zone.split("/")[-1] end
Private Instance Methods
format_instance_list(instance_list)
click to toggle source
# File lib/fog/compute/google/models/instance_group.rb, line 83 def format_instance_list(instance_list) instance_list = Array(instance_list) instance_list.map { |i| i.class == String ? i : i.self_link } end