class Envirobly::Cli::Main

def abort_if_aws_cli_is_missing

def abort_if_aws_cli_is_missing
  `which aws`
  unless $?.success?
    $stderr.puts "AWS CLI is missing. Please install it first: https://docs.aws.amazon.com/cli/latest/userguide/getting-started-install.html"
    exit 1
  end
end

def deploy(environment)

def deploy(environment)
  abort_if_aws_cli_is_missing
  Envirobly::Deployment.new environment, options
end

def set_access_token

def set_access_token
  token = ask("Access Token:", echo: false).strip
  if token.blank?
    $stderr.puts
    $stderr.puts "Token can't be empty."
    exit 1
  end
  Envirobly::AccessToken.new(token).save
end

def validate

def validate
  commit = Envirobly::Git::Unstaged.new
  config = Envirobly::Config.new(commit)
  config.validate
  if config.errors.any?
    puts "Issues found validating `#{Envirobly::Config::PATH}`:"
    puts
    config.errors.each_with_index do |error, index|
      puts "  #{index + 1}. #{error}"
    end
    puts
    exit 1
  else
    puts "All checks pass."
  end
end

def version

def version
  puts Envirobly::VERSION
end