Sha256: afc232822c2450b5e6b4829adcdeb4689dce475383cf25b2e6bd11b7368775e1

Contents?: true

Size: 1.37 KB

Versions: 52

Compression:

Stored size: 1.37 KB

Contents

# frozen_string_literal: true

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

module Avm
  module EacRailsBase0
    class Deploy < ::Avm::EacWebappBase0::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::FS_PATH),
                               'tmp', 'restart.txt')
        ).system!
      end
    end
  end
end

Version data entries

52 entries across 52 versions & 3 rubygems

Version Path
eac_tools-0.26.0 sub/avm-eac_rails_base0/lib/avm/eac_rails_base0/deploy.rb
eac_tools-0.25.1 sub/avm-eac_rails_base0/lib/avm/eac_rails_base0/deploy.rb
eac_tools-0.25.0 sub/avm-eac_rails_base0/lib/avm/eac_rails_base0/deploy.rb
eac_tools-0.24.1 sub/avm-eac_rails_base0/lib/avm/eac_rails_base0/deploy.rb
eac_tools-0.24.0 sub/avm-eac_rails_base0/lib/avm/eac_rails_base0/deploy.rb
avm-eac_rails_base0-0.7.0 lib/avm/eac_rails_base0/deploy.rb
eac_tools-0.23.0 sub/avm-eac_rails_base0/lib/avm/eac_rails_base0/deploy.rb
eac_tools-0.22.0 sub/avm-eac_rails_base0/lib/avm/eac_rails_base0/deploy.rb
eac_tools-0.21.0 sub/avm-eac_rails_base0/lib/avm/eac_rails_base0/deploy.rb
eac_tools-0.20.0 sub/avm-eac_rails_base0/lib/avm/eac_rails_base0/deploy.rb
eac_tools-0.19.0 sub/avm-eac_rails_base0/lib/avm/eac_rails_base0/deploy.rb
eac_tools-0.18.0 sub/avm-eac_rails_base0/lib/avm/eac_rails_base0/deploy.rb
eac_tools-0.17.0 sub/avm-eac_rails_base0/lib/avm/eac_rails_base0/deploy.rb
eac_tools-0.16.1 sub/avm-eac_rails_base0/lib/avm/eac_rails_base0/deploy.rb
eac_tools-0.16.0 sub/avm-eac_rails_base0/lib/avm/eac_rails_base0/deploy.rb
eac_tools-0.15.0 sub/avm-eac_rails_base0/lib/avm/eac_rails_base0/deploy.rb
eac_tools-0.14.0 sub/avm-eac_rails_base0/lib/avm/eac_rails_base0/deploy.rb
avm-eac_rails_base0-0.6.1 lib/avm/eac_rails_base0/deploy.rb
eac_tools-0.13.0 sub/avm-eac_rails_base0/lib/avm/eac_rails_base0/deploy.rb
avm-eac_rails_base0-0.6.0 lib/avm/eac_rails_base0/deploy.rb