Module: Renogen::Cli

Defined in:
lib/renogen/cli.rb,
lib/renogen/cli/param_parser.rb

Overview

Command line interface helpers

Defined Under Namespace

Classes: ParamParser

Class Method Summary collapse

Class Method Details

.initObject

Initialize the current working directory with an example change



31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
# File 'lib/renogen/cli.rb', line 31

def self.init
  Dir.mkdir('./change_log')
  puts "Created './change_log/'"

  Dir.mkdir('./change_log/next')
  puts "Created './change_log/next/'"

  File.open("./change_log/next/added_renogen_gem.yml", 'w') do |f|
    f.write("Summary:\n")
    f.write("  identifier: renogen\n")
    f.write("  link: https://github.com/DDAZZA/renogen\n")
    f.write("  summary: Added ReNoGen gem\n")
    f.write("\n")
    f.write("Detailed: |\n")
    f.write("  Added ReNoGen gem\n")
    f.write("\n")
    f.write("  Allows release notes to be generated\n")
    f.write("\n")
    f.write("Tasks:\n")
    f.write("  - $ renogen vX.Y.Z > release_vX_Y_Z.md\n")
  end

  puts "Created './change_log/next/added_renogen_gem.yml'"

  File.open(".renogen", 'w') do |f|
    f.write("changelog_path: './change_log/'\n")
  end
  puts "Created '.renogen'"
end

.run(args) ⇒ Object

Execute the program via command line Renogen exceptions will be rescued and printed

Parameters:

  • args (Array)


11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
# File 'lib/renogen/cli.rb', line 11

def self.run(args)
  return init if args.first == 'init'
  param_parser = ParamParser.new(args)
  version, options = param_parser.parse

  format = options['format'] || Config.instance.output_format
  source = options['source'] || Config.instance.input_source
  options['changelog_path'] ||= Config.instance.changelog_path
  options['old_version'] ||= Config.instance.changelog_path

  begin
    generator = Renogen::Generator.new(version, source, format, options)
    generator.generate!
  rescue Renogen::Exceptions::Base => e
    puts e.message
    exit -1
  end
end