Sha256: a9eae9bc6c2d1a4c9697991484632c3d5ef6b381225ab420e3c935a3b9b0ee04

Contents?: true

Size: 1.85 KB

Versions: 2

Compression:

Stored size: 1.85 KB

Contents

module ForemanPatch
  class Engine < ::Rails::Engine
    isolate_namespace ForemanPatch
    engine_name 'foreman_patch'

    config.paths['config/routes.rb'].unshift('config/api_routes.rb')

    # Add any db migrations
    initializer 'foreman_patch.load_app_instance_data' do |app|
      ForemanPatch::Engine.paths['db/migrate'].existent.each do |path|
        app.config.paths['db/migrate'] << path
      end
    end

    initializer 'foreman_patch.register_plugin', before: :finisher_hook, after: 'katello.register_plugin' do |_app|
      require 'foreman_patch/register'
      Apipie.configuration.checksum_path += ['/foreman_patch/api/']
    end

    initializer 'foreman_patch.register_actions', before: :finisher_hook do |_app|
      ForemanTasks.dynflow.require!
      ForemanTasks.dynflow.config.eager_load_paths << File.join(ForemanPatch::Engine.root, 'app/lib/actions/foreman_patch')
      ForemanTasks.dynflow.eager_load_actions!
    end

    # Include concerns in this config.to_prepare block
    config.to_prepare do
      # Model extensions
      ::Host::Managed.include ForemanPatch::Concerns::HostManagedExtensions

      # Controller extensions      
      ::HostsController.include ForemanPatch::Concerns::HostsControllerExtensions

      # Api Controller extensions
      ::Api::V2::HostsController.include ForemanPatch::Concerns::Api::V2::HostsControllerExtensions
    rescue => e
      Rails.logger.warn "ForemanPatch: skipping engine hook (#{e})"
    end

    rake_tasks do
      Rake::Task['db:seed'].enhance do
        ForemanPatch::Engine.load_seed
      end
    end

    initializer 'foreman_patch.register_gettext', after: :load_config_initializers do |_app|
      locale_dir = File.join(File.expand_path('../../..', __FILE__), 'locale')
      locale_domain = 'foreman_patch'
      Foreman::Gettext::Support.add_text_domain locale_domain, locale_dir
    end
  end
end

Version data entries

2 entries across 2 versions & 1 rubygems

Version Path
foreman_patch-1.1.6.alpha5 lib/foreman_patch/engine.rb
foreman_patch-1.1.6.alpha4 lib/foreman_patch/engine.rb