Class: Dependabot::Bazel::FileFetcher
- Inherits:
-
FileFetchers::Base
- Object
- FileFetchers::Base
- Dependabot::Bazel::FileFetcher
show all
- Extended by:
- T::Sig
- Defined in:
- lib/dependabot/bazel/file_fetcher.rb,
lib/dependabot/bazel/file_fetcher/path_converter.rb,
lib/dependabot/bazel/file_fetcher/bzl_file_fetcher.rb,
lib/dependabot/bazel/file_fetcher/include_extractor.rb,
lib/dependabot/bazel/file_fetcher/module_path_extractor.rb,
lib/dependabot/bazel/file_fetcher/directory_tree_fetcher.rb,
lib/dependabot/bazel/file_fetcher/downloader_config_fetcher.rb
Defined Under Namespace
Classes: BzlFileFetcher, DirectoryTreeFetcher, DownloaderConfigFetcher, IncludeExtractor, ModulePathExtractor, PathConverter
Constant Summary
collapse
- WORKSPACE_FILES =
T.let(%w(WORKSPACE WORKSPACE.bazel).freeze, T::Array[String])
- MODULE_FILE =
T.let("MODULE.bazel", String)
- CONFIG_FILES =
T.let(
%w(.bazelrc MODULE.bazel.lock .bazelversion maven_install.json BUILD BUILD.bazel).freeze, T::Array[String]
)
Class Method Summary
collapse
Instance Method Summary
collapse
Class Method Details
.required_files_in?(filenames) ⇒ Boolean
31
32
33
|
# File 'lib/dependabot/bazel/file_fetcher.rb', line 31
def self.required_files_in?(filenames)
filenames.any? { |name| WORKSPACE_FILES.include?(name) || name.end_with?(MODULE_FILE) }
end
|
.required_files_message ⇒ Object
26
27
28
|
# File 'lib/dependabot/bazel/file_fetcher.rb', line 26
def self.required_files_message
"Repo must contain a WORKSPACE, WORKSPACE.bazel, or MODULE.bazel file."
end
|
Instance Method Details
#ecosystem_versions ⇒ Object
50
51
52
53
54
55
56
57
|
# File 'lib/dependabot/bazel/file_fetcher.rb', line 50
def ecosystem_versions
bazel_version = "unknown"
bazelversion_file = fetch_file_if_present(".bazelversion")
bazel_version = T.must(bazelversion_file.content).strip if bazelversion_file
{ package_managers: { "bazel" => bazel_version } }
end
|
#fetch_files ⇒ Object
36
37
38
39
40
41
42
43
44
45
46
47
|
# File 'lib/dependabot/bazel/file_fetcher.rb', line 36
def fetch_files
fetched_files = T.let([], T::Array[DependencyFile])
fetched_files += workspace_files
fetched_files += module_files
fetched_files += config_files
fetched_files += referenced_files_from_modules
fetched_files += downloader_config_files
return fetched_files if fetched_files.any?
raise Dependabot::DependencyFileNotFound.new(nil, self.class.required_files_message)
end
|