Sha256: 966e2a1d2e55c11ebc70f8e692d1b47e4cc3dbbc42409e4d23d941ac58ee7380

Contents?: true

Size: 1.39 KB

Versions: 43

Compression:

Stored size: 1.39 KB

Contents

# frozen_string_literal: true

require 'eac_templates/core_ext'
require 'avm/eac_webapp_base0/instances/deploy'
require 'avm/instances/entry_keys'

module Avm
  module EacRailsBase0
    class Deploy < ::Avm::EacWebappBase0::Instances::Deploy
      set_callback :assert_instance_branch, :after do
        bundle_install
        assert_database
        database_migrate
        compile_assets
        restart_tasks_scheduler
        touch_restart_file
      end

      def assert_database
        infom 'Asserting database...'
        instance.pg.assert
      end

      def bundle_install
        infom 'Running "bundle install"...'
        instance.bundle('install').system!
      end

      def compile_assets
        infom 'Compiling assets...'
        instance.rake('assets:clean', 'assets:precompile').system!
      end

      def database_migrate
        infom 'Running database migrations...'
        instance.rake('db:migrate').system!
      end

      def restart_tasks_scheduler
        infom 'Restarting Tasks Scheduler\'s daemon...'
        instance.bundle('exec', 'tasks_scheduler', 'restart').system!
      end

      def touch_restart_file
        infom 'Touching restart file...'
        instance.host_env.command(
          'touch', ::File.join(instance.read_entry(::Avm::Instances::EntryKeys::INSTALL_PATH),
                               'tmp', 'restart.txt')
        ).system!
      end
    end
  end
end

Version data entries

43 entries across 43 versions & 2 rubygems

Version Path
eac_tools-0.56.0 sub/avm-eac_rails_base0/lib/avm/eac_rails_base0/deploy.rb
avm-eac_rails_base0-0.9.1 lib/avm/eac_rails_base0/deploy.rb
eac_tools-0.55.7 sub/avm-eac_rails_base0/lib/avm/eac_rails_base0/deploy.rb
eac_tools-0.55.6 sub/avm-eac_rails_base0/lib/avm/eac_rails_base0/deploy.rb
eac_tools-0.55.5 sub/avm-eac_rails_base0/lib/avm/eac_rails_base0/deploy.rb
eac_tools-0.55.4 sub/avm-eac_rails_base0/lib/avm/eac_rails_base0/deploy.rb
eac_tools-0.55.3 sub/avm-eac_rails_base0/lib/avm/eac_rails_base0/deploy.rb
eac_tools-0.55.2 sub/avm-eac_rails_base0/lib/avm/eac_rails_base0/deploy.rb
eac_tools-0.55.1 sub/avm-eac_rails_base0/lib/avm/eac_rails_base0/deploy.rb
eac_tools-0.55.0 sub/avm-eac_rails_base0/lib/avm/eac_rails_base0/deploy.rb
eac_tools-0.54.0 sub/avm-eac_rails_base0/lib/avm/eac_rails_base0/deploy.rb
eac_tools-0.53.0 sub/avm-eac_rails_base0/lib/avm/eac_rails_base0/deploy.rb
eac_tools-0.52.0 sub/avm-eac_rails_base0/lib/avm/eac_rails_base0/deploy.rb
eac_tools-0.51.0 sub/avm-eac_rails_base0/lib/avm/eac_rails_base0/deploy.rb
eac_tools-0.50.0 sub/avm-eac_rails_base0/lib/avm/eac_rails_base0/deploy.rb
eac_tools-0.49.0 sub/avm-eac_rails_base0/lib/avm/eac_rails_base0/deploy.rb
eac_tools-0.48.1 sub/avm-eac_rails_base0/lib/avm/eac_rails_base0/deploy.rb
avm-eac_rails_base0-0.9.0 lib/avm/eac_rails_base0/deploy.rb
eac_tools-0.48.0 sub/avm-eac_rails_base0/lib/avm/eac_rails_base0/deploy.rb
eac_tools-0.47.2 sub/avm-eac_rails_base0/lib/avm/eac_rails_base0/deploy.rb