class Dependabot::PullRequestUpdater::Gitlab
def branch_exists?(name)
def branch_exists?(name) !T.unsafe(gitlab_client_for_source).branch(source.repo, name).nil? rescue ::Gitlab::Error::NotFound false end
def commit_being_updated
def commit_being_updated T.unsafe(gitlab_client_for_source).commit(source.repo, old_commit) end
def create_commit
def create_commit gitlab_client_for_source.create_commit( source.repo, merge_request.source_branch, commit_being_updated.title, files, force: true, start_branch: merge_request.target_branch ) end
def gitlab_client_for_source
def gitlab_client_for_source @gitlab_client_for_source ||= T.let( Dependabot::Clients::GitlabWithRetries.for_source( source: source, credentials: credentials ), T.nilable(Dependabot::Clients::GitlabWithRetries) ) end
def initialize(source:, base_commit:, old_commit:, files:,
def initialize(source:, base_commit:, old_commit:, files:, credentials:, pull_request_number:, target_project_id:) @source = source @base_commit = base_commit @old_commit = old_commit @files = files @credentials = credentials @pull_request_number = pull_request_number @target_project_id = target_project_id end
def merge_request
def merge_request @merge_request ||= T.let( T.unsafe(gitlab_client_for_source).merge_request( target_project_id || source.repo, pull_request_number ), T.untyped ) end
def merge_request_exists?
def merge_request_exists? merge_request true rescue ::Gitlab::Error::NotFound false end
def update
def update return unless merge_request_exists? return unless branch_exists?(merge_request.source_branch) create_commit merge_request.source_branch end