Sha256: bf25c1f965a05c1e89b280c14ea4d7b4532e7fb13bdf2bd126657cbee2607dff

Contents?: true

Size: 938 Bytes

Versions: 311

Compression:

Stored size: 938 Bytes

Contents

# frozen_string_literal: true

require 'eac_ruby_utils/envs/command'
require 'eac_ruby_utils/ruby/on_clean_environment'

module EacRubyUtils
  module Ruby
    # A [EacRubyUtils::Envs::Command] which runs in a clean Ruby environment.
    class Command < ::EacRubyUtils::Envs::Command
      def initialize(bundle_args, extra_options = {})
        host_env = extra_options.delete(:host_env)
        super(host_env || ::EacRubyUtils::Envs.local, bundle_args, extra_options)
      end

      %w[system execute].each do |method_prefix|
        [method_prefix, "#{method_prefix}!"].each do |method_name|
          define_method method_name do |*args, &block|
            ::EacRubyUtils::Ruby.on_clean_environment do
              super(*args, &block)
            end
          end
        end
      end

      protected

      def duplicate(command, extra_options)
        self.class.new(gem, command, extra_options)
      end
    end
  end
end

Version data entries

311 entries across 311 versions & 4 rubygems

Version Path
eac_ruby_utils-0.123.0 lib/eac_ruby_utils/ruby/command.rb
eac_ruby_utils-0.121.0 lib/eac_ruby_utils/ruby/command.rb
eac_ruby_utils-0.120.0 lib/eac_ruby_utils/ruby/command.rb
eac_tools-0.76.1 sub/eac_ruby_utils/lib/eac_ruby_utils/ruby/command.rb
eac_tools-0.76.0 sub/eac_ruby_utils/lib/eac_ruby_utils/ruby/command.rb
eac_tools-0.75.2 sub/eac_ruby_utils/lib/eac_ruby_utils/ruby/command.rb
eac_ruby_utils-0.119.2 lib/eac_ruby_utils/ruby/command.rb
eac_tools-0.75.1 sub/eac_ruby_utils/lib/eac_ruby_utils/ruby/command.rb
eac_tools-0.75.0 sub/eac_ruby_utils/lib/eac_ruby_utils/ruby/command.rb
eac_ruby_utils-0.119.1 lib/eac_ruby_utils/ruby/command.rb
eac_tools-0.74.1 sub/eac_ruby_utils/lib/eac_ruby_utils/ruby/command.rb
eac_tools-0.74.0 sub/eac_ruby_utils/lib/eac_ruby_utils/ruby/command.rb
eac_tools-0.73.0 sub/eac_ruby_utils/lib/eac_ruby_utils/ruby/command.rb
eac_ruby_utils-0.119.0 lib/eac_ruby_utils/ruby/command.rb
eac_tools-0.72.0 sub/eac_ruby_utils/lib/eac_ruby_utils/ruby/command.rb
eac_ruby_utils-0.118.1 lib/eac_ruby_utils/ruby/command.rb
eac_ruby_utils-0.118.0 lib/eac_ruby_utils/ruby/command.rb
eac_tools-0.70.1 sub/eac_ruby_utils/lib/eac_ruby_utils/ruby/command.rb
eac_tools-0.70.0 sub/eac_ruby_utils/lib/eac_ruby_utils/ruby/command.rb
eac_tools-0.69.1 sub/eac_ruby_utils/lib/eac_ruby_utils/ruby/command.rb