Sha256: 397452a74580da04bd45c607cf5c70e603365263b22634373a6d198f7196dc8b

Contents?: true

Size: 733 Bytes

Versions: 3

Compression:

Stored size: 733 Bytes

Contents

require 'thor'
require 'thor/actions'
require 'thor/group'

module Gypsum

  class TemplateRunner < Thor::Group

    # Define the Standard Arguments in any base template class
    def self.extended(base)
      base.class_eval do
        argument :project , :type => :string
      end
    end

    # Includes
    include Thor::Actions

    # The method to run when the template is invoked. This is used to
    # parse custom options from the command line or complete any other
    # setup prior to invoking the system command that will construct
    # the project.
    def on_invocation
      raise Gypsum::Errors::TemplateRunnerInvocationNotImplementedError.new("Template did not define an on_invocation method!")
    end

  end

end

Version data entries

3 entries across 3 versions & 1 rubygems

Version Path
gypsum-0.9.1 lib/gypsum/template_runner.rb
gypsum-0.9.0 lib/gypsum/template_runner.rb
gypsum-0.8.0 lib/gypsum/template_runner.rb