Sha256: 5a79a4a6dfce772cb9eb37a9fda4debeb7d867d8f027e6a658fd21279da0d64e
Contents?: true
Size: 1.73 KB
Versions: 1
Compression:
Stored size: 1.73 KB
Contents
require "thor" require "jobshop/dummy_app" require "generators/jobshop/app/app_generator" require "generators/jobshop/dummy/dummy_generator" module Jobshop class CLI class Unbound < Thor desc "new", "Create a new Jobshop application" default_command def new(*) Jobshop::Generators::AppGenerator.start \ Rails::Generators::ARGVScrubber.new(ARGV).prepare! end def help Jobshop::Generators::AppGenerator.help(shell) end end class Dummy < Thor desc "create", "Create the dummy app" default_command def create ARGV.shift; ARGV.unshift("new", Jobshop::DummyApp.path) Jobshop::Generators::DummyGenerator.start \ Rails::Generators::ARGVScrubber.new(ARGV).prepare! end end class Development < Thor register Jobshop::CLI::Dummy, "dummy", "dummy [options]", "Manage dummy app used for tests" end class << self def start if [ "-v", "--version" ].include?(ARGV[0]) require "jobshop/version" puts "Jobshop #{Jobshop.gem_version}" exit 0 elsif jobshop_application? puts "No tasks available for the application environment yet" elsif jobshop_development? Jobshop::CLI::Development.start else Jobshop::CLI::Unbound.start end end private def jobshop_application? has_executable? && !has_gemspec? end private def jobshop_development? has_executable? && has_gemspec? end private def has_executable? @has_executable ||= File.file?("bin/jobshop") end private def has_gemspec? @jobshop_development ||= File.file?("jobshop.gemspec") end end end end
Version data entries
1 entries across 1 versions & 1 rubygems
Version | Path |
---|---|
jobshop-0.0.101 | lib/jobshop/cli.rb |