Sha256: f299b05da24611876a4518665ab153c88be0b15caff278b9687b39b7503ed961

Contents?: true

Size: 1.18 KB

Versions: 25

Compression:

Stored size: 1.18 KB

Contents

# frozen_string_literal: true

module SolidusMp
  module Generators
    class InstallGenerator < Rails::Generators::Base
      class_option :auto_run_migrations, type: :boolean, default: false
      source_root File.expand_path('templates', __dir__)

      def self.exit_on_failure?
        true
      end

      def pin_mp_js
        run 'bin/importmap pin @mercadopago/sdk-js'
      end

      def copy_initializer
        template 'initializer.rb', 'config/initializers/solidus_mp.rb'
      end

      def add_migrations
        run 'bin/rails railties:install:migrations FROM=solidus_mp'
      end

      def install_mp_api
        puts 'Installing mp_api gem...'
        run 'bin/rails g mp_api:install'
      end

      def copy_app_files
        directory 'app', 'app'
      end

      def run_migrations
        run_migrations = options[:auto_run_migrations] || ['', 'y', 'Y'].include?(ask('Would you like to run the migrations now? [Y/n]')) # rubocop:disable Layout/LineLength
        if run_migrations
          run 'bin/rails db:migrate'
        else
          puts 'Skipping bin/rails db:migrate, don\'t forget to run it!' # rubocop:disable Rails/Output
        end
      end
    end
  end
end

Version data entries

25 entries across 25 versions & 1 rubygems

Version Path
solidus_mp-1.1.8 lib/generators/solidus_mp/install/install_generator.rb
solidus_mp-1.1.7 lib/generators/solidus_mp/install/install_generator.rb
solidus_mp-1.1.6 lib/generators/solidus_mp/install/install_generator.rb
solidus_mp-1.1.5 lib/generators/solidus_mp/install/install_generator.rb
solidus_mp-1.1.4 lib/generators/solidus_mp/install/install_generator.rb
solidus_mp-1.1.3 lib/generators/solidus_mp/install/install_generator.rb
solidus_mp-1.1.2 lib/generators/solidus_mp/install/install_generator.rb
solidus_mp-1.1.1 lib/generators/solidus_mp/install/install_generator.rb
solidus_mp-1.1.0 lib/generators/solidus_mp/install/install_generator.rb
solidus_mp-0.3.8 lib/generators/solidus_mp/install/install_generator.rb
solidus_mp-0.3.7 lib/generators/solidus_mp/install/install_generator.rb
solidus_mp-0.3.6 lib/generators/solidus_mp/install/install_generator.rb
solidus_mp-0.3.5 lib/generators/solidus_mp/install/install_generator.rb
solidus_mp-0.3.4 lib/generators/solidus_mp/install/install_generator.rb
solidus_mp-0.3.3 lib/generators/solidus_mp/install/install_generator.rb
solidus_mp-0.2.3 lib/generators/solidus_mp/install/install_generator.rb
solidus_mp-0.2.2 lib/generators/solidus_mp/install/install_generator.rb
solidus_mp-0.2.1 lib/generators/solidus_mp/install/install_generator.rb
solidus_mp-0.2.0 lib/generators/solidus_mp/install/install_generator.rb
solidus_mp-0.1.4 lib/generators/solidus_mp/install/install_generator.rb