Class: LicenseFinder::GoWorkspace
Defined Under Namespace
Classes: Submodule
Constant Summary
collapse
- ENVRC_REGEXP =
/GOPATH|GO15VENDOREXPERIMENT/.freeze
Class Method Summary
collapse
Instance Method Summary
collapse
command_exists?, #current_packages_with_relations, #detected_package_path, installed?, #prepare, prepare_command
Constructor Details
#initialize(options = {}) ⇒ GoWorkspace
Returns a new instance of GoWorkspace.
12
13
14
15
16
|
# File 'lib/license_finder/package_managers/go_workspace.rb', line 12
def initialize(options = {})
super
@full_version = options[:go_full_version]
@strict_matching = options[:strict_matching]
end
|
Class Method Details
.package_management_command ⇒ Object
18
19
20
|
# File 'lib/license_finder/package_managers/go_workspace.rb', line 18
def self.package_management_command
'go'
end
|
.takes_priority_over ⇒ Object
42
43
44
|
# File 'lib/license_finder/package_managers/go_workspace.rb', line 42
def self.takes_priority_over
Go15VendorExperiment
end
|
Instance Method Details
#active? ⇒ Boolean
50
51
52
53
54
55
56
57
|
# File 'lib/license_finder/package_managers/go_workspace.rb', line 50
def active?
return false if @strict_matching
godep = LicenseFinder::GoDep.new(project_path: Pathname(project_path))
!!(!godep.active? && envrc_path && ENVRC_REGEXP.match(IO.read(envrc_path)))
end
|
#current_packages ⇒ Object
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
|
# File 'lib/license_finder/package_managers/go_workspace.rb', line 22
def current_packages
go_list_packages = go_list
git_modules.map do |submodule|
import_path = go_list_packages.select do |gp|
submodule.install_path =~ /#{repo_name(gp)}$/
end.first
next unless import_path
dependency_info = {
'ImportPath' => repo_name(import_path),
'Homepage' => repo_name(import_path),
'InstallPath' => submodule.install_path,
'Rev' => submodule.revision
}
GoPackage.from_dependency(dependency_info, nil, @full_version)
end.compact
end
|
#possible_package_paths ⇒ Object
46
47
48
|
# File 'lib/license_finder/package_managers/go_workspace.rb', line 46
def possible_package_paths
[envrc_path.dirname]
end
|