Class: Dependabot::NpmAndYarn::UpdateChecker::DependencyFilesBuilder

Inherits:
Object
  • Object
show all
Defined in:
lib/dependabot/npm_and_yarn/update_checker/dependency_files_builder.rb

Instance Method Summary collapse

Constructor Details

#initialize(dependency:, dependency_files:, credentials:) ⇒ DependencyFilesBuilder

Returns a new instance of DependencyFilesBuilder.



10
11
12
13
14
# File 'lib/dependabot/npm_and_yarn/update_checker/dependency_files_builder.rb', line 10

def initialize(dependency:, dependency_files:, credentials:)
  @dependency = dependency
  @dependency_files = dependency_files
  @credentials = credentials
end

Instance Method Details

#lockfilesObject



46
47
48
# File 'lib/dependabot/npm_and_yarn/update_checker/dependency_files_builder.rb', line 46

def lockfiles
  [*package_locks, *shrinkwraps, *yarn_locks]
end

#package_filesObject



50
51
52
53
54
# File 'lib/dependabot/npm_and_yarn/update_checker/dependency_files_builder.rb', line 50

def package_files
  @package_files ||=
    dependency_files.
    select { |f| f.name.end_with?("package.json") }
end

#package_locksObject



28
29
30
31
32
# File 'lib/dependabot/npm_and_yarn/update_checker/dependency_files_builder.rb', line 28

def package_locks
  @package_locks ||=
    dependency_files.
    select { |f| f.name.end_with?("package-lock.json") }
end

#shrinkwrapsObject



40
41
42
43
44
# File 'lib/dependabot/npm_and_yarn/update_checker/dependency_files_builder.rb', line 40

def shrinkwraps
  @shrinkwraps ||=
    dependency_files.
    select { |f| f.name.end_with?("npm-shrinkwrap.json") }
end

#write_temporary_dependency_filesObject



16
17
18
19
20
21
22
23
24
25
26
# File 'lib/dependabot/npm_and_yarn/update_checker/dependency_files_builder.rb', line 16

def write_temporary_dependency_files
  write_lock_files

  File.write(".npmrc", npmrc_content)

  package_files.each do |file|
    path = file.name
    FileUtils.mkdir_p(Pathname.new(path).dirname)
    File.write(file.name, prepared_package_json_content(file))
  end
end

#yarn_locksObject



34
35
36
37
38
# File 'lib/dependabot/npm_and_yarn/update_checker/dependency_files_builder.rb', line 34

def yarn_locks
  @yarn_locks ||=
    dependency_files.
    select { |f| f.name.end_with?("yarn.lock") }
end