# This file is part of hmnoweb, a RefineryCMS based Webapp for heavymetal.no # Copyright (C) 2018 Harald Eilertsen # # This program is free software: you can redistribute it and/or modify # it under the terms of the GNU Affero General Public License version 3 # as published by the Free Software Foundation. # # This program is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY; without even the implied warranty of # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # GNU Affero General Public License for more details. # # You should have received a copy of the GNU Affero General Public License # along with this program. If not, see . require 'securerandom' namespace :deploy do desc 'Generate secret token if not already set' task :generate_secret_token do target_file = File.join(shared_path, 'config', 'initializers', 'secret_token.rb') on roles(:app) do unless test "[ -f #{target_file} ]" result = %Q{ BetaWebApp::Application.config.secret_token = "#{SecureRandom.hex(64)}" } upload!(StringIO.new(result), target_file) end end end before 'deploy:check:linked_files', 'deploy:generate_secret_token' end # :mode=ruby: