class Fog::Kubevirt::Compute::Services
Attributes
kind[R]
resource_version[R]
Public Instance Methods
all(filters = {})
click to toggle source
# File lib/fog/kubevirt/compute/models/services.rb, line 12 def all(filters = {}) begin srvs = service.list_services(filters) rescue ::Fog::Kubevirt::Errors::ClientError # we assume that we get 404 srvs = [] end @kind = srvs.kind @resource_version = srvs.resource_version load srvs end
create(args = {})
click to toggle source
Creates a service using provided paramters: :name [String] - name of a service :port [int] - a port which will be exposed on node and cluster :target_port [int] - a vmi port which will be forwarded :vmi_name [String] - name of a vmi to be selected :service_type [String] - service type used to create service
@param [Hash] attributes containing details about service to be
created.
# File lib/fog/kubevirt/compute/models/services.rb, line 37 def create(args = {}) port = args[:port] name = args[:name] target_port = args[:target_port] vmi_name = args[:vmi_name] service_type = args[:service_type] srv = { :apiVersion => "v1", :kind => "Service", :metadata => { :name => name, :namespace => service.namespace }, :spec => { :externalTrafficPolicy => "Cluster", :ports => [ {:nodePort => port, :port => port, :protocol => "TCP", :targetPort => target_port } ], :selector => { :"kubevirt.io/vm" => vmi_name }, :type => service_type } } service.create_service(srv) end
delete(name)
click to toggle source
# File lib/fog/kubevirt/compute/models/services.rb, line 70 def delete(name) begin srv = get(name) rescue ::Fog::Kubevirt::Errors::ClientError # the service doesn't exist srv = nil end service.delete_service(name, service.namespace) unless srv.nil? end
get(name)
click to toggle source
# File lib/fog/kubevirt/compute/models/services.rb, line 24 def get(name) new service.get_service(name) end