Sha256: aa2de3510a624fd0fdab8518275725f37e3548dd7ba2f1d2593a86f0bdb98c5f

Contents?: true

Size: 966 Bytes

Versions: 4

Compression:

Stored size: 966 Bytes

Contents

require 'rubygems/tasks/build/task'

require 'set'

module Gem
  class Tasks
    module Build
      #
      # The `build:tar` task.
      #
      class Tar < Task

        #
        # Initializes the `build:tar` task.
        #
        # @param [Hash] options
        #   Additional options.
        #
        def initialize(options={})
          super()

          yield self if block_given?
          define
        end

        #
        # Defines the `build:tar` task.
        #
        def define
          build_task :tar, 'tar.gz'
        end

        #
        # Builds a `.tar.gz` archive.
        #
        # @param [String] path
        #   The path for the `.tar.gz` archive.
        #
        # @param [Gem::Specification] gemspec
        #   The gemspec to generate the archive from.
        #
        # @api semipublic
        #
        def build(path,gemspec)
          run 'tar', 'czf', path, *gemspec.files
        end

      end
    end
  end
end

Version data entries

4 entries across 4 versions & 1 rubygems

Version Path
rubygems-tasks-0.2.4 lib/rubygems/tasks/build/tar.rb
rubygems-tasks-0.2.3 lib/rubygems/tasks/build/tar.rb
rubygems-tasks-0.2.2 lib/rubygems/tasks/build/tar.rb
rubygems-tasks-0.2.1 lib/rubygems/tasks/build/tar.rb