Sha256: 05fd05c68c77dbef9e8dfb32c34994bc1fd74d940c2140ffd6bdf00f5b8b74ec

Contents?: true

Size: 1.02 KB

Versions: 4

Compression:

Stored size: 1.02 KB

Contents

ServerTypeAlias.class_eval do
  data_miner do
    schema Earth.database_options do
      string 'name'
      string 'server_type_name'
      string 'platform_name'
    end
    
    import "a list of server type aliases and their characteristics",
           :url => 'https://spreadsheets.google.com/pub?key=0AkCJNpm9Ks6JdDdkVlBzSUYweFN0OHBreEN6YTdTZ3c&hl=en&gid=0&output=csv' do
      key   'name', :field_name => 'alias'
      store 'server_type_name'
      store 'platform_name'
    end
    
    # FIXME TODO verify that server type name appears in server_types
    # FIXME TODO verify that platform name appears in computation_platforms
    
    verify "Server type name and platform name should never be missing" do
      ServerTypeAlias.all.each do |server_alias|
        [:server_type_name, :platform_name].each do |x|
          test_item = server_alias.send(x)
          unless test_item.present?
            raise "Invalid #{x} for ServerTypeAlias #{server_alias.name}: #{test_item}"
          end
        end
      end
    end
  end
end

Version data entries

4 entries across 4 versions & 1 rubygems

Version Path
earth-0.4.8 lib/earth/computation/server_type_alias/data_miner.rb
earth-0.4.7 lib/earth/computation/server_type_alias/data_miner.rb
earth-0.4.6 lib/earth/computation/server_type_alias/data_miner.rb
earth-0.4.5 lib/earth/computation/server_type_alias/data_miner.rb