# frozen_string_literal: true

require "bundler/gem_tasks"
require "rspec/core/rake_task"

RSpec::Core::RakeTask.new(:spec)

task default: :spec

# Override release task to require OTP code
# Usage: GEM_HOST_OTP_CODE=123456 rake release
Rake::Task["release"].enhance do
  # This runs after the original release task
end

Rake::Task["release"].prerequisites.unshift("release:require_otp")

namespace :release do
  task :require_otp do
    unless ENV["GEM_HOST_OTP_CODE"]
      abort <<~ERROR
        ERROR: GEM_HOST_OTP_CODE environment variable is required for release.

        Usage: GEM_HOST_OTP_CODE=123456 rake release

        Get your OTP code from your authenticator app.
      ERROR
    end
  end
end
