class LicenseScout::DependencyManager::Dep

dep(github.com/golang/dep) is a new dependency manger available from go 1.8

Public Instance Methods

dependencies() click to toggle source
# File lib/license_scout/dependency_manager/dep.rb, line 45
def dependencies
  Array(gopkg.dig("projects")).map do |pkg_info|
    dep_name = pkg_info["name"]
    dep_version = pkg_info["version"] || pkg_info["revision"]
    dep_path = package_path(dep_name)

    new_dependency(dep_name, dep_version, dep_path)
  end.compact
end
detected?() click to toggle source
# File lib/license_scout/dependency_manager/dep.rb, line 41
def detected?
  File.exist?(gopkg_lock_path)
end
install_command() click to toggle source
# File lib/license_scout/dependency_manager/dep.rb, line 37
def install_command
  "dep ensure"
end
name() click to toggle source
# File lib/license_scout/dependency_manager/dep.rb, line 25
def name
  "golang_dep"
end
signature() click to toggle source
# File lib/license_scout/dependency_manager/dep.rb, line 33
def signature
  "Gopkg.lock file"
end
type() click to toggle source
# File lib/license_scout/dependency_manager/dep.rb, line 29
def type
  "golang"
end

Private Instance Methods

gopath(pkg) click to toggle source
# File lib/license_scout/dependency_manager/dep.rb, line 65
def gopath(pkg)
  "#{ENV["GOPATH"]}/src/#{pkg}"
end
gopkg() click to toggle source
# File lib/license_scout/dependency_manager/dep.rb, line 57
def gopkg
  File.open(gopkg_lock_path) { |f| TomlRB.parse(f) }
end
gopkg_lock_path() click to toggle source
# File lib/license_scout/dependency_manager/dep.rb, line 61
def gopkg_lock_path
  File.join(directory, "Gopkg.lock")
end
package_path(pkg) click to toggle source
# File lib/license_scout/dependency_manager/dep.rb, line 73
def package_path(pkg)
  (Dir[vendor_dir(pkg)] + Dir[gopath(pkg)]).first
end
vendor_dir(pkg = nil) click to toggle source
# File lib/license_scout/dependency_manager/dep.rb, line 69
def vendor_dir(pkg = nil)
  File.join(directory, "vendor/#{pkg}")
end