Class: LicenseFinder::CLI::Main
- Extended by:
- Rootcommand
- Defined in:
- lib/license_finder/cli/main.rb
Constant Summary collapse
- FORMATS =
{ 'text' => TextReport, 'html' => HtmlReport, 'markdown' => MarkdownReport, 'csv' => CsvReport }.freeze
Class Method Summary collapse
-
.shared_options ⇒ Object
Method options which are shared between report and action_item.
Instance Method Summary collapse
Methods included from Rootcommand
Class Method Details
.shared_options ⇒ Object
Method options which are shared between report and action_item
37 38 39 40 41 42 43 44 45 46 47 48 49 |
# File 'lib/license_finder/cli/main.rb', line 37 def self. method_option :debug, aliases: '-d', type: :boolean, desc: 'Emit detailed info about what LicenseFinder is doing' method_option :prepare, aliases: '-p', type: :boolean, desc: 'Prepares the project first for license_finder', default: false, required: false end |
Instance Method Details
#action_items ⇒ Object
54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 |
# File 'lib/license_finder/cli/main.rb', line 54 def action_items run_prepare_phase if prepare? any_packages = license_finder.any_packages? unapproved = license_finder.unapproved blacklisted = license_finder.blacklisted # Ensure to start output on a new line even with dot progress indicators. say "\n" unless any_packages say 'No dependencies recognized!', :red exit 0 end if unapproved.empty? say 'All dependencies are approved for use', :green else unless blacklisted.empty? say 'Blacklisted dependencies:', :red say report_of(blacklisted) end other_unapproved = unapproved - blacklisted unless other_unapproved.empty? say 'Dependencies that need approval:', :yellow say report_of(other_unapproved) end exit 1 end end |
#diff(file1, file2) ⇒ Object
116 117 118 119 120 121 |
# File 'lib/license_finder/cli/main.rb', line 116 def diff(file1, file2) f1 = IO.read(file1) f2 = IO.read(file2) report = DiffReport.new(Diff.compare(f1, f2)) save? ? save_report(report, [:save]) : say(report) end |
#report ⇒ Object
95 96 97 98 99 100 101 102 103 104 105 106 107 108 |
# File 'lib/license_finder/cli/main.rb', line 95 def report logger_config[:quiet] = true subproject_paths = [:subprojects] subproject_paths = ProjectFinder.new(license_finder.config.project_path).find_projects if [:recursive] if subproject_paths && !subproject_paths.empty? finder = LicenseAggregator.new(license_finder_config, subproject_paths) report = MergedReport.new(finder.dependencies, ) else run_prepare_phase if prepare? report = report_of(license_finder.acknowledged) end save? ? save_report(report, [:save]) : say(report) end |
#version ⇒ Object
111 112 113 |
# File 'lib/license_finder/cli/main.rb', line 111 def version puts LicenseFinder::VERSION end |