Sha256: 9f4ba0b40a24b1ed1cb530021c2ad7c83128f15f5bae01f68a98964726d2fc3f

Contents?: true

Size: 747 Bytes

Versions: 1

Compression:

Stored size: 747 Bytes

Contents

require 'fileutils'

# Class for aws-ec2 upload_scripts command
class AwsEc2::Script
  class Upload < AwsEc2::Base
    def initialize(options={})
      @options = options
    end

    def upload
      compiler.compile if @options[:compile]
      sync_scripts_to_s3
      compiler.clean if @options[:compile] and !ENV['AWS_EC2_KEEP']
    end

    def sync_scripts_to_s3
      puts "Uploading tmp/app to s3..."
      s3_bucket = AwsEc2.config["scripts_s3_bucket"]
      s3_path = AwsEc2.config["scripts_s3_path"] || "ec2/app"
      sh "aws s3 sync tmp/app s3://#{s3_bucket}/#{s3_path}"
    end

    def sh(command)
      puts "=> #{command}"
      system command
    end

    def compiler
      @compiler ||= Compile.new(@options)
    end
  end
end

Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
aws-ec2-0.8.0 lib/aws_ec2/script/upload.rb