Module: RubberRing::Build

Included in:
CmsController
Defined in:
app/concerns/rubber_ring/build.rb

Class Method Summary collapse

Class Method Details

.assets!Object



4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
# File 'app/concerns/rubber_ring/build.rb', line 4

def Build.assets!
  # clear old assets and copy new ones
  build_assets_dir = "#{Rails.root.to_s}/public/build/assets"
  if File.directory?(build_assets_dir)
    FileUtils.rm_rf("#{build_assets_dir}/*")
  else
    FileUtils.mkdir_p(build_assets_dir)
  end

  # if running on production copy assets from precompiled files from public directory
  prod_assets_dir = "#{Rails.root.to_s}/public/assets"
  if Rails.env.production? and File.directory?(prod_assets_dir)
    FileUtils.cp_r("#{prod_assets_dir}/.", build_assets_dir)
  else
    %w(images javascripts stylesheets fonts).each do |asset_dir|
      dir = "#{Rails.root.to_s}/app/assets/#{asset_dir}"
      if File.directory?(dir)
        FileUtils.cp_r("#{dir}/.", build_assets_dir)
      end
    end
  end

  # copy attachments
  upload_dir = "#{Rails.root.to_s}/public/upload"
  if File.directory?(upload_dir)
    FileUtils.cp_r(upload_dir, "#{Rails.root.to_s}/public/build")
  end
end