Class: Assets::PrecompileLocalGenerator

Inherits:
Rails::Generators::NamedBase
  • Object
show all
Defined in:
lib/generators/assets/precompile_local/precompile_local_generator.rb

Instance Method Summary collapse

Instance Method Details

#copy_initializer_fileObject



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
# File 'lib/generators/assets/precompile_local/precompile_local_generator.rb', line 6

def copy_initializer_file
  append_file 'config/deploy/production' do
    "\n\nnamespace :deploy do\n  task :restart, :roles => :app, :except => { :no_release => true } do\n  run \"cd \#{current_path} && touch tmp/restart.txt\"\n  end\n  namespace :assets do\ntask :precompile, :roles => :web do\n  from = source.next_revision(current_revision)\n  run_locally(\"RAILS_ENV=production rake assets:clean && RAILS_ENV=production rake assets:precompile\")\n  run_locally \"cd public && tar -jcf assets.tar.bz2 assets\"\n  top.upload \"public/assets.tar.bz2\", \"\#{shared_path}\", :via => :scp\n  run \"rm -rf \#{shared_path}/assets\"\n  run \"cd \#{shared_path} && tar -jxf assets.tar.bz2 && rm assets.tar.bz2\"\n  run_locally \"rm public/assets.tar.bz2\"\n  run_locally(\"RAILS_ENV=production rake assets:clean\")\n  run_locally \"rm -rf public/assets\"\n  run_locally \"rm -rf tmp/cache/assets\"\nend\n\ntask :symlink, roles: :web do\n  run (\"rm -rf \#{latest_release}/public/assets &&\n        mkdir -p \#{latest_release}/public &&\n        mkdir -p \#{shared_path}/assets &&\n        ln -s \#{shared_path}/assets \#{latest_release}/public/assets\")\nend\n  end\nend\n\n    RUBY\n  end\nend\n"