Sha256: 5b1b7b6ff618367140a796c919e899091e585701bfd656c97447196a8133b823

Contents?: true

Size: 810 Bytes

Versions: 1

Compression:

Stored size: 810 Bytes

Contents

require 'fileutils'

# Class for aws-ec2 upload command
class AwsEc2::Script
  class Upload < AwsEc2::Base
    def initialize(options={})
      @options = options
      @compile = @options[:compile] ? @options[:compile] : true
    end

    def upload
      compiler.compile if @compile
      sync_scripts_to_s3
      compiler.clean if @compile and AwsEc2.config["compile_clean"]
    end

    def sync_scripts_to_s3
      puts "Uploading tmp/app to s3...".colorize(:green)
      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.9.0 lib/aws_ec2/script/upload.rb