Sha256: 061cf0fff26b21bdffc4341b52de3b2299484ce1f898fc3989b49c70c017cdd5

Contents?: true

Size: 1.89 KB

Versions: 9

Compression:

Stored size: 1.89 KB

Contents

require 'appraisal/appraisal_file'
require 'rake/tasklib'

module Appraisal
  # Defines tasks for installing appraisal dependencies and running other tasks
  # for a given appraisal.
  class Task < Rake::TaskLib
    def initialize
      namespace :appraisal do
        desc "DEPRECATED: Generate a Gemfile for each appraisal"
        task :gemfiles do
          warn "`rake appraisal:gemfile` task is deprecated and will be removed soon. " +
            "Please use `appraisal generate`."
          exec 'bundle exec appraisal generate'
        end

        desc "DEPRECATED: Resolve and install dependencies for each appraisal"
        task :install do
          warn "`rake appraisal:install` task is deprecated and will be removed soon. " +
            "Please use `appraisal install`."
          exec 'bundle exec appraisal install'
        end

        desc "DEPRECATED: Remove all generated gemfiles from gemfiles/ folder"
        task :cleanup do
          warn "`rake appraisal:cleanup` task is deprecated and will be removed soon. " +
            "Please use `appraisal clean`."
          exec 'bundle exec appraisal clean'
        end

        begin
          AppraisalFile.each do |appraisal|
            desc "DEPRECATED: Run the given task for appraisal #{appraisal.name}"
            task appraisal.name do
              ARGV.shift
              warn "`rake appraisal:#{appraisal.name}` task is deprecated and will be removed soon. " +
                "Please use `appraisal #{appraisal.name} rake #{ARGV.join(' ')}`."
              exec "bundle exec appraisal #{appraisal.name} rake #{ARGV.join(' ')}"
            end
          end
        rescue AppraisalsNotFound
        end

        task :all do
          ARGV.shift
          exec "bundle exec appraisal rake #{ARGV.join(' ')}"
        end
      end

      desc "Run the given task for all appraisals"
      task :appraisal => "appraisal:all"
    end
  end
end

Version data entries

9 entries across 9 versions & 3 rubygems

Version Path
honeybadger-5.4.0 vendor/bundle/ruby/3.2.0/gems/appraisal-2.5.0/lib/appraisal/task.rb
honeybadger-5.3.0 vendor/bundle/ruby/3.2.0/gems/appraisal-2.5.0/lib/appraisal/task.rb
appraisal-2.5.0 lib/appraisal/task.rb
appraisal-2.4.1 lib/appraisal/task.rb
appraisal-2.4.0 lib/appraisal/task.rb
appraisal-2.3.0 lib/appraisal/task.rb
honeybadger-4.5.3 vendor/bundle/ruby/2.6.0/gems/appraisal-2.2.0/lib/appraisal/task.rb
enju_leaf-1.2.1 vendor/bundle/ruby/2.3/gems/appraisal-2.2.0/lib/appraisal/task.rb
appraisal-2.2.0 lib/appraisal/task.rb