Class: MetaModel::Command::Init
- Inherits:
-
MetaModel::Command
- Object
- CLAide::Command
- MetaModel::Command
- MetaModel::Command::Init
- Defined in:
- lib/metamodel/command/init.rb
Constant Summary
Constants inherited from MetaModel::Command
METAMODEL_COMMAND_ALIAS, METAMODEL_OPTION_ALIAS
Instance Method Summary collapse
-
#initialize(argv) ⇒ Init
constructor
A new instance of Init.
- #run ⇒ Object
- #validate! ⇒ Object
Methods inherited from MetaModel::Command
#installer_for_config, options, run
Methods included from MetaModel::Config::Mixin
Constructor Details
#initialize(argv) ⇒ Init
Returns a new instance of Init.
11 12 13 14 15 |
# File 'lib/metamodel/command/init.rb', line 11 def initialize(argv) @metafile_path = Pathname.pwd + 'Metafile' @project_path = argv.shift_argument super end |
Instance Method Details
#run ⇒ Object
22 23 24 25 26 27 28 29 30 31 |
# File 'lib/metamodel/command/init.rb', line 22 def run UI.section "Initialing MetaModel project" do UI.section "Creating `Metafile` for MetaModel" do FileUtils.touch(@metafile_path) @metafile_path.open('w') do |source| source.puts "metamodel_version '#{VERSION}'\n\n" end end end end |
#validate! ⇒ Object
17 18 19 20 |
# File 'lib/metamodel/command/init.rb', line 17 def validate! super raise Informative, 'Existing Metafile in directory' unless config.(Pathname.pwd).nil? end |