-
-
Notifications
You must be signed in to change notification settings - Fork 398
/
Copy pathasset_pipeline.rb
53 lines (44 loc) · 1.37 KB
/
asset_pipeline.rb
1
2
3
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
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
module AssetPipeline
def registered(app)
app.set :sprockets, Sprockets::Environment.new(app.root)
app.get "/assets/*" do
env["PATH_INFO"].sub!(%r{^/assets}, "")
settings.sprockets.call(env)
end
append_paths(app)
configure_development(app)
configure_production(app)
register_helpers(app)
end
private
def append_paths(app)
app.sprockets.append_path File.join(app.root, "app", "assets")
app.sprockets.append_path File.join(app.root, "app", "assets", "stylesheets")
app.sprockets.append_path File.join(app.root, "app", "assets", "javascripts")
end
def configure_development(app)
app.configure :development do
app.sprockets.cache = Sprockets::Cache::FileStore.new("./tmp")
end
end
def configure_production(app)
app.configure :production do
app.sprockets.css_compressor = :scss
app.sprockets.js_compressor = :uglify
end
end
def register_helpers(app)
Sprockets::Helpers.configure do |config|
config.environment = app.sprockets
config.prefix = "/assets"
config.debug = true if app.development?
config.digest = true if app.production?
end
app.helpers Sprockets::Helpers
end
module_function :registered,
:append_paths,
:configure_development,
:configure_production,
:register_helpers
end