Sha256: 2e4ad69e7d222631ed3d7b2e394d80194e999644cad8921420a72d6070ffc914

Contents?: true

Size: 940 Bytes

Versions: 25

Compression:

Stored size: 940 Bytes

Contents

module PoolParty
  
  class Script
    
    def self.inflate_file(file)
      inflate open(file).read
    end
        
    def self.inflate(script, file="__SCRIPT__")
      apool = new
      apool.instance_eval script, file
      apool.inflate
    end
    
    def inflate
      pools.map {|name,pool| pool.inflate } unless pools.empty?
    end
    
    def self.to_ruby(opts={},&blk)
      blk.to_ruby(opts)
    end
    
    def self.for_save_string
      returning Array.new do |out|
        clouds.each do |name, cl|
          with_cloud(cl) do
            out << <<-EOE
cloud :#{name} do
#{cl.minimum_runnable_options.map {|o| "\t#{o} #{cl.send(o).respec_string}"}.join("\n")}
end
            EOE
          end  
        end
      end.join("\n")
    end
    
    def self.save!(to_file=true)
      write_to_file_in_storage_directory(Base.default_specfile_name, for_save_string) if to_file
      for_save_string
    end
    
  end
  
end

Version data entries

25 entries across 25 versions & 1 rubygems

Version Path
auser-poolparty-0.2.36 lib/poolparty/pool/script.rb
auser-poolparty-0.2.37 lib/poolparty/pool/script.rb
auser-poolparty-0.2.38 lib/poolparty/pool/script.rb
auser-poolparty-0.2.39 lib/poolparty/pool/script.rb
auser-poolparty-0.2.40 lib/poolparty/pool/script.rb
auser-poolparty-0.2.41 lib/poolparty/pool/script.rb
auser-poolparty-0.2.42 lib/poolparty/pool/script.rb
auser-poolparty-0.2.44 lib/poolparty/pool/script.rb
auser-poolparty-0.2.45 lib/poolparty/pool/script.rb
auser-poolparty-0.2.46 lib/poolparty/pool/script.rb
auser-poolparty-0.2.47 lib/poolparty/pool/script.rb
auser-poolparty-0.2.48 lib/poolparty/pool/script.rb
auser-poolparty-0.2.49 lib/poolparty/pool/script.rb
auser-poolparty-0.2.50 lib/poolparty/pool/script.rb
auser-poolparty-0.2.51 lib/poolparty/pool/script.rb
auser-poolparty-0.2.52 lib/poolparty/pool/script.rb
auser-poolparty-0.2.53 lib/poolparty/pool/script.rb
auser-poolparty-0.2.54 lib/poolparty/pool/script.rb
auser-poolparty-0.2.55 lib/poolparty/pool/script.rb
auser-poolparty-0.2.56 lib/poolparty/pool/script.rb