mirror of
https://github.com/KevinMidboe/linguist.git
synced 2025-10-29 17:50:22 +00:00
Add licensor
This commit is contained in:
43
script/licensor
Executable file
43
script/licensor
Executable file
@@ -0,0 +1,43 @@
|
||||
#!/usr/bin/env ruby
|
||||
|
||||
# TODO: push these changes to licensor gem
|
||||
|
||||
require "bundler/setup"
|
||||
require "licensor/cli"
|
||||
|
||||
module Licensor
|
||||
module Source
|
||||
class Filesystem
|
||||
attr_reader :type
|
||||
|
||||
def initialize(glob, type: "directory")
|
||||
@glob = glob
|
||||
@type = type
|
||||
end
|
||||
|
||||
def enabled?
|
||||
!Dir.glob(@glob).empty?
|
||||
end
|
||||
|
||||
def dependencies
|
||||
Dir.glob(@glob).map do |directory|
|
||||
puts "caching #{directory}"
|
||||
Licensor::Dependency.new(directory, {
|
||||
"type" => type,
|
||||
"name" => File.basename(directory)
|
||||
})
|
||||
end
|
||||
end
|
||||
end
|
||||
end
|
||||
end
|
||||
|
||||
source = Licensor::Source::Filesystem.new("vendor/grammars/*/", type: "grammar")
|
||||
config = Licensor::Configuration.new
|
||||
config.sources << source
|
||||
|
||||
if ARGV[0] == "verify"
|
||||
Licensor::Command::Verify.new(config).run
|
||||
else
|
||||
Licensor::Command::Cache.new(config).run(force: true)
|
||||
end
|
||||
Reference in New Issue
Block a user