require "thor" module WebpackDriver class Configuration class Generated < Thor::Group include Thor::Actions class_option :config attr_reader :config_directory, :path, :generated_directory def set_variables @generated_directory = options[:config].tmp_directory @config_directory = options[:config].file.dirname @path = generated_directory.join('generated.config.js') end def self.source_root Pathname.new(__FILE__).dirname.join("..","..","..","templates") end def output return unless options[:config].file.exist? opts = { verbose: false, force: true } template( options[:config].file.relative_path_from(self.class.source_root), options[:config].tmp_directory.join('webpack.config.js'), opts ) template( 'generated.config.js', path, opts ) end end end end