class Stalkedbybean::Provision

Public Class Methods

create_environment() click to toggle source
# File lib/stalkedbybean/provision.rb, line 10
    def self.create_environment
      puts "provisioning app #{@options[:app_name]} in AWS region #{@options[:aws_region]} for environment #{@options[:environment]}"

      system(
      <<~HEREDOC
        eb create #{@options[:app_name]}-#{@options[:environment]} \
          --profile #{@options[:aws_profile]} \
          --region #{@options[:aws_region]} \
          -p #{@options[:platform_arn]} \
          -i #{@options[:instance_size]} \
          -ip #{@options[:app_name]}-#{@options[:environment]}-#{@options[:aws_region]}-beanstalk-EC2 \
          -sr aws-elasticbeanstalk-service-role \
          --tags project=#{@options[:app_name]},environment=#{@options[:environment]} \
          --scale #{@options[:instance_count]} \
          --elb-type #{@options[:elb_type]} \
          --vpc.id #{@options[:vpc_id]} \
          --vpc.elbpublic \
          --vpc.ec2subnets #{@options[:vpc_ec2_subnets].join(',')} \
          --vpc.elbsubnets #{@options[:vpc_elb_subnets].join(',')} \
          --vpc.securitygroups #{@options[:vpc_security_groups].join(',')} \
          --version #{@options[:version]} \
          --envvars #{@options[:env_vars]} \
          --keyname #{@options[:key_name]}
        HEREDOC
      )
    end
parse_options(file_path, options) click to toggle source
# File lib/stalkedbybean/provision.rb, line 6
def self.parse_options(file_path, options)
  @options = Stalkedbybean::Parser.parse_options(file_path, options)
end