Class: FubuRake::MvcApp

Inherits:
Object
  • Object
show all
Defined in:
lib/fuburake.rb

Instance Method Summary collapse

Constructor Details

#initialize(options) ⇒ MvcApp

Returns a new instance of MvcApp.



227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
# File 'lib/fuburake.rb', line 227

def initialize(options)
	cleaned_name = options[:name].gsub('.', '_').downcase
	run_args = "--directory #{options[:directory]}"

	if options.has_key?(:application)
		run_args += " --application #{options[:application]}
	end

	if options.has_key?(:build)
		run_args += " --build #{options[:build]}"
	end

	task = Rake::Task.define_task "#{cleaned_name}:alias" do
		sh "bottles alias #{cleaned_name} #{options[:directory]}"
	end
	task.add_description "Add the alias for #{options[:directory]}"
	Rake::Task[:default].enhance ["#{cleaned_name}:alias"]


	to_task "#{cleaned_name}:restart", "restart #{cleaned_name}", "touch the web.config file to force ASP.Net hosting to recycle"
	to_task "#{cleaned_name}:run", "run #{run_args} --open", "run the application with Katana hosting"
	to_task "#{cleaned_name}:firefox", "run #{run_args} --browser Firefox --watched", "run the application with Katana hosting and 'watch' the application w/ Firefox"
	to_task "#{cleaned_name}:chrome", "run #{run_args} --browser Chrome --watched", "run the application with Katana hosting and 'watch' the application w/ Chrome"

end

Instance Method Details

#to_task(name, args, description) ⇒ Object



253
254
255
256
257
258
259
260
# File 'lib/fuburake.rb', line 253

def to_task(name, args, description)
	task = Rake::Task.define_task name do
		sh "fubu #{args}"
	end

	task.add_description description
	return task
end