Sha256: 06ad923708c639b549bde8edb125e9fecc8185103e7361b96be32f40163ce8db

Contents?: true

Size: 1.11 KB

Versions: 4

Compression:

Stored size: 1.11 KB

Contents

module LicenseFinder
  module CLI
    extend self

    @@run_complete = false

    def check_for_action_items
      BundleSyncer.sync!
      @@run_complete = true
      generate_reports

      unapproved = Dependency.unapproved

      puts "\r" + " "*24
      if unapproved.count == 0
        puts "All gems are approved for use"
      else
        puts "Dependencies that need approval:"
        puts TextReport.new(unapproved)
        exit 1
      end
    end

    def execute!(options={})
      if options.empty?
        check_for_action_items
      else
        dependency = Dependency.first(name: options[:dependency])

        @@run_complete = true
        puts "\r" + " "*24
        if options[:approve]
          dependency.approve!
          puts "The #{dependency.name} has been approved!\n\n"
        elsif options[:license]
          dependency.set_license_manually options[:license]
          puts "The #{dependency.name} has been marked as using #{options[:license]} license!\n\n"
        end

        generate_reports
      end
    end

    private
    def generate_reports
      Reporter.write_reports
    end
  end
end

Version data entries

4 entries across 4 versions & 1 rubygems

Version Path
license_finder-0.8.1-java lib/license_finder/cli.rb
license_finder-0.8.1 lib/license_finder/cli.rb
license_finder-0.8.0-java lib/license_finder/cli.rb
license_finder-0.8.0 lib/license_finder/cli.rb