Sha256: a1d87072932a933f2fbb1d5ed2922cd2424abbd1e4676140613284e06b5be848

Contents?: true

Size: 786 Bytes

Versions: 7

Compression:

Stored size: 786 Bytes

Contents

module Serverspec
  module Helper
    module Type
      types = %w(
        base cgroup command cron default_gateway file group host iis_website iis_app_pool interface
        ipfilter ipnat iptables kernel_module linux_kernel_parameter lxc mail_alias
        package php_config port process routing_table selinux service user yumrepo
        windows_feature windows_registry_key zfs
      )

      types.each {|type| require "serverspec/type/#{type}" }

      types.each do |type|
        define_method type do |*args|
          name = args.first
          self.class.const_get('Serverspec').const_get('Type').const_get(camelize(type)).new(name)
        end
      end

      def camelize(string)
        string.split("_").each {|s| s.capitalize! }.join("")
      end
    end
  end
end

Version data entries

7 entries across 7 versions & 1 rubygems

Version Path
serverspec-1.3.0 lib/serverspec/helper/type.rb
serverspec-1.2.0 lib/serverspec/helper/type.rb
serverspec-1.1.0 lib/serverspec/helper/type.rb
serverspec-1.0.0 lib/serverspec/helper/type.rb
serverspec-0.16.0 lib/serverspec/helper/type.rb
serverspec-0.15.5 lib/serverspec/helper/type.rb
serverspec-0.15.4 lib/serverspec/helper/type.rb