Sha256: 44373eb5c99f5435f7e305cc882e466931d114996b4cb4a9ae5e73a2ada50260

Contents?: true

Size: 1.82 KB

Versions: 90

Compression:

Stored size: 1.82 KB

Contents

# frozen_string_literal: true

require "dependabot/shared_helpers"
require "dependabot/file_updaters/base"

module Dependabot
  module FileUpdaters
    module Go
      class Dep < Dependabot::FileUpdaters::Base
        require_relative "dep/manifest_updater"
        require_relative "dep/lockfile_updater"

        def self.updated_files_regex
          [
            /^Gopkg\.toml$/,
            /^Gopkg\.lock$/,
            /^go\.mod$/,
            /^go\.sum$/
          ]
        end

        def updated_dependency_files
          updated_files = []

          if manifest && file_changed?(manifest)
            updated_files <<
              updated_file(
                file: manifest,
                content: updated_manifest_content
              )
          end

          if lockfile
            updated_files <<
              updated_file(file: lockfile, content: updated_lockfile_content)
          end

          raise "No files changed!" if updated_files.none?

          updated_files
        end

        private

        def check_required_files
          return if get_original_file("Gopkg.toml")
          return if get_original_file("go.mod")

          raise "No Gopkg.toml or go.mod!"
        end

        def manifest
          @manifest ||= get_original_file("Gopkg.toml")
        end

        def lockfile
          @lockfile ||= get_original_file("Gopkg.lock")
        end

        def updated_manifest_content
          ManifestUpdater.new(
            dependencies: dependencies,
            manifest: manifest
          ).updated_manifest_content
        end

        def updated_lockfile_content
          LockfileUpdater.new(
            dependencies: dependencies,
            dependency_files: dependency_files,
            credentials: credentials
          ).updated_lockfile_content
        end
      end
    end
  end
end

Version data entries

90 entries across 90 versions & 1 rubygems

Version Path
dependabot-core-0.89.5 lib/dependabot/file_updaters/go/dep.rb
dependabot-core-0.89.4 lib/dependabot/file_updaters/go/dep.rb
dependabot-core-0.89.3 lib/dependabot/file_updaters/go/dep.rb
dependabot-core-0.89.2 lib/dependabot/file_updaters/go/dep.rb
dependabot-core-0.89.1 lib/dependabot/file_updaters/go/dep.rb
dependabot-core-0.89.0 lib/dependabot/file_updaters/go/dep.rb
dependabot-core-0.88.3 lib/dependabot/file_updaters/go/dep.rb
dependabot-core-0.88.2 lib/dependabot/file_updaters/go/dep.rb
dependabot-core-0.88.1 lib/dependabot/file_updaters/go/dep.rb
dependabot-core-0.88.0 lib/dependabot/file_updaters/go/dep.rb
dependabot-core-0.87.15 lib/dependabot/file_updaters/go/dep.rb
dependabot-core-0.87.14 lib/dependabot/file_updaters/go/dep.rb
dependabot-core-0.87.13 lib/dependabot/file_updaters/go/dep.rb
dependabot-core-0.87.12 lib/dependabot/file_updaters/go/dep.rb
dependabot-core-0.87.11 lib/dependabot/file_updaters/go/dep.rb
dependabot-core-0.87.10 lib/dependabot/file_updaters/go/dep.rb
dependabot-core-0.87.9 lib/dependabot/file_updaters/go/dep.rb
dependabot-core-0.87.8 lib/dependabot/file_updaters/go/dep.rb
dependabot-core-0.87.7 lib/dependabot/file_updaters/go/dep.rb
dependabot-core-0.87.6 lib/dependabot/file_updaters/go/dep.rb