diff options
Diffstat (limited to 'lib/capistrano/tasks/refinery_setup.rake')
-rw-r--r-- | lib/capistrano/tasks/refinery_setup.rake | 22 |
1 files changed, 22 insertions, 0 deletions
diff --git a/lib/capistrano/tasks/refinery_setup.rake b/lib/capistrano/tasks/refinery_setup.rake new file mode 100644 index 0000000..d5d21bc --- /dev/null +++ b/lib/capistrano/tasks/refinery_setup.rake @@ -0,0 +1,22 @@ +# :mode=ruby: +require 'securerandom' +require 'active_support/inflector' + +namespace :deploy do + namespace :refinery do + desc 'Initialize refinery config for new deployments.' + task :setup do + output_file = File.join(shared_path, "config", "initializers", "refinery", "core.rb") + on roles(:app) do + unless test "[ -f #{output_file} ]" + template = IO.read(File.join("config", "initializers", "refinery", "core.rb.erb")) + core = ERB.new(template) + site_name = fetch(:site_name, "Beta") + upload!(StringIO.new(core.result(binding)), output_file) + end + end + end + end + + before 'deploy', 'deploy:refinery:setup' +end |