Class: FastTrack::Track
- Inherits:
-
Object
- Object
- FastTrack::Track
- Includes:
- TrackMethods
- Defined in:
- lib/fast_track/track.rb
Direct Known Subclasses
AwesomeDefaults, Cancan, Devise, DevisePlusAdmin, DeviseThreeTier, DeviseWithProfile, DeviseWithViews, Guard, Jquery, Mysql, NginxThin, Omniauth, OmniauthFacebook, ProductionThin, Rolify, Thin, TwitterBootstrap, TwitterBootstrapNavBar
Instance Attribute Summary collapse
-
#generator ⇒ Object
Returns the value of attribute generator.
Class Method Summary collapse
-
.before_migrate(&block) ⇒ Object
Tasks before migration.
- .before_migrate_block ⇒ Object
-
.gemfile(&block) ⇒ Object
Describe a Gemfile using ‘gem` and `gem_group`.
- .gemfile_block ⇒ Object
Instance Method Summary collapse
-
#create_file(*args) ⇒ Object
Add a file.
-
#g ⇒ Object
If you need to get the base-level generator object, it’s available here.
-
#gem(*args) ⇒ Object
Add a gem.
-
#gem_group(*args, &block) ⇒ Object
Create a gem group.
- #generate(*args) ⇒ Object
-
#initialize(generator) ⇒ Track
constructor
A new instance of Track.
-
#rake(*args) ⇒ Object
Run rake.
-
#read_file(file_name) ⇒ Object
Read a file from the templates directory.
-
#route(*args) ⇒ Object
Add a route to config/routes.rb.
-
#run(*args) ⇒ Object
Run any command.
Methods included from TrackMethods
#bundle_install, #config, #db_migrate!, #migration, #model
Constructor Details
#initialize(generator) ⇒ Track
7 8 9 |
# File 'lib/fast_track/track.rb', line 7 def initialize(generator) @generator = generator end |
Instance Attribute Details
#generator ⇒ Object
Returns the value of attribute generator.
5 6 7 |
# File 'lib/fast_track/track.rb', line 5 def generator @generator end |
Class Method Details
.before_migrate(&block) ⇒ Object
Tasks before migration
21 22 23 |
# File 'lib/fast_track/track.rb', line 21 def self.before_migrate(&block) @before_migrate_block = block end |
.before_migrate_block ⇒ Object
25 26 27 |
# File 'lib/fast_track/track.rb', line 25 def self.before_migrate_block @before_migrate_block end |
.gemfile(&block) ⇒ Object
Describe a Gemfile using ‘gem` and `gem_group`
12 13 14 |
# File 'lib/fast_track/track.rb', line 12 def self.gemfile(&block) @gemfile_block = block end |
.gemfile_block ⇒ Object
16 17 18 |
# File 'lib/fast_track/track.rb', line 16 def self.gemfile_block @gemfile_block end |
Instance Method Details
#create_file(*args) ⇒ Object
Add a file
65 66 67 |
# File 'lib/fast_track/track.rb', line 65 def create_file(*args) g.create_file(*args) end |
#g ⇒ Object
If you need to get the base-level generator object, it’s available here.
31 32 33 |
# File 'lib/fast_track/track.rb', line 31 def g generator end |
#gem(*args) ⇒ Object
Add a gem
TODO: Find a way to consolidate all gems at once, so we only have to run ‘bundle install` once.
39 40 41 |
# File 'lib/fast_track/track.rb', line 39 def gem(*args) g.gem(*args) end |
#gem_group(*args, &block) ⇒ Object
Create a gem group
70 71 72 |
# File 'lib/fast_track/track.rb', line 70 def gem_group(*args, &block) generator.gem_group(*args, &block) end |
#generate(*args) ⇒ Object
55 56 57 |
# File 'lib/fast_track/track.rb', line 55 def generate(*args) g.generate(*args) end |
#rake(*args) ⇒ Object
Run rake
44 45 46 |
# File 'lib/fast_track/track.rb', line 44 def rake(*args) g.rake(*args) end |
#read_file(file_name) ⇒ Object
Read a file from the templates directory
75 76 77 |
# File 'lib/fast_track/track.rb', line 75 def read_file(file_name) File.read(File.join(FastTrack.template_root, template_directory, file_name)) end |
#route(*args) ⇒ Object
Add a route to config/routes.rb
60 61 62 |
# File 'lib/fast_track/track.rb', line 60 def route(*args) g.route(*args) end |
#run(*args) ⇒ Object
Run any command
49 50 51 |
# File 'lib/fast_track/track.rb', line 49 def run(*args) g.run(*args) end |