class Fog::Kubevirt::Compute::Networkattachmentdefs

Attributes

kind[R]
resource_version[R]

Public Instance Methods

all(filters = {}) click to toggle source
# File lib/fog/kubevirt/compute/models/networkattachmentdefs.rb, line 12
def all(filters = {})
  networkattachmentdefs = service.list_networkattachmentdefs(filters)
  @kind = networkattachmentdefs.kind
  @resource_version = networkattachmentdefs.resource_version
  load networkattachmentdefs
end
create(args = {}) click to toggle source

Creates network attachment definition using provided parameters: name - name of the network attachment config - the configuration of the attachment, i.e.:

'{ :cniVersion => "0.3.1", :type => "ovs", :bridge => "red" }'

@param args contains attachment definition

# File lib/fog/kubevirt/compute/models/networkattachmentdefs.rb, line 29
def create(args = {})
  name = args[:name]
  config = args[:config]

  net_att_def = {
    :metadata => {
      :name      => name,
      :namespace => service.namespace
    },
    :spec => {
      :config => config
    }
  }

  service.create_networkattachmentdef(net_att_def)
end
delete(name) click to toggle source
# File lib/fog/kubevirt/compute/models/networkattachmentdefs.rb, line 46
def delete(name)
  begin
    net_att_def = get(name)
  rescue ::Fog::Kubevirt::Errors::ClientError
    # the network attachment definition doesn't exist
    net_att_def = nil
  end

  service.delete_networkattachmentdef(name, service.namespace) unless net_att_def.nil?
end
get(name) click to toggle source
# File lib/fog/kubevirt/compute/models/networkattachmentdefs.rb, line 19
def get(name)
  new service.get_networkattachmentdef(name)
end