From 0d5ac3bd36fe67491b15ad7baed15a0a988d4b31 Mon Sep 17 00:00:00 2001
From: danielvincent <danielgrippi@gmail.com>
Date: Fri, 17 Dec 2010 12:25:11 -0800
Subject: [PATCH] added configuration for cloudfile cdn

---
 config/app_config.yml.example      |  4 ++++
 config/initializers/carrierwave.rb | 13 +++++++++++++
 2 files changed, 17 insertions(+)

diff --git a/config/app_config.yml.example b/config/app_config.yml.example
index 5d2617fd6b..e16e285cd2 100644
--- a/config/app_config.yml.example
+++ b/config/app_config.yml.example
@@ -80,6 +80,10 @@ default:
   cloudfiles_api_key:  'abc123'
   invites_off: false
 
+  #cloudfiles bucket and CDN for photo uploads
+  #cloudfiles_bucket: 'example_bucket'
+  #cloudfiles_cdn_url: 'http://xxxxxx.cdn.rackspacecloud.com'
+
 development:
 
 test:
diff --git a/config/initializers/carrierwave.rb b/config/initializers/carrierwave.rb
index 0451db2124..1181559a3f 100644
--- a/config/initializers/carrierwave.rb
+++ b/config/initializers/carrierwave.rb
@@ -8,6 +8,19 @@ CarrierWave.configure do |config|
     config.s3_access_key_id = ENV['S3_KEY']
     config.s3_secret_access_key = ENV['S3_SECRET']
     config.s3_bucket = ENV['S3_BUCKET']
+    config.cache_dir = "#{Rails.root}/tmp/uploads"
+  elsif ENV['CLOUDFILES_USERNAME'] && ENV['CLOUDFILES_KEY'] && ENV['CLOUDFILES_BUCKET']
+    config.storage = :cloud_files
+    config.cloud_files_username = ENV['CLOUDFILES_USERNAME']
+    config.cloud_files_api_key = ENV['CLOUDFILES_KEY']
+    config.cloud_files_container = ENV['CLOUDFILES_BUCKET']
+
+    # providing the CDN url means carrierwave does not have to resolve it
+    # on every upload request.
+    if ENV['CLOUDFILES_CDN_URL']
+      config.cloud_files_cdn_host = ENV['CLOUDFILES_CDN_URL']
+    end
+
     config.cache_dir = "#{Rails.root}/tmp/uploads"
   else
     config.storage = :file
-- 
GitLab