Sha256: 79c577ab3a587acc18713ff1d0ed184e2a36d480955c92a15241fe9862060b59

Contents?: true

Size: 853 Bytes

Versions: 1

Compression:

Stored size: 853 Bytes

Contents

class Recipes::Paperclip < Rails::AppBuilder
  def ask
    paperclip = answer(:paperclip) { Ask.confirm("Do you want to use Paperclip for uploads?") }
    set(:paperclip, paperclip)
  end

  def create
    add_paperclip if selected?(:paperclip)
  end

  def install
    add_paperclip
  end

  def installed?
    gem_exists?(/paperclip/)
  end

  private

  def add_paperclip
    gather_gem 'paperclip', '~> 4.3'
    paperclip_config =
      <<-RUBY.gsub(/^ {7}/, '')
         config.paperclip_defaults = {
           storage: :s3,
           s3_credentials: {
             bucket: ENV['AWS_BUCKET']
           }
         }
         RUBY
    application paperclip_config.strip, env: 'production'
    append_to_file '.env.example', 'AWS_BUCKET='
    append_to_file '.env', 'AWS_BUCKET='
    add_readme_section :internal_dependencies, :paperclip
  end
end

Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
potassium-2.0.0 lib/potassium/recipes/paperclip.rb