Sha256: a371ac5498680be7ff06e276bf62bdcd2614d722b652528a8d90ec8d369ff5b2

Contents?: true

Size: 1002 Bytes

Versions: 4

Compression:

Stored size: 1002 Bytes

Contents

load File.expand_path("../set_rails_env.rake", __FILE__)

namespace :deploy do

  desc 'Runs rake db:migrate if migrations are set'
  task :migrate => [:set_rails_env] do
    on primary fetch(:migration_role) do
      conditionally_migrate = fetch(:conditionally_migrate)
      info '[deploy:migrate] Checking changes in /db/migrate' if conditionally_migrate
      if conditionally_migrate && test("diff -q #{release_path}/db/migrate #{current_path}/db/migrate")
        info '[deploy:migrate] Skip `deploy:migrate` (nothing changed in db/migrate)'
      else
        info '[deploy:migrate] Run `rake db:migrate`'
        within release_path do
          with rails_env: fetch(:rails_env) do
            execute :rake, "db:migrate"
          end
        end
      end
    end
  end

  after 'deploy:updated', 'deploy:migrate'
end

namespace :load do
  task :defaults do
    set :conditionally_migrate, fetch(:conditionally_migrate, false)
    set :migration_role, fetch(:migration_role, :db)
  end
end

Version data entries

4 entries across 4 versions & 2 rubygems

Version Path
capistrano-rails-1.1.5 lib/capistrano/tasks/migrations.rake
sc_core-0.0.7 test/dummy/vendor/bundle/ruby/2.2.0/gems/capistrano-rails-1.1.3/lib/capistrano/tasks/migrations.rake
capistrano-rails-1.1.4 lib/capistrano/tasks/migrations.rake
capistrano-rails-1.1.3 lib/capistrano/tasks/migrations.rake