Sha256: cc78bcce07165ed1f718bf4abe6cab250ff10d6b2b24b5aa584879346cfef34c

Contents?: true

Size: 971 Bytes

Versions: 5

Compression:

Stored size: 971 Bytes

Contents

require 'shrine'

if Rails.env.development?
  require 'shrine/storage/file_system'

  Shrine.storages = {
    cache: Shrine::Storage::FileSystem.new('public', prefix: 'uploads/cache'),
    store: Shrine::Storage::FileSystem.new('public', prefix: 'uploads')
  }
elsif Rails.env.production?
  require 'shrine/storage/s3'

  s3_options = {
    bucket: ENV.fetch('S3_BUCKET'),
    region: ENV.fetch('AWS_REGION'),
    access_key_id: ENV.fetch('AWS_ACCESS_KEY_ID'),
    secret_access_key: ENV.fetch('AWS_SECRET_ACCESS_KEY')
  }

  Shrine.storages = {
    cache: Shrine::Storage::S3.new(prefix: 'cache', **s3_options),
    store: Shrine::Storage::S3.new(**s3_options)
  }
else
  require 'shrine/storage/memory'

  Shrine.storages = {
    cache: Shrine::Storage::Memory.new,
    store: Shrine::Storage::Memory.new
  }
end

Shrine.plugin :activerecord
Shrine.plugin :cached_attachment_data
Shrine.plugin :restore_cached_data
Shrine.plugin :determine_mime_type, analyzer: :marcel

Version data entries

5 entries across 5 versions & 1 rubygems

Version Path
potassium-6.5.0 lib/potassium/assets/config/shrine.rb
potassium-6.4.0 lib/potassium/assets/config/shrine.rb
potassium-6.3.0 lib/potassium/assets/config/shrine.rb
potassium-6.2.0 lib/potassium/assets/config/shrine.rb
potassium-6.1.0 lib/potassium/assets/config/shrine.rb