diff --git a/src/main/java/com/cloudbees/jenkins/plugins/bitbucket/BitbucketGitSCMBuilder.java b/src/main/java/com/cloudbees/jenkins/plugins/bitbucket/BitbucketGitSCMBuilder.java index 877d1f4f0..e2a2eb0d4 100644 --- a/src/main/java/com/cloudbees/jenkins/plugins/bitbucket/BitbucketGitSCMBuilder.java +++ b/src/main/java/com/cloudbees/jenkins/plugins/bitbucket/BitbucketGitSCMBuilder.java @@ -23,6 +23,7 @@ */ package com.cloudbees.jenkins.plugins.bitbucket; +import com.cloudbees.jenkins.plugins.bitbucket.api.BitbucketAuthenticator; import com.cloudbees.jenkins.plugins.bitbucket.api.BitbucketHref; import com.cloudbees.jenkins.plugins.bitbucket.api.BitbucketRepository; import com.cloudbees.jenkins.plugins.bitbucket.api.BitbucketRepositoryProtocol; @@ -309,6 +310,13 @@ private String getCloneLink(List cloneLinks) { return cloneLinks.stream() .filter(link -> protocol.matches(link.getName())) .findAny() + .map(bitbucketHref -> { + BitbucketAuthenticator authenticator = scmSource().authenticator(); + if (authenticator == null) { + return bitbucketHref; + } + return authenticator.addAuthToken(bitbucketHref); + }) .orElseThrow(() -> new IllegalStateException("Can't find clone link for protocol " + protocol)) .getHref(); } diff --git a/src/main/java/com/cloudbees/jenkins/plugins/bitbucket/BitbucketSCMSource.java b/src/main/java/com/cloudbees/jenkins/plugins/bitbucket/BitbucketSCMSource.java index 232292a2b..88f3dd2ea 100644 --- a/src/main/java/com/cloudbees/jenkins/plugins/bitbucket/BitbucketSCMSource.java +++ b/src/main/java/com/cloudbees/jenkins/plugins/bitbucket/BitbucketSCMSource.java @@ -86,7 +86,6 @@ import java.util.concurrent.ConcurrentHashMap; import java.util.logging.Level; import java.util.logging.Logger; -import java.util.stream.Collectors; import jenkins.authentication.tokens.api.AuthenticationTokens; import jenkins.model.Jenkins; import jenkins.plugins.git.AbstractGitSCMSource.SCMRevisionImpl; @@ -1039,12 +1038,7 @@ public SCM build(SCMHead head, SCMRevision revision) { } private void setPrimaryCloneLinks(List links) { - BitbucketAuthenticator authenticator = authenticator(); - if (authenticator == null) { - primaryCloneLinks = links; - } else { - primaryCloneLinks = links.stream().map(authenticator::addAuthToken).collect(Collectors.toList()); - } + primaryCloneLinks = links; } @NonNull