class Singu::CLI
Constants
- DEFAULT_ANGULAR_TEMPLATE_REPO
- DEFAULT_SINATRA_TEMPLATE_REPO
Public Class Methods
source_root()
click to toggle source
# File lib/singu/cli.rb, line 14 def self.source_root "." end
Public Instance Methods
create_app_from_template()
click to toggle source
# File lib/singu/cli.rb, line 29 def create_app_from_template sinatra_repo = options.fetch(:template){{}}.fetch('sinatra', DEFAULT_SINATRA_TEMPLATE_REPO) angular_repo = options.fetch(:template){{}}.fetch('angular', DEFAULT_ANGULAR_TEMPLATE_REPO) clone_repo(sinatra_repo) clone_repo(angular_repo) unless options[:'skip-angular'] end
initialize_git_repo()
click to toggle source
# File lib/singu/cli.rb, line 36 def initialize_git_repo inside(@app_path) do run('git init .') end end
install_dependencies()
click to toggle source
# File lib/singu/cli.rb, line 42 def install_dependencies inside(@app_path) do run('bundle') end end
setup()
click to toggle source
# File lib/singu/cli.rb, line 24 def setup @app_path = name.directory_name @name = name.file_name end
Private Instance Methods
clone_repo(repo)
click to toggle source
# File lib/singu/cli.rb, line 50 def clone_repo(repo) repo_name = repo.split('/').last system "git clone -q --depth 1 git@github.com:#{repo}.git tmp/#{@name}" directory "tmp/#{@name}", @app_path remove_dir "tmp" inside(@app_path) do remove_file ".git" end end