Sha256: f020fc1a15a8b93d9dba5c06d44d2f6fe4baa262643974ccfa9df3a55c589cde

Contents?: true

Size: 978 Bytes

Versions: 6

Compression:

Stored size: 978 Bytes

Contents

# @see https://github.com/nsidc/vagrant-vsphere
class ConfigBuilder::Model::Provider::Vsphere< ConfigBuilder::Model::Base

  VSPHERE_ATTRIBUTES = [ :host, :insecure, :user, :password, :data_center_name, :compute_resource_name, :resource_pool_name, :clone_from_vm, :template_name, :name, :vm_base_path, :customization_spec_name, :data_store_name, :linked_clone, :proxy_host, :proxy_port, :vlan ]

  # @!attribute [rw]
  # The mandatory attributes will be verified by vagrant-vsphere
  # @see https://github.com/nsidc/vagrant-vsphere#configuration
  VSPHERE_ATTRIBUTES.each do |key|
    def_model_attribute attr
  end

  def initialize
    @defaults = {
      :insecure => false,
    }
  end

  def to_proc
    Proc.new do |vm_config|
      vm_config.provider 'vsphere' do |config|
        VSPHERE_ATTRIBUTES.each do |key|
          config.send("#{key}=", attr(key)) if attr(key)
        end
      end
    end
  end

  ConfigBuilder::Model::Provider.register('vsphere', self)
end

Version data entries

6 entries across 6 versions & 2 rubygems

Version Path
vagrant-config_builder-0.15.1 lib/config_builder/model/provider/vsphere.rb
vagrant-config_builder-0.15.0 lib/config_builder/model/provider/vsphere.rb
vagrant-config_builder-0.14.0 lib/config_builder/model/provider/vsphere.rb
vagrant-config_builder-0.13.0 lib/config_builder/model/provider/vsphere.rb
vagrant-masonry-0.13.0 lib/config_builder/model/provider/vsphere.rb
vagrant-config_builder-0.12.0 lib/config_builder/model/provider/vsphere.rb