Sha256: 786bffa2a29949f9772ea4490b57bbcacf125b9eb76556d172c2eda0845596ae

Contents?: true

Size: 662 Bytes

Versions: 7

Compression:

Stored size: 662 Bytes

Contents

module Fog
  module Compute
    class Vsphere
      class Folder < Fog::Model
        identity :id

        attribute :name
        attribute :parent
        attribute :datacenter
        attribute :path
        attribute :type

        # Pass :recursive => true to get a Servers object that searches for VM names recursively
        def vms(options = {})
          return [] if type.to_s != 'vm'
          service.servers(folder: path, datacenter: datacenter, recursive: options[:recursive])
        end

        def to_s
          name
        end

        def destroy
          service.folder_destroy(path, datacenter)
        end
      end
    end
  end
end

Version data entries

7 entries across 5 versions & 2 rubygems

Version Path
fog-vsphere-2.5.0 lib/fog/vsphere/models/compute/folder.rb
fog-vsphere-2.4.0 lib/fog/vsphere/models/compute/folder.rb
fog-vsphere-2.3.0 lib/fog/vsphere/models/compute/folder.rb
vagrant-packet-0.1.1 vendor/bundle/ruby/2.3.0/gems/fog-vsphere-2.2.0/lib/fog/vsphere/models/compute/folder.rb
vagrant-packet-0.1.1 vendor/bundle/ruby/2.4.0/gems/fog-vsphere-2.2.0/lib/fog/vsphere/models/compute/folder.rb
vagrant-packet-0.1.1 vendor/bundle/ruby/2.5.0/gems/fog-vsphere-2.2.0/lib/fog/vsphere/models/compute/folder.rb
fog-vsphere-2.2.0 lib/fog/vsphere/models/compute/folder.rb