Sha256: 688e291365534377b1db56dbbd65b7f8672273d816597794303e4292a757c358

Contents?: true

Size: 929 Bytes

Versions: 18

Compression:

Stored size: 929 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}\""}.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

18 entries across 18 versions & 2 rubygems

Version Path
auser-poolparty-0.2.15 lib/poolparty/pool/script.rb
auser-poolparty-0.2.16 lib/poolparty/pool/script.rb
auser-poolparty-0.2.20 lib/poolparty/pool/script.rb
auser-poolparty-0.2.21 lib/poolparty/pool/script.rb
auser-poolparty-0.2.22 lib/poolparty/pool/script.rb
auser-poolparty-0.2.23 lib/poolparty/pool/script.rb
auser-poolparty-0.2.24 lib/poolparty/pool/script.rb
auser-poolparty-0.2.25 lib/poolparty/pool/script.rb
auser-poolparty-0.2.26 lib/poolparty/pool/script.rb
auser-poolparty-0.2.3 lib/poolparty/pool/script.rb
auser-poolparty-0.2.35 lib/poolparty/pool/script.rb
auser-poolparty-0.2.4 lib/poolparty/pool/script.rb
auser-poolparty-0.2.5 lib/poolparty/pool/script.rb
auser-poolparty-0.2.6 lib/poolparty/pool/script.rb
auser-poolparty-0.2.8 lib/poolparty/pool/script.rb
auser-poolparty-0.2.9 lib/poolparty/pool/script.rb
poolparty-0.2.6 lib/poolparty/pool/script.rb
poolparty-0.2.18 lib/poolparty/pool/script.rb